Postado Agosto 4, 2020 4 anos Boa Tarde rapaziada! Então, venho pedir uma ajuda, consegui esse script aqui mesmo no tibiaking. esse script ele serve para "ao matar um boss", ele cria um tp e da uma storage para o player ou o grupo de player dentro dessa área, sendo que a pessoa que solicitou ou criou esse script , pediu que teleportasse para o determinado local que ja esta configurado ai. Enfim, gostaria de pedir a vcs que colocasse a localização para ser teleportado, configurável ao meu gosto. Ex: quero que teleporte para {x= 2, y= 2, z= 2}. Agradeço a ajuda! local tps = { ["Ushuriel"] = {pos = {x=33157, y=31730, z=11}, toPos = {x=33069, y=31783, z=13}, time = 60, storage = 56123, value = 1}, } local storage = 56123 local function removeTp(tp) local t = getTileItemById(tp.pos, 5023).uid return t > 0 and doRemoveItem(t) and doSendMagicEffect(tp.pos, CONST_ME_POFF) end function onDeath(cid) local tp = tps[getCreatureName(cid)] if tp then --setPlayerStorageValue(cid, tp.storage, tp.value) -- Area adicionada \/ -- for i, k in ipairs(players) do setPlayerStorageValue(k, tp.storage, (getPlayerStorageValue(k, tp.storage)+1)) end -- Fim da área /\ -- print(tp.storage) print(tp.value) doCreateTeleport(5023, tp.toPos, tp.pos) doCreatureSay(cid, "O teleport irá sumir em "..tp.time.." segundos.", TALKTYPE_ORANGE_1) addEvent(removeTp, tp.time*1000, tp) end return true end
Postado Agosto 4, 2020 4 anos Solução Só mudar nessa linha aqui em baixo, pos é a posição q o tp tem q aparecer, topos é pra onde o tp vai levar ["Rat"] = {pos = {x=10, y=10, z=10}, toPos = {x=2, y=2, z=2}, time = 92, storage = 56123, value = 1}, Nesse caso aqui, quando matar um Rat, vai aparecer um npc na posição x=10, y=10, z=10, e esse tp vai levar pra posição x=2 y=2 z=2, e ele vai durar 92 segundos E se quiser colocar mais bixos pra aparecerem o tp, copiar e colocar essa linha e colocar abaixo, tipo: ["Rat"] = {pos = {x=10, y=10, z=10}, toPos = {x=2, y=2, z=2}, time = 92, storage = 56123, value = 1}, ["Bug"] = {pos = {x=10, y=10, z=10}, toPos = {x=2, y=2, z=2}, time = 92, storage = 56124, value = 1}, Quanto a storage, nao é bom que tenha outra igual ela, oque te recomendo fazer, pra n botar uma storage q ja tenha, é colocar como numero de celular, tipo, as minhas storages todas são: xx1754231, xx1754232 e assim por diante xD Editado Agosto 4, 2020 4 anos por Mor3nao (veja o histórico de edições)
Postado Agosto 4, 2020 4 anos Autor ahh , entendi, show mano rep+ então, pois achei que essa topos e pos era para dar storage a todos os players nessa área. Eu li erradão rsrs agora sobre as storages em que momento ele da as storage ao grupo de players? Ex: somente em party? todos na mesma area de combat? ou somente quem atacar o monstro? e se vc puder me diz pelo menos onde eu coloco essa tag : "no codigo do boss" , que ele diz ai no topico? Editado Agosto 4, 2020 4 anos por Lisbeky (veja o histórico de edições)
Postado Agosto 5, 2020 4 anos Ola amigo, acredito que você precisa prestar mais atenção ao ler um tópico ou até mesmo uma script, pois a própria script já lhe responde estas perguntas pos -> posição de criação do teleport toPos -> posição na qual ele vai levar time -> tempo de duração do teleport storage -> valor da storage que vai adicionar value -> valor da storage ["Ushuriel"] = {pos = {x=33157, y=31730, z=11}, toPos = {x=33069, y=31783, z=13}, time = 60, storage = 56123, value = 1}, referente a sua duvida "código do boss", ele se refere ao arquivo na qual fica o código do monster, resumindo é o arquivo.xml que você criou na pasta data/monsters. ----------------EDIT-------------- Outra observação, o script acredito esta errado, pois o mesmo faz um laço em "players", porem não existe nenhuma variável players, Caso eu esteja enganado peço que alguem me corrija. -- EDIT -- caso queira testar para ver se funciona local tps = { ["Ushuriel"] = { pos_zone = {from = {x=33069, y=31783, z=13}, to = {x=33069, y=31783, z=13}}, -- from canto superior esquerdo, to canto inferior direito pos = {x=33157, y=31730, z=11}, -- posição que vai ser criado o teleport toPos = {x=33069, y=31783, z=13}, -- posição que vai levar o teleport time = 60, -- duração do teleport storage = 56123, -- numero da storage ganha value = 1 -- valor da storage ganha }, } local function removeTp(tp) local t = getTileItemById(tp.pos, 5023).uid if (t > 0) then doRemoveItem(t) doSendMagicEffect(tp.pos, CONST_ME_POFF end end function onDeath(cid) local tp = tps[getCreatureName(cid)] if tp then local zone = tp.zone for _, pid in ipairs(getPlayersOnline()) do if (isInRange(getPlayerPosition(cid), zone.from, zone.to)) then setCreatureStorageValue(pid, tp.storage, tp.value) end end doCreateTeleport(5023, tp.toPos, tp.pos) doCreatureSay(cid, "O teleport irá sumir em "..tp.time.." segundos.", TALKTYPE_ORANGE_1) addEvent(removeTp, tp.time*1000, tp) end return true end Editado Agosto 5, 2020 4 anos por Onepiece (veja o histórico de edições)
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.