Jump to content

[GR] Official Spam Topic


ExTrEmEDwarf

Σε ποιό απο τα παρακάτω Ελληνικά νησιά θα ήθελες να πας διακοπές?  

191 members have voted

  1. 1. Σε ποιό απο τα παρακάτω Ελληνικά νησιά θα ήθελες να πας διακοπές?

    • Σαντορίνη
      15
    • Μύκονο
      45
    • Κρήτη
      41
    • Ρόδο
      17
    • Παρο
      10
    • Σκιάθο
      11
    • Μήλο
      2
    • Κανένα απο αυτά
      30
    • Ικαρία
      2
    • Ζάκυνθο
      18


Recommended Posts

Test

 

Na rwtiso ayto yparxh sto l2jfreya? apla to eftiaksa... ekana compile kanonika... alla den exw to client na dokimaso...

 

Ta castle crown apo ti thymame den ta dinh aytomata sto l2j... ?!?!

 

### Eclipse Workspace Patch 1.0
#P L2J_Server
Index: java/com/l2jserver/gameserver/network/clientpackets/EnterWorld.java
===================================================================
--- java/com/l2jserver/gameserver/network/clientpackets/EnterWorld.java	(revision 4514)
+++ java/com/l2jserver/gameserver/network/clientpackets/EnterWorld.java	(working copy)
@@ -74,6 +74,7 @@
import com.l2jserver.gameserver.network.serverpackets.ExVoteSystemInfo;
import com.l2jserver.gameserver.network.serverpackets.FriendList;
import com.l2jserver.gameserver.network.serverpackets.HennaInfo;
+import com.l2jserver.gameserver.datatables.CrownTable;
import com.l2jserver.gameserver.network.serverpackets.ItemList;
import com.l2jserver.gameserver.network.serverpackets.NpcHtmlMessage;
import com.l2jserver.gameserver.network.serverpackets.PledgeShowMemberListAll;
@@ -313,6 +314,12 @@
		// Send Skill list
		activeChar.sendSkillList();

+		if (getCrownIdForPlayer(activeChar)>0)
+			checkCrownForPlayer(activeChar);
+			else
+		giveCrownForPlayer(activeChar);
+
+		
		// Send Dye Information
		activeChar.sendPacket(new HennaInfo(activeChar));

@@ -517,6 +524,76 @@
		}
	}

+	         /* getCrown For Player
+		 * Check: isClan?, isLeader?, isCrownToInventory
+		 * Return: boolean true if Crown for Castle in Inventory
+		 */
+		
+		public int getCrownIdForPlayer(L2PcInstance player)
+		{
+			for(int crownId : CrownTable.getCrownIds())
+			{
+				if(player.getInventory().getItemByItemId(crownId)!= null)
+					return crownId;
+			}
+			return 0;
+		}
+	
+		/*
+		 *	Destroy Crowns for Invalid Data
+		 */
+	
+		public void checkCrownForPlayer(L2PcInstance player)
+		{
+			// Check Clan and Leader?
+			L2Clan clan = player.getClan();
+			// Get All Crowns
+			for(int crownId : CrownTable.getCrownIds())
+			{
+				if(player.getInventory().getItemByItemId(crownId) != null)
+			{
+					// get Count Crowns for fix hacking)
+					int CrownsCount = (int) player.getInventory().getItemByItemId(crownId).getCount();
+					if (clan != null && player.isClanLeader())
+					{
+						if (clan.getHasCastle()>0)
+						{
+	                                        	if (CrownTable.getCrownId(clan.getHasCastle()) != crownId)
+							{
+						                player.getInventory().destroyItemByItemId("Destroy Crown", crownId, CrownsCount, player, player);
+								_log.info("[EnterWorld] Check Crowns for Player ["+player.getName()+"], destroy crownId: "+crownId+", count: "+CrownsCount+" = Wrong CastleId and CrownId!");
+							}
+						}
+						else
+						{
+					                player.getInventory().destroyItemByItemId("Destroy Crown", crownId, CrownsCount, player, player);
+							_log.info("[EnterWorld] Check Crowns for Player ["+player.getName()+"], destroy crownId: "+crownId+", count: "+CrownsCount+" = is not castle!");
+						}
+					}
+					else
+					{
+				                player.getInventory().destroyItemByItemId("Destroy Crown", crownId, CrownsCount, player, player);
+						_log.info("[EnterWorld] Check Crowns for Player ["+player.getName()+"], destroy crownId: "+crownId+", count: "+CrownsCount+" = is not clan or clanLeader!");
+					}
+				}
+			}
+		}
+	
+		public boolean giveCrownForPlayer(L2PcInstance player)
+		{
+			// Check Clan and Leader?
+			L2Clan clan = player.getClan();
+			if (clan != null && player.isClanLeader())
+			{
+				if (clan.getHasCastle()>0)
+				{
+					player.getInventory().addItem("Crown",CrownTable.getCrownId(clan.getHasCastle()),1,player,player);
+					return true;
+				}	
+			}
+			return false;
+		}
+
	/**
	 * @param activeChar partnerid
	 */
