antiblock
diamwall
  • Chatbox

    Did you check out our Discord? https://discord.gg/FFdvMjk9xA
    You don't have permission to chat.
    Load More
  • 0
Sign in to follow this  
boloca

2 Funções via Quest

Question

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

5 answers to this question

  • 0

up

Share this post


Link to post
Share on other sites
antiblock
Cyphriun
  • 0
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
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 by Mário. (see edit history)

Share this post


Link to post
Share on other sites
  • 0

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
-- 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)

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this