Postado Dezembro 3, 2014 10 anos Preciso de ajuda nesse script, quando o player morre ele é teleportado para o templo, porém com a vida zerada e ele não pode se mover. Gostaria que ele fosse teleportado com a vida e mana cheia. Alguém pode me ajudar? Grato desde já. local config = { fromPosition = {x = 1349, y = 984, z = 7}, toPosition = {x = 1379, y = 1013, z = 7}, gl_storage = 16891, storage = 3989 } function onPrepareDeath(cid, deathList) local exit = getTownTemplePosition(getPlayerTown(cid)) if isPlayer(cid) then if isInRange(getPlayerPosition(cid), config.fromPosition, config.toPosition) then if doCreatureAddHealth(cid, getCreatureMaxHealth(cid) - getCreatureHealth(cid), true) == true then doTeleportThing(cid, exit) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) doCreatureAddMana(cid, getCreatureMaxMana(cid)) doCreatureSetStorage(cid, config.storage, -1) doSetStorage(config.gl_storage, -1) return false end end end end
Postado Dezembro 3, 2014 10 anos troca esse onPrepareDeath pra um onStatsChange que resolve o problema. Você só vai precisar checar se o value do hit que ele tomou é maior ou igual a vida que ele possui no momento. Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá! "Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda (obg ao @Beeny por fazer essa linda sign <3)
Postado Dezembro 4, 2014 10 anos Autor Em 03/12/2014 em 21:03, xWhiteWolf disse: troca esse onPrepareDeath pra um onStatsChange que resolve o problema. Você só vai precisar checar se o value do hit que ele tomou é maior ou igual a vida que ele possui no momento. Eu tentei alguns scripts com onStatsChange mas não aconteceu nada, o plyaer simplesmente morre e não é teleportado. Poderia fazer pra mim testar aqui?
Postado Dezembro 4, 2014 10 anos Solução dá uma olhada no aegis of dimension que tem no meu perfil, é bem parecido.. Se tiver determinado storage e morrer é teleportado e tem a vida enchida, olhar lá vai te dar uma idéia de como fazer. Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá! "Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda (obg ao @Beeny por fazer essa linda sign <3)
Postado Dezembro 4, 2014 10 anos Troca return false por true. No TFS 1.1 o seguinte código funcionou perfeitamente: function onPrepareDeath(cid, killer) local player = Player(cid) local town = player:getTown() local exit = town:getTemplePosition() if player then if player:addHealth(player:getMaxHealth()) then player:teleportTo(exit) end end return true end
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.