Jump to content

Recommended Posts

Posted

Hello everyone!!!

 

1. Makes Announcements the Castle Lords

2. Every time login he get a wellcome message

3. When login can be seen all online players in this time

 

Index: java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java
===================================================================
--- java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java
+++ java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java
@@ -36,6 +36,7 @@

import net.sf.l2j.Config;
import net.sf.l2j.L2DatabaseFactory;
+import net.sf.l2j.gameserver.Announcements;
import net.sf.l2j.gameserver.GameTimeController;
import net.sf.l2j.gameserver.GeoData;
import net.sf.l2j.gameserver.GmListTable;
@@ -9985,6 +9986,35 @@
		return _duelState;
	}
+ 	
+	public void CastleLordsAnnouncements()
+	{
+		if (Config.Announcements_CastleLord)
+          {
+		if (isCastleLord(3))
+		{		
+		Announcements.getInstance().announceToAll("Castle Lord of Giran"+getName()+"is currently online");
+		sendMessage("Welcome Lord "+getName());  
+		sendMessage("My lord There are "+L2World.getInstance().getAllPlayers().size()+" players online now");			
+		}
+		
+		if (isCastleLord(1))
+		{		
+		Announcements.getInstance().announceToAll("Castle Lord of Gludio"+getName()+"is currently online");
+		sendMessage("Welcome Lord "+getName());  
+		sendMessage("My lord There are "+L2World.getInstance().getAllPlayers().size()+" players online now");			
+		}
+	
+		if (isCastleLord(2))
+		{		
+		Announcements.getInstance().announceToAll("Castle Lord of Dion"+getName()+"is currently online");
+		sendMessage("Welcome Lord "+getName());  
+		sendMessage("My lord There are "+L2World.getInstance().getAllPlayers().size()+" players online now");			
+		}
+		
+		if (isCastleLord(4))
+		{		
+		Announcements.getInstance().announceToAll("Castle Lord of Oren"+getName()+"is currently online");
+		sendMessage("Welcome Lord "+getName());  
+		sendMessage("My lord There are "+L2World.getInstance().getAllPlayers().size()+" players online now");			
+		}
+		
+		if (isCastleLord(5))
+		{		
+		Announcements.getInstance().announceToAll("Castle Lord of Aden"+getName()+"is currently online");
+		sendMessage("Welcome Lord "+getName());  
+		sendMessage("My lord There are "+L2World.getInstance().getAllPlayers().size()+" players online now");			
+		}
+
+		if (isCastleLord(6))
+		{		
+		Announcements.getInstance().announceToAll("Castle Lord of Innadril"+getName()+"is currently online");
+		sendMessage("Welcome Lord "+getName());  
+		sendMessage("My lord There are "+L2World.getInstance().getAllPlayers().size()+" players online now");			
+		}
+		
+		if (isCastleLord(7))
+		{		
+		Announcements.getInstance().announceToAll("Castle Lord of Goddard"+getName()+"is currently online");
+		sendMessage("Welcome Lord "+getName());  
+		sendMessage("My lord There are "+L2World.getInstance().getAllPlayers().size()+" players online now");			
+		}
+	
+		if (isCastleLord(8))
+		{		
+		Announcements.getInstance().announceToAll("Castle Lord of Rune"+getName()+"is currently online");
+		sendMessage("Welcome Lord "+getName());  
+		sendMessage("My lord There are "+L2World.getInstance().getAllPlayers().size()+" players online now");			
+		}
+		
+		if (isCastleLord(9))
+		{		
+		Announcements.getInstance().announceToAll("Castle Lord of Schuttgart"+getName()+"is currently online");
+		sendMessage("Welcome Lord "+getName());  
+		sendMessage("My lord There are "+L2World.getInstance().getAllPlayers().size()+" players online now");			
+		}
+           }
+       }
+
	/**
	 * Sets up the duel state using a non 0 duelId.
	 * @param duelId 0=not in a duel
Index: java/net/sf/l2j/gameserver/clientpackets/EnterWorld.java
===================================================================
--- java/net/sf/l2j/gameserver/clientpackets/EnterWorld.java	
+++ java/net/sf/l2j/gameserver/clientpackets/EnterWorld.java	
@@ -286,6 +287,7 @@
                 Hero.getInstance().getHeroes().containsKey(activeChar.getObjectId()))
             activeChar.setHero(true);

+        activeChar.CastleLordsAnnouncements();
         setPledgeClass(activeChar);
===================================================================
--- java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java	
+++ java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java
@@ -1185,5 +1185,46 @@

/** Alt Settings for devs */
    public static boolean ALT_DEV_NO_QUESTS;
    public static boolean ALT_DEV_NO_SPAWNS;

+
+   public static boolean Announcements_CastleLord;
+
/**
     * This class initializes all global variables for configuration.<br>
     * If key doesn't appear in properties file, a default value is setting on by this class.
     * @see #CONFIGURATION_FILE for configuring your server.
     */
    public static void load()

@@ 1904,17 1904,138 @@

                L2JMOD_WEDDING_SAMESEX                  = Boolean.parseBoolean(L2JModSettings.getProperty("WeddingAllowSameSex", "False"));
                L2JMOD_WEDDING_FORMALWEAR               = Boolean.parseBoolean(L2JModSettings.getProperty("WeddingFormalWear", "True"));
                L2JMOD_WEDDING_DIVORCE_COSTS            = Integer.parseInt(L2JModSettings.getProperty("WeddingDivorceCosts", "20"));
+
+               Announcements_CastleLord                = Boolean.parseBoolean(L2JModSettings.getProperty("AnnouncementsCastleLords", "False"));
+
                    if (TVT_EVENT_PARTICIPATION_NPC_ID == 0)
                {
                    TVT_EVENT_ENABLED = false;
                    System.out.println("TvTEventEngine[Config.load()]: invalid config property -> TvTEventParticipationNpcId");
                }

Index: java/Config/L2jmods.Properties
===================================================================
--- java/Config/L2jmods.Properties	
+++ java/Config/L2jmods.Properties
@@ -140,1 +140,1 @@

+#==================================================
+#          Castle Lords Announcements             =
+#==================================================
+#Set this options to true to enable Announcements.
+AnnouncementsCastleLords = False

 

If there is any bug-error just do a reply!!!

Posted

You're hardcoding L2PcInstance with no reason... btw seems that the code achieves its purpose...

 

Is Most good if i have the pcinstance code and then load the method in enterworld!!!

 

GJ...nice share buddy

 

THANKS :D

 

Posted

Is Most good if i have the pcinstance code and then load the method in enterworld!!!

 

THANKS :D

Hardcoding L2PcInstance is never the best option.

Just create a file with a simple void-->  public static void freakChecker(L2PcInstance char) and call from enterworld freakChecker(activeChar);

and then put your code inside that void.

You can also put the code inside enterworld... but not the best way...

Posted

sure you can.

enterworld.java

private void announceCastleOwner(L2PcInstance activeChar)
{
	L2Clan clan = activeChar.getClan();

	if (clan != null)
	{
		if (clan.getHasCastle() > 0)
		{
			Castle castle = CastleManager.getInstance().getCastleById(clan.getHasCastle());
			if ((castle != null) && (activeChar.getObjectId() == clan.getLeaderId()))
Announcements.getInstance().announceToAll(message");
		}
	}
}

 

and then,

announceCastleOwner(activeChar);

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


×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock