Postado Dezembro 18, 2014 10 anos em meu servidor tem um sistema de evento com times, ele já inicia tudo certo mas, estou com dúvida, como e quando ele cria um teleport? preciso de um talkaction para fazer o evento iniciar? O script: Citar function onTime(interval, lastExecution) local players = getPlayersOnline() local conta_players = 0 local player_time = 9 -- ALTERAR quantidade de players por time local pos_teleport = {x = 1032, y = 913, z = 7} -- ALTERAR posição em que o teleport vai nascer local pos_espera = {x = 1009, y = 904, z = 12} -- ALTERAR posição da sala de espera até iniciar o evento local storage = 873456 -- ALTERAR storage usado no sistema local tempo_espera = 60 * 1000 -- ALTERAR tempo que players vão esperar na sala de espera local pos_topos = { {x = 1023, y = 773, z = 12}, -- ALTERAR posição em que o time 1 vai nascer {x = 1072, y = 858, z = 12}, -- ALTERAR posição em que o time 2 vai nascer {x = 1148, y = 809, z = 12}, -- ALTERAR posição em que o time 3 vai nascer } local pos_templo = {x = 1030, y = 913, z = 7} -- ALTERAR posição do templo if #players <= (player_time*3) then print("[************] >> Evento Cancelado - Menos de "..(player_time*3).." players online.") return TRUE end doCreateTeleport(1387, pos_espera, pos_teleport) doBroadcastMessage("Evento de Times Aberto Vocês tem "..(tempo_espera/1000).." segundos para entrar no portal.",22) addEvent( function() local i = 1 local a = 1 local pos_espera1 = {x = 1002, y = 800, z = 12} -- ALTERAR posição do canto superior esquerdo da sala de espera local pos_espera2 = {x = 1016, y = 809, z = 12} -- ALTERAR posição do canto inferior direito da sala de espera while i <= #players do local pos_player = getPlayerPosition(players) if pos_player.x >= pos_espera1.x and pos_player.y >= pos_espera1.y and pos_player.x <= pos_espera2.x and pos_player.y <= pos_espera2.y then if getPlayerGroupId(players) <= 1 then conta_players = conta_players + 1 end end i = i + 1 end i = 1 if conta_players < (player_time*3) then while i <= #players do local pos_player = getPlayerPosition(players) if pos_player.x >= pos_espera1.x and pos_player.y >= pos_espera1.y and pos_player.x <= pos_espera2.x and pos_player.y <= pos_espera2.y then if getPlayerGroupId(players) <= 1 then doTeleportThing(players, pos_templo) end end i = i + 1 end print("[************] >> Evento Cancelado - Menos de "..(player_time*3).." players na sala de espera.") return TRUE else while i <= #players do local outfit1 = getCreatureOutfit(players) outfit1.lookHead = 81 outfit1.lookBody = 81 outfit1.lookLegs = 81 outfit1.lookFeet = 81 local outfit2 = getCreatureOutfit(players) outfit2.lookHead = 86 outfit2.lookBody = 86 outfit2.lookLegs = 86 outfit2.lookFeet = 86 local outfit3 = getCreatureOutfit(players) outfit3.lookHead = 94 outfit3.lookBody = 94 outfit3.lookLegs = 94 outfit3.lookFeet = 94 local pos_player = getPlayerPosition(players) if pos_player.x >= pos_espera1.x and pos_player.y >= pos_espera1.y and pos_player.x <= pos_espera2.x and pos_player.y <= pos_espera2.y then if getPlayerGroupId(players) <= 1 then if a == 1 then setPlayerStorageValue(players, storage, 1) doTeleportThing(players, pos_topos[1]) doSetCreatureOutfit(players, outfit1, -1) a = 2 else if a == 2 then setPlayerStorageValue(players, storage, 2) doTeleportThing(players, pos_topos[2]) doSetCreatureOutfit(players, outfit2, -1) a = 3 else if a == 3 then setPlayerStorageValue(players, storage, 3) doTeleportThing(players, pos_topos[3]) doSetCreatureOutfit(players, outfit3, -1) a = 1 end end end end end i = i + 1 end doBroadcastMessage("Evento Iniciado, Bora matar o Boss.",22) end end ,tempo_espera) return TRUE end Este script existe no nto shinobi!
Postado Dezembro 18, 2014 10 anos Solução Em 18/12/2014 em 17:19, goodlloords disse: estou com dúvida, como e quando ele cria um teleport? preciso de um talkaction para fazer o evento iniciar? Por ser um global event, o teleport é automaticamente criado na posição 1032, 913, 7 e leva à posição 1009, 904, 12. Nesse caso, ele é iniciado de acordo com o tempo/horário estipulado na tag do mesmo. The corrupt fear us. The honest support us. The heroic join us.
Postado Dezembro 18, 2014 10 anos Autor Em 18/12/2014 em 18:13, Suicide disse: Por ser um global event, o teleport é automaticamente criado na posição 1032, 913, 7 e leva à posição 1009, 904, 12. Nesse caso, ele é iniciado de acordo com o tempo/horário estipulado na tag do mesmo. Hmm, ok! e onde posso ver esta " tag " ?
Postado Dezembro 18, 2014 10 anos Procure pelo nome do arquivo (no qual você encontrou esses códigos) em globalevents.xml (data/globalevents). The corrupt fear us. The honest support us. The heroic join us.
Postado Dezembro 18, 2014 10 anos Autor Em 18/12/2014 em 19:48, Suicide disse: Procure pelo nome do arquivo (no qual você encontrou esses códigos) em globalevents.xml (data/globalevents). <globalevent name="eventotimes" interval="14:45" event="script" value="eventotimes.lua"/> seria isso?
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.