Postado Abril 9, 2015 10 anos Boa Tarde Galera venho aqui de novo para tentar achar uma solução com vocês. Como diz o Nome do post [sistema de Resets com Stages], vamos lá! Eu tenho em meu servidor um sistema de reset pela sources link do sistema utilizado http://www.tibiaking.com/forum/topic/9256-reset-system-with-sources/ e uso o sistema de reset que tem no mesmo topico acima e irei postar o meu. config = { RemainingLvl = 8, exp = 4200, redskull = false, battle = true, pz = false } stages = { {resets = 1, level = 300}, {resets = 10, level = 350}, {resets = 20, level = 350}, {resets = 30, level = 400}, {resets = 40, level = 450}, {resets = 50, level = 500}, {resets = 60, level = 550}, {resets = 70, level = 600}, {resets = 80, level = 800} } function onSay(cid, words, param) local pid = getPlayerGUID(cid) if(config.redskull) and (getCreatureSkullType(cid) == 4) then return doPlayerSendTextMessage(cid, 22, "Apenas player sem red skull podem resetar.") end if(config.pz) and (not getTilePzInfo(getCreaturePosition(cid))) then return doPlayerSendTextMessage(cid, 22, "Você precisa estar em protection zone pra poder resetar.") end if(config.battle) and (getCreatureCondition(cid, CONDITION_INFIGHT)) then return doPlayerSendTextMessage(cid, 22, "Você precisa estar sem battle pra poder resetar.") end for _, stage in ipairs(stages) do if getResets(cid) <= stage.resets then if getPlayerLevel(cid) >= stage.level then setResets(cid, 1) doRemoveCreature(cid, true) db.executeQuery("UPDATE `players` SET `level` = "..config.RemainingLvl..", `experience` = "..config.exp.." WHERE `id` = "..pid) else doPlayerSendCancel(cid, "Você precisa do level "..stage.level.." ou mais para resetar.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end end end return true end Como podem ver as STAGES estão la stages = { {resets = 1, level = 300}, {resets = 10, level = 350}, {resets = 20, level = 350}, {resets = 30, level = 400}, {resets = 40, level = 450}, {resets = 50, level = 500}, {resets = 60, level = 550}, {resets = 70, level = 600}, {resets = 80, level = 800} } Mas quando um Player exemplo com a imagem a baixo da a seguinte mensagem Você precisa do level 800 ou mais para resetar. http://prntscr.com/6rqc8p ai quando o player entra no level exato ele resetar normalmente, mas no console da isso http://prntscr.com/6rqgir se alguem ai poder ajudar, o #fireelement ja tentou me ajudar, mas nunca conseguimos fazer o stages funcionar rs desde ja obrigado! E Rep+
Postado Abril 9, 2015 10 anos Experimente trocar a linha - if getResets(cid) <= stage.resets then Por if getResets(cid, 1) <= stage.resets then
Postado Abril 9, 2015 10 anos Se possível, pegue um personagem com o level onde o bug ocorre, execute a talkaction com as seguintes modificações e informe o que for imprimido no console. Acima de: for _, stage in ipairs(stages) do adicione: print(getResets(cid)) Depois, abaixo de: for _, stage in ipairs(stages) do adicione: print(stage.resets) print(type(stage.resets)) print(getResets(cid)) print(type(getResets(cid)))
Postado Abril 9, 2015 10 anos Autor @juniorpavani fiz a modificação mas deu erro, nem deu o poff e a msg que precisa do level @zipter98 mano alterei aqui ficando da seguinte forma print(getResets(cid)) for _, stage in ipairs(stages) do print(stage.resets) print(type(stage.resets)) print(getResets(cid)) print(type(getResets(cid))) if getResets(cid) <= stage.resets then if getPlayerLevel(cid) >= stage.level then e deu a msg de que nao esta no level e um erro no console veja na imagem a baixo http://prntscr.com/6rru7y
Postado Abril 9, 2015 10 anos Qual o erro no console? O mesmo mostrado anteriormente? E tem mais alguma informação imprimida no console que você esqueceu de mostrar? E quantos resets este personagem tem?
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.