Postado Março 31, 2015 10 anos Solução Script em funcionamento: Em (globalevents/scripts), crie um arquivo com nome de diferentinvasion.lua Dentro dele coloque: [paste]6gnmy3jR[/paste] e a tag é essa: <globalevent name="invasion" interval="3600000" event="script" value="diferentinvasion.lua"/> Agora, dentro do boss, que você criou, em cima de: no XML do monstro: <flags> (De preferência) Coloque isso: <script> <event name="invasion"/> </script> (OBS, não pode estar dentro de TAGs no arquivo XML, somente dentro da TAG <monster> </monster>) Agora em creaturescripts/scripts adicione esse script, com nome de diferentinvasion.lua function onDeath(cid, corpse, deathList) local createpos = { x = 144, y = 384, z = 7} if getCreatureName(cid) == "Rat" then doRemoveItem(getTileItemById(createpos, 1387).uid) doSendAnimatedText(createpos, "BOSS",130) addEvent(doSendAnimatedText,800,createpos, "MORTO",130) doSendMagicEffect(createpos, CONST_ME_POFF) doBroadcastMessage("O BOSS FOI MORTO !") end return true end No creaturescripts.xml adicione essa tag: <event type="death" name="invasion" event="script" value="diferentinvasion.lua"/> Agora, para limitar aos leveis 100 para cima: Script em movements/scripts crie invasiontp.lua function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition) local pos = {x = 145, y = 385, z = 7} local level_necessario = 100 if getPlayerLevel(cid) < level_necessario then doTeleportThing(cid, fromPosition) doPlayerSendCancel(cid, "Voce precisa ter level " .. level_necessario .. " para entrar.") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) else doTeleportThing(cid, pos) doPlayerSendTextMessage(cid,MESSAGE_EVENT_ADVANCE,"Mate o boss") doSendMagicEffect(getThingPos(cid), CONST_ME_TELEPORT) end return true end TAG em movements.xml <movevent type="StepIn" actionid="67777" event="script" value="invasiontp.lua"/> Qualquer dúvida ou erro , só falar.
Postado Março 31, 2015 10 anos Autor PERFEITO , você é o caraaaaa vey... Fico feliz de saber que posso contar com a equipe do TibiaKing, sempre me ajudando com maior disposição. Mt obrigadooo mesmoooo!!!!!!!! Vou marca como melhor resposta e reputa, qlq coisa eu editooo... VLWWWWWWWWWWW <2 local pos = {x = 145, y = 385, z = 7} >>>> Seria o local onde o player seria teleportado ?
Postado Março 31, 2015 10 anos Autor Testei so o monstro aqui né para ver a questão da mensagem ao matar o boss, realmente apareceu , até ai blz, porem apareceu um erro na distro: Data/creatureevents/scripts/diferenteinvasion.lua:onDeath Description: (luaDoRemoveItem) item not found Será que foi alguma coisa que mexi ? Pois so mexi nas mensagens e nas configurações que devia se configurada... Editado Março 31, 2015 10 anos por brendoonh (veja o histórico de edições)
Postado Março 31, 2015 10 anos local createpos = { x = 144, y = 384, z = 7} Essa posição, tem que ser onde o TP é criado. Não há de quê brendoonh, esqueci de citar, que, caso não seja sorteado nenhuma hora, o script vai fazer a invasão na última hora, que seria às 23 horas... cuidado ao adicionar horários, porque, do jeito que eu fiz, se o primeiro que é 9 (atualmente) , for maior que 23, irá dar erro... então, se for adicionar meia noite, adiciona {0,9,10...23}, porém irá sortear de 0 a 23, e vai ser mais difícil sortear o horário..., pois se cair 1,2,3,4,5,6,7,8 , o script não irá rodar...
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.