salvatore 0 Postado Agosto 29, 2007 Share Postado Agosto 29, 2007 Hail Xtibianos, Neste tutorial irei explicar como você podera criar um lugar que quando o player der use na fonte de energia ele volte para a posição que ele salvo... Vou explicar... Quando o player der use no "ponto de retorno" ira aparecer uma msg assim: §Salvo§. Ele recebera uma Fonte de Energia vazia ( ), para ele se teleporta de volta para o lugar aonde ele salvo ele presisara de uma fonte de energia cheia, que sera conseguido quando ele dizer a palavra magia "pokos" , quando ele dizer essas palavras metade da mana dele sera enviada para a fonte de magia, que se transformara em uma Fonte de magia cheia ( ) Mas nem tudo é tão bom, quando você der use para ser teleportado podem acontecer 5 situações: Você pode ser teleportado:Mensagem que aparece: Você foi teleportado Oque acontecera: Você sera teleportado ' Pode ocorrer um vazamento: Mensagem que aparece: Ouve um vazamento de magia na fonte, tente novamente Oque acontecera: Nada acontecerá, apenas a fonte de magia ficara vazia novamente, e você ira presisar enche ela novamente ' A fonte de magia pode se romper: Mensagem que aparece: A fonte de magia se rompeu Oque acontecera: O player perdera a fonte de magia, podera perde entre 100 e 500 de hp, e a posição salva será perdida ' Podera acontecer algum erro: Mensagem que aparece: Aconteceu algum erro na hora de teleporta, mas você foi teleportado Oque acontecera: O player sera teleportado e perdera um pouco de Hp ' Podera acontecer algum erro grave: Mensagem que aparece: Ocorreu um erro grave na fonte de magia, mas você foi teleportado Oque acontecera: O player sera teleportado e perdera todo sua mana e ficara com apenas 1 de Hp | CRIANDO OS PONTOS DE RETORNO | Antes de começar, crie pontos onde o player ira salvar sua posição, para fazer isso coloque um objeto, como por exemplo aquelas estatuas de anjo que geralmente se encontra nos templos, apos escolher uma estatua, ou qualquer outro objeto que não se mova adicione nele 1 ActionId ( aqui no script eu irei usar o ActionId 7005 ) | Fazendo o script da palavra magica | Va na pasta do seu ot e va até data/talkactions/scripts, copie qualquer arquivo de la e renomei para telepo.lua, apague tudo que estiver la dentro e cole isso: function onSay(cid, words, param) estatua = getPlayerStorageValue(cid,9001) magic = getPlayerStorageValue(cid,9000) mana = getPlayerMana(cid) if estatua == 1 then if magic == -1 then if getPlayerItemCount(cid,4863) > 0 then if mana > 1 then iten = getPlayerPosition(cid) ob = doPlayerAddItem(cid,4864,1) doSetItemActionId(ob,7006) doSetItemSpecialDescription(ob,"Fonte de magia cheia") doPlayerAddMana(cid,-mana/2) doPlayerRemoveItem(cid,4863,1) doPlayerSay(cid,'pokos',16) doPlayerSendTextMessage(cid, 24,'Você Carregou a fonte de magia') doSendMagicEffect(iten,29) doSendMagicEffect(iten,17) setPlayerStorageValue(cid,9000,1) else doPlayerSendTextMessage(cid, 21,'Você não tem mana suficiente para carregar a fonte de magia') end else doPlayerSendTextMessage(cid, 21,'Você presisa de uma fonte de magia vazia') end else doPlayerSendTextMessage(cid, 21,'Você ja encheu com magia') end else doPlayerSay(cid,'pokos',1) end end Explicando: 7006 --> Coloque aqui um ActionId que não esteja em uso ainda | Fazendo o script do Teleport | Abra a pasta do seu ot e va até data/actions/scripts, copie qualquer arquivo de la e renomei para telep.lua, apague tudo que estiver la dentro e cole isso: function onUse(cid, item, frompos, item2, topos) estatua = getPlayerStorageValue(cid,9001) if item.actionid == 7005 then if estatua == -1 then tele = getPlayerPosition(cid) ob = doPlayerAddItem(cid,4863,1) doSetItemActionId(ob,7007) doSetItemSpecialDescription(ob,"Fonte de magia vazia") doSendAnimatedText(tele,'Salvo',215) doSendAnimatedText(tele,'§ ---- §',200) setPlayerStorageValue(cid,9001,1) else doPlayerSendTextMessage(cid, 24,'Você ja tem uma posição salva') end end pos = getPlayerPosition(cid) rand = math.random(1, 5) hp = math.random(100, 500) mana = getPlayerMana(cid) hp1 = getPlayerHealth(cid) if item.actionid == 7007 then doPlayerSendTextMessage(cid, 24,'Para você ser teleportado, você presisa carregar isto com magia') end if item.actionid == 7006 then if rand == 1 then setPlayerStorageValue(cid,9001,-1) setPlayerStorageValue(cid,9000,-1) doSendMagicEffect(topos,2) doRemoveItem(item.uid,1) doTeleportThing(cid,tele) doSendMagicEffect(tele,10) doPlayerSendTextMessage(cid, 24,'Você foi teleportado') elseif rand == 2 then setPlayerStorageValue(cid,9000,-1) doSendMagicEffect(topos,2) doRemoveItem(item.uid,1) ob = doPlayerAddItem(cid,4863,1) doSetItemActionId(ob,7007) doSetItemSpecialDescription(ob,"Fonte de magia vazia") doPlayerSendTextMessage(cid, 24,'Ouve um vazamento de magia na fonte, tente novamente') elseif rand == 3 then setPlayerStorageValue(cid,9001,-1) setPlayerStorageValue(cid,9000,-1) doSendAnimatedText(pos, hp, 180) doSendMagicEffect(pos,13) doPlayerAddHealth(cid,-hp) doSendMagicEffect(topos,2) doRemoveItem(item.uid,1) doPlayerSendTextMessage(cid, 24,'A fonte de magia se rompeu') elseif rand == 4 then setPlayerStorageValue(cid,9001,-1) setPlayerStorageValue(cid,9000,-1) doSendMagicEffect(topos,2) doRemoveItem(item.uid,1) doTeleportThing(cid,tele) doSendAnimatedText(tele, hp/2, 180) doSendMagicEffect(tele,10) doPlayerAddHealth(cid,-hp/2) doPlayerSendTextMessage(cid, 24,'Aconteceu algum erro na hora de teleporta, mas você foi teleportado') elseif rand == 5 then setPlayerStorageValue(cid,9001,-1) setPlayerStorageValue(cid,9000,-1) doSendMagicEffect(topos,2) doRemoveItem(item.uid,1) doTeleportThing(cid,tele) doSendAnimatedText(tele, hp1-1, 180) doSendMagicEffect(tele,10) doPlayerAddMana(cid,-mana) doPlayerAddHealth(cid,(-hp1)+1) doPlayerSendTextMessage(cid, 24,'Ocorreu um erro grave na fonte de magia, mas você foi teleportado') end end end Explicando: 7005 --> Coloque o ActionId que você colocou nos pontos de retorno 7007 --> Coloque aqui outro ActionId que ainda não esteja em uso 7006 --> Coloque aqui o ActionId que nós colocamos no script da palavra magica, que aqui no caso foi 7006 100 --> Aqui é o minimo de hp que ira tirar do player em caso de erro 500 --> Aqui é o maximo de hp que ira tirar do player | Adicionando as Tags | Abra a pasta do seu ot e va em data/actions/ e abra o arquivo actions.xml e adicione isso: <action actionid="7007" script="telep.lua" /><action actionid="7006" script="telep.lua" /> <action actionid="7005" script="telep.lua" /> Explicando: Em Azul --> São os ActionIds que nos usamos nos 2 scripts ' telep.lua --> Nome do arquivo que nos criamos (o script do teleporte) agora abra a pasta do seu ot e va em data/talkactions/ e abra o arquivo talkactions.xml e adicione isso: <talkaction words="pokos" script="telepo.lua" /> telepo.lua --> Nome do script que nos criamos (o script da palavra magica) -> Mais um tutorial termina por aqui, dê sugestoes, duvidas, ideias e etc.. até mais! <- Créditos: D@rK Link para o comentário https://xtibia.com/forum/topic/61558-teleporte-~/ Compartilhar em outros sites More sharing options...
Dekooo 0 Postado Agosto 29, 2007 Share Postado Agosto 29, 2007 É, eu ja tinha visto um desses... mas de vez ser talk actions.. era por um anel... ^^ Link para o comentário https://xtibia.com/forum/topic/61558-teleporte-~/#findComment-373067 Compartilhar em outros sites More sharing options...
Warlokinho 0 Postado Agosto 30, 2007 Share Postado Agosto 30, 2007 Bom o tutorial! mas é bem complicado =P Link para o comentário https://xtibia.com/forum/topic/61558-teleporte-~/#findComment-373147 Compartilhar em outros sites More sharing options...
salvatore 0 Postado Agosto 30, 2007 Autor Share Postado Agosto 30, 2007 Num é muito complicado também nao É só ir lendo o tutorial com calma e ir seguindo "passo a passo" devagar Qualquer dúvida, poste-a! svT~ Link para o comentário https://xtibia.com/forum/topic/61558-teleporte-~/#findComment-373183 Compartilhar em outros sites More sharing options...
Morpheus_ 1 Postado Agosto 30, 2007 Share Postado Agosto 30, 2007 Wowwwwwwwwwww, muito bommmmmmmm, gostei muito... Link para o comentário https://xtibia.com/forum/topic/61558-teleporte-~/#findComment-373338 Compartilhar em outros sites More sharing options...
MarcolinoGOD 1 Postado Agosto 30, 2007 Share Postado Agosto 30, 2007 Otimo tutorial, gostei muito e dou nota 9+1 para seu tutorial! Você esta de parabens e continue fazendo mas tutoriais e você vai longe... Link para o comentário https://xtibia.com/forum/topic/61558-teleporte-~/#findComment-373384 Compartilhar em outros sites More sharing options...
salvatore 0 Postado Setembro 3, 2007 Autor Share Postado Setembro 3, 2007 Quando der continuo trazendo tutos pra cá. Obrigado, postem duvidas! Link para o comentário https://xtibia.com/forum/topic/61558-teleporte-~/#findComment-376473 Compartilhar em outros sites More sharing options...
Posts Recomendados