Index: java/com/l2jserver/gameserver/datatables/CrownTable.java
===================================================================
--- java/com/l2jserver/gameserver/datatables/CrownTable.java	(revision 0)
+++ java/com/l2jserver/gameserver/datatables/CrownTable.java	(revision 0)
@@ -0,0 +1,75 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License as published by the Free Software
+ * Foundation, either version 3 of the License, or (at your option) any later
+ * version.
+ * 
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+ * details.
+ * 
+ * You should have received a copy of the GNU General Public License along with
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.l2jserver.gameserver.datatables;
+
+/**
+ * This class has just one simple function to return the item id of a crown regarding to castleid
+ * 
+ * @author Cobra
+ */
+public final class CrownTable
+{
+        private static final int[] CROWN_IDS = { 6841, // Crown of the lord
+                6834, // Innadril
+                6835, // Dion
+                6836, // Goddard
+                6837, // Oren
+                6838, // Gludio
+                6839, // Giran
+                6840, // Aden
+                8182, // Rune
+                8183, // Schuttgart
+        };
+        
+        public static int[] getCrownIds()
+        {
+                return CROWN_IDS;
+        }
+        
+        public static int getCrownId(int castleId)
+        {
+                switch (castleId)
+                {
+                        case 1:// Gludio
+                                return 6838;
+                                
+                        case 2: // Dion
+                                return 6835;
+                                
+                        case 3: // Giran
+                                return 6839;
+                                
+                        case 4: // Oren
+                                return 6837;
+                                
+                        case 5: // Aden
+                                return 6840;
+                                
+                        case 6: // Innadril
+                                return 6834;
+                                
+                        case 7: // Goddard
+                                return 6836;
+                                
+                        case 8:// Rune
+                                return 8182;
+                                
+                        case 9: // Schuttgart
+                                return 8183;
+                }
+                
+                return 0;
+        }
+}
\ No newline at end of file

Link to comment
Share on other sites

Test

 

Na rwtiso ayto yparxh sto l2jfreya? apla to eftiaksa... ekana compile kanonika... alla den exw to client na dokimaso...

 

Ta castle crown apo ti thymame den ta dinh aytomata sto l2j... ?!?!

 

### Eclipse Workspace Patch 1.0
#P L2J_Server
Index: java/com/l2jserver/gameserver/network/clientpackets/EnterWorld.java
===================================================================
--- java/com/l2jserver/gameserver/network/clientpackets/EnterWorld.java	(revision 4514)
+++ java/com/l2jserver/gameserver/network/clientpackets/EnterWorld.java	(working copy)
@@ -74,6 +74,7 @@
import com.l2jserver.gameserver.network.serverpackets.ExVoteSystemInfo;
import com.l2jserver.gameserver.network.serverpackets.FriendList;
import com.l2jserver.gameserver.network.serverpackets.HennaInfo;
+import com.l2jserver.gameserver.datatables.CrownTable;
import com.l2jserver.gameserver.network.serverpackets.ItemList;
import com.l2jserver.gameserver.network.serverpackets.NpcHtmlMessage;
import com.l2jserver.gameserver.network.serverpackets.PledgeShowMemberListAll;
@@ -313,6 +314,12 @@
		// Send Skill list
		activeChar.sendSkillList();

+		if (getCrownIdForPlayer(activeChar)>0)
+			checkCrownForPlayer(activeChar);
+			else
+		giveCrownForPlayer(activeChar);
+
+		
		// Send Dye Information
		activeChar.sendPacket(new HennaInfo(activeChar));

@@ -517,6 +524,76 @@
		}
	}

