Postado Dezembro 24, 2021 3 anos Autor Em 24/12/2021 em 18:28, MatteusDeli disse: @Doidodepeda Boa tarde, tenta assim: Altere a variável "area" na config, para a área aonde você quer que os players estejam para serem teleportados. local config = { tempo = 1*60, pos = {x=405, y=155, z=7, stackpos = 253}, area = { { x=100, y=100, z=7 }, { x=100, y=100, z=7 } }, tp = {x=167, y=43, z=7}, togo = {x=395, y=147, z=7}, premio = 12681, count = 5, effect = 27 } function onSay(cid, words, param, channel) doBroadcastMessage("The fight for the throne has begun, the last man standing there after "..config.tempo/60 .." minute(s) will be the winner.", 21) doCreateTeleport(1387, config.togo, config.tp) for j = 0, (config.tempo -1) do addEvent(function() doBroadcastMessage("Time left: ".. config.tempo - j .." second(s)", 25) end, (50+(j*1000))) end addEvent(function() if isPlayer(getThingFromPos(config.pos).uid) then local cid = getThingFromPos(config.pos).uid doBroadcastMessage("The winner is "..getCreatureName(cid)..".", 21) doPlayerAddItem(cid, config.premio, config.count) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) doSendMagicEffect(config.pos, config.effect) else doBroadcastMessage("We didn't had a winner.. so sad!", 21) end doRemoveItem(getTileItemById(config.tp, 1387).uid, 1) teleportarJogadoresEmArea() end, 1000*config.tempo) end function teleportarJogadoresEmArea() for x = config.area[1].x, config.area[2].x do for y = config.area[1].y, config.area[2].y do local pos = {x=x, y=y, z=config.area[1].z} local player = getTopCreature(pos).uid if isPlayer(player) then doTeleportThing(player, config.togo) end end end end Créditos: @WooX Seu script estava teleportando eles para o inicio do evento, e nao para o templo. Mas fiz uma gambiarra aqui e conseguir jogar para o templo. Agora só uma duvida e um pedido. caso o mapa tenha 2 andares, como faz pra teleportar a galera do 2 e 1 andar, pq só esta teleportando do 1 andar. Editado Dezembro 24, 2021 3 anos por Doidodepeda (veja o histórico de edições)
Postado Dezembro 25, 2021 3 anos Em 24/12/2021 em 20:37, Doidodepeda disse: Seu script estava teleportando eles para o inicio do evento, e nao para o templo. Mas fiz uma gambiarra aqui e conseguir jogar para o templo. Agora só uma duvida e um pedido. caso o mapa tenha 2 andares, como faz pra teleportar a galera do 2 e 1 andar, pq só esta teleportando do 1 andar. Só alterar a ultima função por essa aqui: Lembre-se que a variável "z" na configuração tem que ser do menor para o maior, caso contrario pode dar erro. Exemplo: { { x = 10, y = 12, z = 4 }, { x = 11, y = 12, z = 7 } }. function teleportarJogadoresEmArea() for x = config.area[1].x, config.area[2].x do for y = config.area[1].y, config.area[2].y do for z = config.area[1].z, config.area[2].z do local pos = {x=x, y=y, z=z} local player = getTopCreature(pos).uid if isPlayer(player) then doTeleportThing(player, config.togo) end end end end end
Postado Dezembro 27, 2021 3 anos Autor Em 25/12/2021 em 20:18, MatteusDeli disse: Só alterar a ultima função por essa aqui: Lembre-se que a variável "z" na configuração tem que ser do menor para o maior, caso contrario pode dar erro. Exemplo: { { x = 10, y = 12, z = 4 }, { x = 11, y = 12, z = 7 } }. function teleportarJogadoresEmArea() for x = config.area[1].x, config.area[2].x do for y = config.area[1].y, config.area[2].y do for z = config.area[1].z, config.area[2].z do local pos = {x=x, y=y, z=z} local player = getTopCreature(pos).uid if isPlayer(player) then doTeleportThing(player, config.togo) end end end end end Não funcionou =[
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.