Ir para conteúdo

[Encerrado] [HELP] Adaptação de Sistema


TheFlacks

Posts Recomendados

Olá pessoal do XT, poderiam me ajudar a adaptar esse sistema? Estou trabalhando em uma base de poketibia a um bom tempo e estou pensando em colocar este sistema EwE.  (O servidor possui Sources)

Arquivos .Lua estarão disponivel para download.(Arquivos da Base Gabriel Txu)

 

 

3.PNG

goback.lua

level system.lua

level tables.lua

Editado por TheFlacks
Link para o comentário
Compartilhar em outros sites

GOBACK.LUA TROQUE POR:

 

Citar

local EFFECTS = {
    --[OutfitID] = {Effect}
    ["Magmar"] = 35,   
    ["Jynx"] = 17,          --alterado v2.5
    ["Shiny Jynx"] = 17,  
    ["Piloswine"] = 205,  --alterado v2.8
    ["Swinub"] = 205,  
}

function onUse(cid, item, frompos, item2, topos)

    if exhaustion.get(cid, 6666) and exhaustion.get(cid, 6666) > 0 then return true end

--alterado v2.6 sistema de firstpoke retirado
if getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 17001) >= 1 or getPlayerStorageValue(cid, 63215) >= 1 then
doPlayerSendTextMessage(cid, 26, "sounds/pokeball.wav")
return true
end
-------------------------------------------------------
ballName = getItemAttribute(item.uid, "poke")
                                               
   btype = getPokeballType(item.itemid)
   usando = pokeballs[btype].use

local effect = pokeballs[btype].effect
    if not effect then
        effect = 21
    end
    
unLock(item.uid) --alterado v2.8
----------------------------------------------------------
if item.itemid == usando then                           

    if getPlayerStorageValue(cid, 990) == 1 then -- GYM
        doPlayerSendCancel(cid, "Você não pode retornar seu pokémon em uma batalha de ginásio.")
    return true
    end
    
    ---------------------------------------------------------------------------------------
    if #getCreatureSummons(cid) > 1 and getPlayerStorageValue(cid, 212124) <= 0 then     --alterado v2.6
       if getPlayerStorageValue(cid, 637501) == -2 or getPlayerStorageValue(cid, 637501) >= 1 then  
          BackTeam(cid)       
       end
    end 
    -----------------------------------------------------------------------------------------
    if #getCreatureSummons(cid) == 2 and getPlayerStorageValue(cid, 212124) >= 1 then
       doPlayerSendCancel(cid, "Desculpe, mais você não pode voltar seu pokémon em control mind.")
       return true     --alterado v2.5
    end
    ---------------------------------------------------------------------------------------
    
    if #getCreatureSummons(cid) <= 0 then
        if isInArray(pokeballs[btype].all, item.itemid) then
            doTransformItem(item.uid, pokeballs[btype].off)
            doItemSetAttribute(item.uid, "hp", 0)
            doPlayerSendCancel(cid, "Seu pokémon está morto.")
            return true
        end
    end

    local cd = getCD(item.uid, "blink", 30)
    if cd > 0 then
       setCD(item.uid, "blink", 0)
    end
    
    local z = getCreatureSummons(cid)[1]

    if getCreatureCondition(z, CONDITION_INVISIBLE) and not isGhostPokemon(z) then
    return true
    end

    doReturnPokemon(cid, z, item, effect)

elseif item.itemid == pokeballs[btype].on then

    if item.uid ~= getPlayerSlotItem(cid, CONST_SLOT_FEET).uid then
        doPlayerSendCancel(cid, "Você deve colocar a pokebola no local correto.")
    return TRUE
    end

    local thishp = getItemAttribute(item.uid, "hp")

    if thishp <= 0 then
        if isInArray(pokeballs[btype].all, item.itemid) then
            doTransformItem(item.uid, pokeballs[btype].off)
            doItemSetAttribute(item.uid, "hp", 0)
            doPlayerSendCancel(cid, "Seu pokémon está morto.")
            return true
        end
    end

    local pokemon = getItemAttribute(item.uid, "poke")

    if not pokes[pokemon] then
    return true
    end
    
----------------------- Sistema de nao poder carregar mais que 3 pokes lvl baixo e + q 1 poke de lvl medio/alto ---------------------------------
if not isInArray({5, 6}, getPlayerGroupId(cid)) then
local bp = getPlayerSlotItem(cid, CONST_SLOT_BACKPACK)
local lowPokes = {"Rattata", "Caterpie", "Weedle", "Oddish", "Pidgey", "Paras", "Poliwag", "Bellsprout", "Magikarp", "Hoppip", "Sunkern"}
local low = {}
local lw = 1
for e, f in pairs(pokeballs) do
    for times = 1, 3 do
        local items = getItemsInContainerById(bp.uid, pokeballs[e].all[times]) 
        if #items >= 1 then                                                                 --alterado v2.6
           for _, uid in pairs(items) do
               local nome1 = getItemAttribute(uid, "poke")
               if not isInArray(lowPokes, pokemon) and nome1 == pokemon then
                  return doPlayerSendTextMessage(cid, 27, "Desculpe, mais você não pode carregar pokémons iguais.")
               elseif isInArray(lowPokes, pokemon) then
                  if nome1 == pokemon then
                     table.insert(low, lw, nome1)
                     lw = lw +1
                  end
               end
           end
        end
    end
end
if #low >= 3 then
   return doPlayerSendTextMessage(cid, 27, "Sorry, but you can't carry more than three pokemons equals of low level!")
