Jump to content
  • 0

teleport clan help l2jfrozen


Question

Posted (edited)

Hello, I need help with this. I wanted to make a teleport so that a clan leader can take the whole clan, but they have to be close to the clan leader so that he can teleport. I was able to do it, but if 1 pj is not close, it won't let me travel to no one what he wanted to do if 1 pj of the clan is not close that pj does not travel but the others do thanks anyway

 

	private void doClanTeleport(L2PcInstance player, int val) 
	{

        L2TeleportLocation list = TeleportLocationTable.getInstance().getTemplate(val);
        
		if(!player.isClanLeader() && player.getClan() != null) 
		{
			player.sendMessage("Solo El lider de Clan Puede Usar El Teleport");
			return;
		}
	    if(player.getClan() == null) 
	    {
	    	player.sendMessage("No Estas en un clan");
			return;
	    }
		

		for (L2PcInstance member : player.getClan().getOnlineMembers(""))
		{
			if (!member.isInsideRadius(player, 1000, false, false))
			{
				player.sendMessage("El Jugador " + member.getName() + " Esta muy Lejos y no sera teleportado.");
				return;
			}
			
		}
		

		for (L2PcInstance member : player.getClan().getOnlineMembers(""))
			{


				if ((member == null) || (member == player))
				{
					continue;
				}
				if (member.isInDuel() && ((member.getDuelId() != member.getDuelId())))
				{
					continue;
				}	

				
				
				if (player.getClanId() == member.getClanId() && member.getLevel() >= 76 && member.getClan() != null && player.getClan() != null && member.getClanId() == player.getClanId())
				{
					
					member.teleToLocation(list.getLocX(), list.getLocY(), list.getLocZ());	
					member.sendMessage("Entrando A una Zona De Clan");	
					player.teleToLocation(list.getLocX(), list.getLocY(), list.getLocZ()); 
					
				}
				else
				{
					
					player.sendMessage("No Cumples Los Requisitos.");
					return;
				}
				
			}
		}

 

Edited by Vision

4 answers to this question

Recommended Posts

  • 0
Posted
2 hours ago, tensador3 said:
				player.sendMessage("El Jugador " + member.getName() + " Esta muy Lejos y no sera teleportado.");
				return;

Change the return to continue

  • 0
Posted (edited)
private void doClanTeleport(L2PcInstance player, int val) 
	{

        L2TeleportLocation list = TeleportLocationTable.getInstance().getTemplate(val);
        
		if(!player.isClanLeader() && player.getClan() != null) 
		{
			player.sendMessage("Solo El lider de Clan Puede Usar El Teleport");
			return;
		}
	    if(player.getClan() == null) 
	    {
	    	player.sendMessage("No Estas en un clan");
			return;
	    }
		
  
		for (L2PcInstance member : player.getClan().getOnlineMembers(""))
			{


				if ((member == null) || (member == player))
				{
					continue;
				}
          
				if (member.isInDuel() && ((member.getDuelId() != member.getDuelId())))
				{
					continue;
				}	

				if (!member.isInsideRadius(player, 1000, false, false))
				{
					player.sendMessage("El Jugador " + member.getName() + " Esta muy Lejos y no sera teleportado.");
					continue;
				}
				
				if (player.getClanId() == member.getClanId() && member.getLevel() >= 76 && member.getClan() != null && player.getClan() != null && member.getClanId() == player.getClanId())
				{
					
					member.teleToLocation(list.getLocX(), list.getLocY(), list.getLocZ());	
					member.sendMessage("Entrando A una Zona De Clan");	
					player.teleToLocation(list.getLocX(), list.getLocY(), list.getLocZ()); 
					
				}
				else
				{
					
					player.sendMessage("No Cumples Los Requisitos.");
					return;
				}
				
			}
		}

 

Should be like this I think. 🙂

EDIT:
Also, player (clan leader) teleportation is in wrong place, because he will be teleported as many times as there is online members.

Edited by xJustMe
  • 0
