Jump to content
Sign in to follow this  
caanmasu

[QUEST] Ver ubicación de integrantes del grupo

Recommended Posts

Hola amigos

Esta quest consiste en que el líder del grupo al pulsar sobre un objeto (type 18) mostrará/ocultará la ubicación de los miembros del grupo (sin incluirlo a él) en el mapa. Parecido a cuando tenemos misión con un NPC y aparece una flecha arriba y también como una burbuja en el mapa. A medida que los miembros del grupo se mueven, también se moverá el "target", o sea, la "burbuja". Es decir, la ubicación es en tiempo real.

No traigo vídeo porque no lo puedo testear en mi server pero sí funciona. Igualmente si no llegase a funcionar me lo escriben por acá.

 

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

 

(Dejo código en post, código en web y archivo adjunto)

 

--[[	QUEST
Quest creada por Camilo Martínez
Consiste en que el líder del grupo
pueda ver la ubicación en tiempo real
de los integrantes.

Especificaciones:
1. El líder del grupo al darle click sobre
el objeto, le aparecerá la ubicación de cada
integrante en el mapa (en tiempo real)
2. Se notificará en el chat grupal cuando se
active/desactive el rastreador
3. Cuando se le dé click de nuevo al objeto,
se borrarán las ubicaciones.

Notas:
1. Si un miembro no está en el mapa simplemente
no se muestra su ubicación.
2. Al apuntar el cursor en cualquiera de los
integrantes mostrados en el mapa, se verá su
nombre.
3. Los targets se eliminan cuando se cierra
la sesión
4. Basado en los targets de las misiones oficiales
5. Reportar cualquier error
Y disfrutar de la quest!
Discord: Camilo#0869
--]]

quest ver_miembros begin
	state start begin

		function eliminar_targets()
			pc.setqf("block_target", 0)
			for i = 1, 8 do target.delete("__MEMBER"..i.."__") end
		end

		when 40001.use begin
			if party.is_leader() then
				if pc.getqf("block_target") == 0 then
					pc.setqf("block_target", 1)
				local pids = {party.get_member_pids()}
				local partyMembers = table.getn(pids)
				for i = 1, partyMembers do
					q.begin_other_pc_block(pids[i])
					if pids[i] != pc.get_vid() then
						local name, pid = pc.get_name(), pids[i]
					end
					q.end_other_pc_block()
					target.vid("__MEMBER"..i.."__", pid, name)
				end
					party.chat("<Grupo> El líder está siguiendo las ubicaciones de los integrantes")
				else
					party.chat("<Grupo> El líder dejó de seguir las ubicaciones de los integrantes")
					ver_miembros.eliminar_targets()
				end
			else
				ver_miembros.eliminar_targets()
				syschat("No eres el líder de un grupo")
			end
		end
		
		when logout with pc.getqf("block_target") == 1  begin
			pc.setqf("block_target", 0)
		end
	end
end

 

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...