end
end
---------------------------------------------------------------------------------------------------------------------------------------------------

    local x = pokes[pokemon]
    local boosts = getItemAttribute(item.uid, "boost") or 0

    if getPlayerLevel(cid) < getItemAttribute(item.uid, "level") + boosts then
    doPlayerSendCancel(cid, "O Seu pokémon tem um level muito mais alto que o seu, upe mais.")
    return true
    end
    
    doSummonMonster(cid, pokemon)

    local pk = getCreatureSummons(cid)[1]
    if not isCreature(pk) then return true end
    ------------------------passiva hitmonchan------------------------------
    if isSummon(pk) then                                                  --alterado v2.8 \/
       if pokemon == "Shiny Hitmonchan" or pokemon == "Hitmonchan" then
          if not getItemAttribute(item.uid, "hands") then
             doSetItemAttribute(item.uid, "hands", 0)
          end
          local hands = getItemAttribute(item.uid, "hands")
          doSetCreatureOutfit(pk, {lookType = hitmonchans[pokemon][hands].out}, -1)
       end
    end
    -------------------------------------------------------------------------
    ---------movement magmar, jynx-------------
    if EFFECTS[getCreatureName(pk)] then             
       markPosEff(pk, getThingPos(pk))
       sendMovementEffect(pk, EFFECTS[getCreatureName(pk)], getThingPos(pk)) --alterado v2.5
    end
    --------------------------------------------------------------------------      

    if getCreatureName(pk) == "Ditto" then

        local left = getItemAttribute(item.uid, "transLeft")
        local name = getItemAttribute(item.uid, "transName")

        if left and left > 0 then
            setPlayerStorageValue(pk, 1010, name)
            doSetCreatureOutfit(pk, {lookType = getItemAttribute(item.uid, "transOutfit")}, -1)
            addEvent(deTransform, left * 1000, pk, getItemAttribute(item.uid, "transTurn"))
            doItemSetAttribute(item.uid, "transBegin", os.clock())
        else
            setPlayerStorageValue(pk, 1010, "Ditto")
        end
    end

    if isGhostPokemon(pk) then doTeleportThing(pk, getPosByDir(getThingPos(cid), math.random(0, 7)), false) end

    doCreatureSetLookDir(pk, 2)

    adjustStatus(pk, item.uid, true, false, true)
    doAddPokemonInOwnList(cid, pokemon)

    doTransformItem(item.uid, item.itemid+1)

    local pokename = getPokeName(pk) --alterado v2.7 

    local mgo = gobackmsgs[math.random(1, #gobackmsgs)].go:gsub("doka", pokename)
    doCreatureSay(cid, mgo, TALKTYPE_SAY)

    doSendMagicEffect(getCreaturePosition(pk), effect)
    
    if useOTClient then
       doPlayerSendCancel(cid, '12//,show') --alterado v2.7
    end

else

    doPlayerSendCancel(cid, "Seu pokémon está morto.")

end

    if useKpdoDlls then
        doUpdateMoves(cid)
    end
return true
end

 

Link para o comentário
Compartilhar em outros sites

o Xtibia tem um bug ao copiar o texto ele coloca "?" no arquivo... fiz a remoção manualmente e coloquei o codigo no Hastebin... SEGUE O LINK

 

https://hastebin.com/iyuroyugut.lua

 

17 horas atrás, TheFlacks disse:

Sr Kevick, estou tentando adaptar o lvl sys para aquela sua base Champions ahsuasha

Panueca.PNG

Testing.PNG

 

Link para o comentário
Compartilhar em outros sites

Bom, os erros da distro foram sanados mas esse ainda persiste

Panueca.PNG

1 hora atrás, Naruse disse:

Tenta salvar o arquivo como "ANSI"

 

Clique la em cima no bloco de notas "Salvar COMO" Vai estar la em baixo Unicode ou outro

Clique em "ANSI"

Testei o seu arquivo,aqui está funcionando normalmente!

Faz oque eu te falei pode adiantar.

 

OBS: PARA ATIVAR UM ARQUIVO PARA UPAR POKE PRECISA DE UM ARQUIVO NO CREATURESCRIPTS CHAMADO "POKELEVEL"

No caso eu também preciso ativar ele só que não sei como ativa :/

 

38 minutos atrás, Jair Kevick disse:

o Xtibia tem um bug ao copiar o texto ele coloca "?" no arquivo... fiz a remoção manualmente e coloquei o codigo no Hastebin... SEGUE O LINK

 

https://hastebin.com/iyuroyugut.lua

 

 

;-;

grrrr.PNG

Panueca.PNG

Link para o comentário
Compartilhar em outros sites

9 minutos atrás, Naruse disse:

Bom aqui funcionou,peguei uma base do gabrielxtu e to adaptando no meu servidor,to fundindo as bases assim vai funfar o meu lv system completo!

Eu tô tentando adaptar o Lvl sys para está base

 

https://tibiaking.com/forums/topic/86378-open-source-pokechampions/

 

tá um pouco complicado a adaptação mas acho q o Jair vai me ajudar =/

 

Editado por TheFlacks
Link para o comentário
Compartilhar em outros sites

55 minutos atrás, TheFlacks disse:

Bom, os erros da distro foram sanados mas esse ainda persiste

Panueca.PNG

 

;-;

grrrr.PNG

Panueca.PNG

esse erro é por conta da função getItemAttribute(item.uid, "level") se vc não setou o atributo level na hora do catch ele n vai dar para soltar da ball ^^ 

Link para o comentário
Compartilhar em outros sites

lukk.PNGDeu isso quando eu usei o poke, não sei se ajuda mas a base é com Icon Sys e todos os icons dos pokes é 

{ on = 11826, off = 11828, use = 11827 },

 

Posso te enviar a pasta do sv em rar?

Editado por TheFlacks
Link para o comentário
Compartilhar em outros sites

  • 7 months later...
A questão neste suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta.

+ Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda.
* Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado.
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...