Posted
2 hours ago, xJustMe said:
private void doClanTeleport(L2PcInstance player, int val) 
	{

        L2TeleportLocation list = TeleportLocationTable.getInstance().getTemplate(val);
        
		if(!player.isClanLeader() && player.getClan() != null) 
		{
			player.sendMessage("Solo El lider de Clan Puede Usar El Teleport");
			return;
		}
	    if(player.getClan() == null) 
	    {
	    	player.sendMessage("No Estas en un clan");
			return;
	    }
		
  
		for (L2PcInstance member : player.getClan().getOnlineMembers(""))
			{


				if ((member == null) || (member == player))
				{
					continue;
				}
          
				if (member.isInDuel() && ((member.getDuelId() != member.getDuelId())))
				{
					continue;
				}	

				if (!member.isInsideRadius(player, 1000, false, false))
				{
					player.sendMessage("El Jugador " + member.getName() + " Esta muy Lejos y no sera teleportado.");
					continue;
				}
				
				if (player.getClanId() == member.getClanId() && member.getLevel() >= 76 && member.getClan() != null && player.getClan() != null && member.getClanId() == player.getClanId())
				{
					
					member.teleToLocation(list.getLocX(), list.getLocY(), list.getLocZ());	
					member.sendMessage("Entrando A una Zona De Clan");	
					player.teleToLocation(list.getLocX(), list.getLocY(), list.getLocZ()); 
					
				}
				else
				{
					
					player.sendMessage("No Cumples Los Requisitos.");
					return;
				}
				
			}
		}

 

Should be like this I think. 🙂

EDIT:
Also, player (clan leader) teleportation is in wrong place, because he will be teleported as many times as there is online members.

 

Try this

 

private void doClanTeleport(L2PcInstance player, int val) 
{
    L2TeleportLocation list = TeleportLocationTable.getInstance().getTemplate(val);
    
    if (player.getClan() == null) 
    {
        player.sendMessage("No Estas en un clan");
        return;
    }
  
    if (player.isClanLeader())
    {
        // Teleport all online members of the clan
        for (L2PcInstance member : player.getClan().getOnlineMembers(""))
        {
            // Skip the player and any members that are in a different duel
            if ((member == null) || (member == player) || (member.isInDuel() && (member.getDuelId() != member.getDuelId())))
            {
                continue;
            }
          
            // Check if the member meets the level requirement
            if (member.getLevel() >= 76)
            {
                member.teleToLocation(list.getLocX(), list.getLocY(), list.getLocZ());
                member.sendMessage("Entrando A una Zona De Clan");
            }
            else
            {
                player.sendMessage("El Jugador " + member.getName() + " no cumple los requisitos.");
            }
        }

        // Teleport the clan leader
        player.teleToLocation(list.getLocX(), list.getLocY(), list.getLocZ()); 
    }
    else
    {
        player.sendMessage("Solo El lider de Clan Puede Usar El Teleport");
    }
}

 

  • 0
Posted
9 hours ago, Celestine said:

 

Try this

 

private void doClanTeleport(L2PcInstance player, int val) 
{
    L2TeleportLocation list = TeleportLocationTable.getInstance().getTemplate(val);
    
    if (player.getClan() == null) 
    {
        player.sendMessage("No Estas en un clan");
        return;
    }
  
    if (player.isClanLeader())
    {
        // Teleport all online members of the clan
        for (L2PcInstance member : player.getClan().getOnlineMembers(""))
        {
            // Skip the player and any members that are in a different duel
            if ((member == null) || (member == player) || (member.isInDuel() && (member.getDuelId() != member.getDuelId())))
            {
                continue;
            }
          
            // Check if the member meets the level requirement
            if (member.getLevel() >= 76)
            {
                member.teleToLocation(list.getLocX(), list.getLocY(), list.getLocZ());
                member.sendMessage("Entrando A una Zona De Clan");
            }
            else
            {
                player.sendMessage("El Jugador " + member.getName() + " no cumple los requisitos.");
            }
        }

        // Teleport the clan leader
        player.teleToLocation(list.getLocX(), list.getLocY(), list.getLocZ()); 
    }
    else
    {
        player.sendMessage("Solo El lider de Clan Puede Usar El Teleport");
    }
}

 

