boloca 1 Posted August 16, 2018 Boa tarde pessoal. Alguém saberia informa qual a função que posso usar para as seguintes ações: 1º Remover apenas jogadores de um reino específico de um mapa e manda-ló para cit1 do seu reino: Exemplo: Quero retirar todos os jogadores do Reino Red do Sala de Cristal e envia-lós para cit1 do reino deles. 2º Da uma purg em todos os mobs do mapa. Exemplo: Ao usar a quest com essa função todos os monstros daquele determinado mapa some Agradeço desde já. Share this post Link to post Share on other sites
0 Karbust 1,143 Posted August 16, 2018 1 hora atrás, boloca disse: Boa tarde pessoal. Alguém saberia informa qual a função que posso usar para as seguintes ações: 1º Remover apenas jogadores de um reino específico de um mapa e manda-ló para cit1 do seu reino: Exemplo: Quero retirar todos os jogadores do Reino Red do Sala de Cristal e envia-lós para cit1 do reino deles. 2º Da uma purg em todos os mobs do mapa. Exemplo: Ao usar a quest com essa função todos os monstros daquele determinado mapa some Agradeço desde já. 1º Isso seria mais fácil pela source... 2º Acho que isso só dá pela source, acho que para além das funções de limpar uma dungeon não há nenhuma para limpar o mapa todo... Share this post Link to post Share on other sites
0 Mário. 154 Posted August 16, 2018 (edited) warp_empire = function(index, empire) -- 1º ideia if is_test_server() then -- Em caso do servidor estar em test_server if pc.get_map_index() ~= index then syschat(string.format("Não serás teleportado porque o index do teu mapa é %s e é da função é %s"), pc.get_map_index(), index)) return end end if pc.get_map_index() == index then if pc.get_empire() == empire then warp_to_village() end end end quest warp_empire begin state start begin when kill with npc.get_race() == 101 begin -- O que acontece ao matarem um cão --[[ 1: Reino Vermelho 2: Reino Amarelo 3: Reino Azul Isto faz só com que apenas os jogadores do reino azul sejam teleportados. 43 representa o index do mapa, onde é que eles devem de estar para a ação acontecer. ]] warp_empire(43, 3) end end end A segunda, podes fazer por source como o @Karbust™ # PT disse ou podes utilizar a função purge_area, que limita a área onde os mobs (npcs incluído) serão removidos. Não testado. Edited August 16, 2018 by Mário. (see edit history) 1 boloca reacted to this Share this post Link to post Share on other sites
0 NewWars 875 Posted August 16, 2018 Podes sempre registar o pid dos jogadores quando entram no mapa e dar select em cada um, verificar se o reino é o desejado e fazer warp deles playerInMap = {} when login with --func de obter map-- == --index do map-- table.insert(playerInMap, pc.get_pid()) end function WarpAllOfKindomOut(kingdom) local myPID = pc.get_pid() for i =1, table.getn(playerInMap) do pc.select(playerInMap) if pc.kingdom == kingdom then --func de warp para cidade, sei que existe uma prefeita-- end end pc.select(myPID) end Quando acontecer a situação em que desejas dar warp de X reino fora, invocas WarpAllOfKingdomOut(--index do reino--) Não programo lua faz uns bons meses e estou cansado soo não me apeteceu estar a ir verificar syntax nem funções. Cumprimentos. Share this post Link to post Share on other sites
0 'PACI 2,317 Posted August 17, 2018 -- 1 when login with pc.get_empire() == 1 and pc.get_map_index() == X begin warp_to_village() end -- 2 purge_area(baseX, baseY, baseX + mapWidth * 256, baseY + mapHeight * 256) 1 boloca reacted to this Share this post Link to post Share on other sites
Boa tarde pessoal.
Alguém saberia informa qual a função que posso usar para as seguintes ações:
1º Remover apenas jogadores de um reino específico de um mapa e manda-ló para cit1 do seu reino:
Exemplo: Quero retirar todos os jogadores do Reino Red do Sala de Cristal e envia-lós para cit1 do reino deles.
2º Da uma purg em todos os mobs do mapa.
Exemplo: Ao usar a quest com essa função todos os monstros daquele determinado mapa some
Agradeço desde já.
Share this post
Link to post
Share on other sites