Postado Setembro 19, 2017 7 anos Autor 1 hora atrás, Dwarfer disse: Em creaturescripts/scripts crie um arquivo: advancetp.lua Mostrar conteúdo oculto local level = 100 local newpos = Position(1,1,1) -- posição para qual o player será teleportado function onAdvance(player, skill, oldlevel, newlevel) if skill == SKILL_LEVEL and newlevel >= level then if player:getStorageValue(65770) == -1 then player:teleportTo(newpos) newpos:sendMagicEffect(CONST_ME_TELEPORT) player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "Due to reach level " .. level .. " you were teleported to this room!") player:setStorageValue(65770, 1) end end return true end No login.lua, registre o evento: player:registerEvent("AdvanceTeleport") Em creaturescripts.xml, adicione a tag: <event type="advance" name="AdvanceTeleport" script="advancetp.lua" /> Muito obrigado @Dwarfer, o script funcionou, teleportou o player certinho, o único detalhe que eu não diria um erro é que a mensagem não apareceu, mas o restante funcionou perfeitamente. Teria como mudar a mensagem para uma vermelha ou branca no centro da tela? player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "Due to reach level " .. level .. " you were teleported to this room!") Gostou ? Rep +
Postado Setembro 19, 2017 7 anos Solução A mensagem aparece sim, no entanto, no Local Chat. Tinha colocado assim porque já ia aparecer a mensagem que o player avançou de level. Enfim, mensagem branca no meio da tela: Spoiler local level = 100 local newpos = Position(1,1,1) -- posição para qual o player será teleportado function onAdvance(player, skill, oldlevel, newlevel) if skill == SKILL_LEVEL and newlevel >= level then if player:getStorageValue(65770) == -1 then player:teleportTo(newpos) newpos:sendMagicEffect(CONST_ME_TELEPORT) player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Due to reach level " .. level .. " you were teleported to this room!") player:setStorageValue(65770, 1) end end return true end Contato: Email: [email protected] Discord: Dwarfer#2715
Postado Setembro 19, 2017 7 anos Autor 5 minutos atrás, Dwarfer disse: A mensagem aparece sim, no entanto, no Local Chat. Tinha colocado assim porque já ia aparecer a mensagem que o player avançou de level. Enfim, mensagem branca no meio da tela: Ocultar conteúdo local level = 100 local newpos = Position(1,1,1) -- posição para qual o player será teleportado function onAdvance(player, skill, oldlevel, newlevel) if skill == SKILL_LEVEL and newlevel >= level then if player:getStorageValue(65770) == -1 then player:teleportTo(newpos) newpos:sendMagicEffect(CONST_ME_TELEPORT) player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Due to reach level " .. level .. " you were teleported to this room!") player:setStorageValue(65770, 1) end end return true end Perfeito amigo, muito obrigado, agora funcionou perfeitamente!!! Gostou ? Rep +
Postado Setembro 20, 2017 7 anos exatamente oq o colega falou, todo script que vc for usar que precisar ser atualizado na hr (avançar de lvl, ao logar tal coisa, ao deslogar tal coisa) tudo vc mexe no creaturescript da rep+ pro colega e coloca como melhor resposta para o tópico ficar resolvido
Postado Setembro 20, 2017 7 anos Autor 2 minutos atrás, mateusfn disse: exatamente oq o colega falou, todo script que vc for usar que precisar ser atualizado na hr (avançar de lvl, ao logar tal coisa, ao deslogar tal coisa) tudo vc mexe no creaturescript da rep+ pro colega e coloca como melhor resposta para o tópico ficar resolvido Maravilha, obrigado pela resposta, já dei rep+ e defini a melhor resposta, obrigado :D Gostou ? Rep +
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.