it works thank you all for answering only add him if a player is far from the leader do not teleport to that player

 

	private void doClanTeleport(L2PcInstance player, int val) 
	{
	    L2TeleportLocation list = TeleportLocationTable.getInstance().getTemplate(val);
	    
	    if (player.getClan() == null) 
	    {
	        player.sendMessage("No Estas en un clan");
	        return;
	    }
	  
	    if (player.isClanLeader())
	    {
	        // Teleport all online members of the clan
	        for (L2PcInstance member : player.getClan().getOnlineMembers(""))
	        {
	            // Skip the player and any members that are in a different duel
	            if ((member == null) || (member == player) || (member.isInDuel() && (member.getDuelId() != member.getDuelId())))
	            {
	                continue;
	            }
	          
	            // Check if the member meets the level requirement
	            if (member.getLevel() >= 76  && member.isInsideRadius(player, 1000, false, false))
	            {
	                member.teleToLocation(list.getLocX(), list.getLocY(), list.getLocZ());
	                member.sendMessage("Entrando A una Zona De Clan");
	            }
	            else
	            {
	            	player.sendMessage("El Jugador " + member.getName() + " Esta muy Lejos y no sera teleportado.");
	            }
	        }

	        // Teleport the clan leader
	        player.teleToLocation(list.getLocX(), list.getLocY(), list.getLocZ()); 
	    }
	    else
	    {
	        player.sendMessage("Solo El lider de Clan Puede Usar El Teleport");
	    }
	}

 

 

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   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.



  • Posts

    • hello everyone! I am wanting to save the files (Ini. - Data - ) of the EP5 Client: Salvation... But they generate the error "corrupt files"... I tried several versions of L2FileEditor without good results. I need help! Thank you!
    • Opening December 6th at 19:00 (GMT +3)! Open Beta Test from November 30th!   https://l2soe.com/   🌟 Introducing L2 Saga of Eternia: A Revolution in Lineage 2 High Five! 🌟   Dear Lineage 2 enthusiasts, Prepare to witness the future of private servers! L2 Saga of Eternia is not just another High Five project—it’s a game-changing experience designed to compete with the giants of the Lineage 2 private server scene. Built for the community, by the community, we’re here to raise the bar in quality, innovation, and longevity. What Sets Us Apart? 💎 No Wipes, Ever Say goodbye to the fear of losing your progress. Our server is built to last and will never close. Stability and consistency are our promises to you. ⚔️ Weekly New Content Our dedicated development team ensures fresh challenges, events, and updates every week. From custom quests to exclusive features, there will always be something exciting to explore. 💰 No Pay-to-Win Skill and strategy matter most here. Enjoy a balanced gameplay environment where your achievements come from effort, not your wallet. 🌍 A Massive Community With 2000+ players expected, join a vibrant and active community of like-minded adventurers ready to conquer the world of Aden. 🏆 Fair and Competitive Gameplay Our systems are designed to promote healthy competition while avoiding abusive mechanics and exploits. 🔧 Professional Development From advanced bug fixes to carefully curated content, we pride ourselves on smooth performance, no lag, and unparalleled server quality. Key Features Chronicle: High Five with unique interface Rate: Dynamic x10 rates Class Balance: Carefully fine-tuned for a fair experience PvP Focused: PvP Ranking & aura display effect for 3 Top PvPers every week Custom Events: Seasonal and permanent events to keep you engaged Additional Features:   Custom Endgame Content: Introduce unique dungeons, raids, or zones unavailable in other servers. Player-Driven Economy: Implement a strong market system and avoid overinflated drops or rewards. Epic Siege Battles: Announce special large-scale sieges and PvP events. Incentives for Streamers and Clans: Attract influencers and big clans to boost server publicity. Roadmap Transparency: Share a public roadmap of planned updates to build trust and excitemen   Here you can read all the features: https://l2soe.com/features   Video preview: Join the Revolution! This is your chance to be part of something legendary. L2 Saga of Eternia is not just a server; it’s a movement to redefine what Lineage 2 can be. Whether you’re a seasoned veteran or a newcomer to the world of Aden, we invite you to experience Lineage 2 at its finest.   Official Launch Date: December 6th 2024 Website: https://l2soe.com/ Facebook: https://www.facebook.com/l2soe Discord: https://discord.com/invite/l2eternia   Let’s build the ultimate Lineage 2 experience together. See you in-game! 🎮
    • That's like a tutorial on how to run l2 on MacOS Xd but good job for the investigation. 
    • small update: dc robe set sold   wts adena 1kk = 1.5$ 
    • DISCORD : utchiha_market telegram : https://t.me/utchiha_market SELLIX STORE : https://utchihamkt.mysellix.io/ Join our server for more products : https://discord.gg/hood-services https://campsite.bio/utchihaamkt
  • Topics

×
×
  • Create New...