+	         /* getCrown For Player
+		 * Check: isClan?, isLeader?, isCrownToInventory
+		 * Return: boolean true if Crown for Castle in Inventory
+		 */
+		
+		public int getCrownIdForPlayer(L2PcInstance player)
+		{
+			for(int crownId : CrownTable.getCrownIds())
+			{
+				if(player.getInventory().getItemByItemId(crownId)!= null)
+					return crownId;
+			}
+			return 0;
+		}
+	
+		/*
+		 *	Destroy Crowns for Invalid Data
+		 */
+	
+		public void checkCrownForPlayer(L2PcInstance player)
+		{
+			// Check Clan and Leader?
+			L2Clan clan = player.getClan();
+			// Get All Crowns
+			for(int crownId : CrownTable.getCrownIds())
+			{
+				if(player.getInventory().getItemByItemId(crownId) != null)
+			{
+					// get Count Crowns for fix hacking)
+					int CrownsCount = (int) player.getInventory().getItemByItemId(crownId).getCount();
+					if (clan != null && player.isClanLeader())
+					{
+						if (clan.getHasCastle()>0)
+						{
+	                                        	if (CrownTable.getCrownId(clan.getHasCastle()) != crownId)
+							{
+						                player.getInventory().destroyItemByItemId("Destroy Crown", crownId, CrownsCount, player, player);
+								_log.info("[EnterWorld] Check Crowns for Player ["+player.getName()+"], destroy crownId: "+crownId+", count: "+CrownsCount+" = Wrong CastleId and CrownId!");
+							}
+						}
+						else
+						{
+					                player.getInventory().destroyItemByItemId("Destroy Crown", crownId, CrownsCount, player, player);
+							_log.info("[EnterWorld] Check Crowns for Player ["+player.getName()+"], destroy crownId: "+crownId+", count: "+CrownsCount+" = is not castle!");
+						}
+					}
+					else
+					{
+				                player.getInventory().destroyItemByItemId("Destroy Crown", crownId, CrownsCount, player, player);
+						_log.info("[EnterWorld] Check Crowns for Player ["+player.getName()+"], destroy crownId: "+crownId+", count: "+CrownsCount+" = is not clan or clanLeader!");
+					}
+				}
+			}
+		}
+	
+		public boolean giveCrownForPlayer(L2PcInstance player)
+		{
+			// Check Clan and Leader?
+			L2Clan clan = player.getClan();
+			if (clan != null && player.isClanLeader())
+			{
+				if (clan.getHasCastle()>0)
+				{
+					player.getInventory().addItem("Crown",CrownTable.getCrownId(clan.getHasCastle()),1,player,player);
+					return true;
+				}	
+			}
+			return false;
+		}
+
	/**
	 * @param activeChar partnerid
	 */
Index: java/com/l2jserver/gameserver/datatables/CrownTable.java
===================================================================
--- java/com/l2jserver/gameserver/datatables/CrownTable.java	(revision 0)
+++ java/com/l2jserver/gameserver/datatables/CrownTable.java	(revision 0)
@@ -0,0 +1,75 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License as published by the Free Software
+ * Foundation, either version 3 of the License, or (at your option) any later
+ * version.
+ * 
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+ * details.
+ * 
+ * You should have received a copy of the GNU General Public License along with
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.l2jserver.gameserver.datatables;
+
+/**
+ * This class has just one simple function to return the item id of a crown regarding to castleid
+ * 
+ * @author Cobra
+ */
+public final class CrownTable
+{
+        private static final int[] CROWN_IDS = { 6841, // Crown of the lord
+                6834, // Innadril
+                6835, // Dion
+                6836, // Goddard
+                6837, // Oren
+                6838, // Gludio
+                6839, // Giran
+                6840, // Aden
+                8182, // Rune
+                8183, // Schuttgart
+        };
+        
+        public static int[] getCrownIds()
+        {
+                return CROWN_IDS;
+        }
+        
+        public static int getCrownId(int castleId)
+        {
+                switch (castleId)
+                {
+                        case 1:// Gludio
+                                return 6838;
+                                
+                        case 2: // Dion
+                                return 6835;
+                                
+                        case 3: // Giran
+                                return 6839;
+                                
+                        case 4: // Oren
+                                return 6837;
+                                
+                        case 5: // Aden
+                                return 6840;
+                                
+                        case 6: // Innadril
+                                return 6834;
+                                
+                        case 7: // Goddard
+                                return 6836;
+                                
+                        case 8:// Rune
+                                return 8182;
+                                
+                        case 9: // Schuttgart
+                                return 8183;
+                }
+                
+                return 0;
+        }
+}
\ No newline at end of file

freya den ksero ean iparxi,pantos mexri Il den ta dini I l2j.
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.



×
×
  • Create New...