brennin11 0 Postado Setembro 3, 2013 Share Postado Setembro 3, 2013 (editado) Boa Tarde xTibianos, Alguém saberia me dizer, se é possível fazer com que um monstro com sprite X, se transforme em uma sprite Y, ao ser atacado e atingir Z de vida? Se sim, alguém conhece algum script que faça isso? Grato *-* Editado Setembro 3, 2013 por MindriaKaya Link para o comentário https://xtibia.com/forum/topic/220495-resolvido-monstro-transformar-com-x-de-vida/ Compartilhar em outros sites More sharing options...
0 Roksas 846 Postado Setembro 3, 2013 Share Postado Setembro 3, 2013 Claro, mande os dados. Link para o comentário https://xtibia.com/forum/topic/220495-resolvido-monstro-transformar-com-x-de-vida/#findComment-1557733 Compartilhar em outros sites More sharing options...
0 brennin11 0 Postado Setembro 3, 2013 Autor Share Postado Setembro 3, 2013 Fazer um (ID 309), se transformar em um (ID 243), ao atingir 40% da vida máxima. Link para o comentário https://xtibia.com/forum/topic/220495-resolvido-monstro-transformar-com-x-de-vida/#findComment-1557747 Compartilhar em outros sites More sharing options...
0 Roksas 846 Postado Setembro 3, 2013 Share Postado Setembro 3, 2013 (editado) Vá em data/creaturescripts/scripts, crie um arquivo chamado monstertrans.lua e adicione dentro: function onStatsChange(cid, attacker, type, combat, value) local m = "Rat" if not isMonster(cid) then return true end if type == STATSCHANGE_HEALTHLOSS and getCreatureName(cid) == m then if getCreatureHealth(cid) <= (40/100 * getCreatureHealth(cid)) then doSetMonsterOutfit(cid, "Hellfire Fighter", -1) return true end return true end return true end Na segunda linha do código coloque o nome do monstro! Em login.lua coloque: registerCreatureEvent(cid, "monstertrans") Em creaturescripts.xml adicione: <event type="statschange" name="monstertrans" event="script" value="monstertrans.lua"/> Editado Setembro 3, 2013 por Roksas Link para o comentário https://xtibia.com/forum/topic/220495-resolvido-monstro-transformar-com-x-de-vida/#findComment-1557758 Compartilhar em outros sites More sharing options...
0 brennin11 0 Postado Setembro 3, 2013 Autor Share Postado Setembro 3, 2013 Obrigado, vou testar aqui *-* Link para o comentário https://xtibia.com/forum/topic/220495-resolvido-monstro-transformar-com-x-de-vida/#findComment-1557765 Compartilhar em outros sites More sharing options...
0 Omega 377 Postado Setembro 3, 2013 Share Postado Setembro 3, 2013 Roksas, tava testando umas coisas com creaturescripts de monstros ontem e não funcionava no login.lua. Talvez seja do servidor, mas eu tive que colocar a tag do evento no .xml do monstro. Dessa maneira: <script> <event name="Nome do Creaturescript"/> </script> Colocando isso debaixo da TAG </flags> (creio que sirva em qualquer lugar) Aí na segunda linha do script (embaixo da função e seus parâmetros, você registra o evento) function onStatsChange(cid, attacker, type, combat, value) registerCreatureEvent(cid, "monstertrans") local m = "Rat" if not isMonster(cid) then return true end if type == STATSCHANGE_HEALTHLOSS and getCreatureName(cid) == m then if getCreatureHealth(cid) <= (40/100 * getCreatureHealth(cid)) then doSetMonsterOutfit(cid, "Hellfire Fighter", -1) return true end return true end return true end Eu também gosto de adicionar um string.lower na comparação pra não errarem por escrever por falta ou abuso de letras maiúsculas, além de ter consertado uma coisa: você colocou 40/100 getCreatureHealth(cid), mas acho que a intenção era getCreatureMaxHealth(cid). Enfim, a minha versão final fica assim: function onStatsChange(cid, attacker, type, combat, value) registerCreatureEvent(cid, "monstertrans") local m = "Rat" if isPlayer(cid) then return true end if type == STATSCHANGE_HEALTHLOSS and string.lower(getCreatureName(cid)) == string.lower(m) then if getCreatureHealth(cid) <= (4/10 * getCreatureMaxHealth(cid)) then doSetMonsterOutfit(cid, "Hellfire Fighter", -1) end end return true end Link para o comentário https://xtibia.com/forum/topic/220495-resolvido-monstro-transformar-com-x-de-vida/#findComment-1557772 Compartilhar em outros sites More sharing options...
0 brennin11 0 Postado Setembro 3, 2013 Autor Share Postado Setembro 3, 2013 O Script funcionou aqui, muito obrigado aos dois, seus lindos. Pode fechar *-* Link para o comentário https://xtibia.com/forum/topic/220495-resolvido-monstro-transformar-com-x-de-vida/#findComment-1557807 Compartilhar em outros sites More sharing options...
0 Roksas 846 Postado Setembro 3, 2013 Share Postado Setembro 3, 2013 Tópico movido para a seção de dúvidas e pedidos resolvidos. Link para o comentário https://xtibia.com/forum/topic/220495-resolvido-monstro-transformar-com-x-de-vida/#findComment-1557825 Compartilhar em outros sites More sharing options...
Pergunta
brennin11 0
Boa Tarde xTibianos,
Alguém saberia me dizer, se é possível fazer com que um monstro com sprite X, se transforme em uma sprite Y, ao ser atacado e atingir Z de vida?
Se sim, alguém conhece algum script que faça isso?
Grato *-*
Editado por MindriaKayaLink para o comentário
https://xtibia.com/forum/topic/220495-resolvido-monstro-transformar-com-x-de-vida/Compartilhar em outros sites
7 respostass a esta questão
Posts Recomendados