All pastes #994483 Raw Edit

handler_register_change

public text v1 · immutable
#994483 ·published 2008-04-23 13:16 UTC
rendered paste body
Index: java/net/sf/l2j/gameserver/handler/VoicedCommandHandler.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/VoicedCommandHandler.java	(revision 2016)
+++ java/net/sf/l2j/gameserver/handler/VoicedCommandHandler.java	(working copy)
@@ -19,6 +19,9 @@
 
 import javolution.util.FastMap;
 import net.sf.l2j.Config;
+import net.sf.l2j.gameserver.handler.voicedcommandhandlers.Banking;
+import net.sf.l2j.gameserver.handler.voicedcommandhandlers.Wedding;
+import net.sf.l2j.gameserver.handler.voicedcommandhandlers.stats;
 
 /**
  * This class ...
@@ -68,7 +71,18 @@
 					" -> "+(_datatable.get(command) != null));
 		return _datatable.get(command);
 	}
+	
+	public void registerAllVoicedCommandHandlers()
+	{
+		registerVoicedCommandHandler(new stats());
 
+		if(Config.L2JMOD_ALLOW_WEDDING)
+			registerVoicedCommandHandler(new Wedding());
+
+		if(Config.BANKING_SYSTEM_ENABLED)
+			registerVoicedCommandHandler(new Banking());
+	}
+
     /**
      * @return
      */
Index: java/net/sf/l2j/gameserver/handler/UserCommandHandler.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/UserCommandHandler.java	(revision 2016)
+++ java/net/sf/l2j/gameserver/handler/UserCommandHandler.java	(working copy)
@@ -19,6 +19,19 @@
 
 import javolution.util.FastMap;
 import net.sf.l2j.Config;
+import net.sf.l2j.gameserver.handler.usercommandhandlers.ChannelDelete;
+import net.sf.l2j.gameserver.handler.usercommandhandlers.ChannelLeave;
+import net.sf.l2j.gameserver.handler.usercommandhandlers.ChannelListUpdate;
+import net.sf.l2j.gameserver.handler.usercommandhandlers.ClanPenalty;
+import net.sf.l2j.gameserver.handler.usercommandhandlers.ClanWarsList;
+import net.sf.l2j.gameserver.handler.usercommandhandlers.DisMount;
+import net.sf.l2j.gameserver.handler.usercommandhandlers.Escape;
+import net.sf.l2j.gameserver.handler.usercommandhandlers.InstanceZone;
+import net.sf.l2j.gameserver.handler.usercommandhandlers.Loc;
+import net.sf.l2j.gameserver.handler.usercommandhandlers.Mount;
+import net.sf.l2j.gameserver.handler.usercommandhandlers.OlympiadStat;
+import net.sf.l2j.gameserver.handler.usercommandhandlers.PartyInfo;
+import net.sf.l2j.gameserver.handler.usercommandhandlers.Time;
 
 /**
  * This class ...
@@ -62,6 +75,23 @@
 		if (Config.DEBUG) _log.fine("getting handler for user command: "+userCommand);
 		return _datatable.get(new Integer(userCommand));
 	}
+	
+	public void registerAllUserCommandHandlers()
+	{
+		registerUserCommandHandler(new ClanPenalty());
+        registerUserCommandHandler(new ClanWarsList());
+        registerUserCommandHandler(new DisMount());
+        registerUserCommandHandler(new Escape());
+        registerUserCommandHandler(new InstanceZone());
+        registerUserCommandHandler(new Loc());
+        registerUserCommandHandler(new Mount());
+        registerUserCommandHandler(new PartyInfo());
+		registerUserCommandHandler(new Time());
+		registerUserCommandHandler(new OlympiadStat());
+		registerUserCommandHandler(new ChannelLeave());
+		registerUserCommandHandler(new ChannelDelete());
+		registerUserCommandHandler(new ChannelListUpdate());
+	}
 
     /**
      * @return
Index: java/net/sf/l2j/gameserver/handler/SkillHandler.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/SkillHandler.java	(revision 2016)
+++ java/net/sf/l2j/gameserver/handler/SkillHandler.java	(working copy)
@@ -17,6 +17,41 @@
 import java.util.Map;
 import java.util.TreeMap;
 
+import net.sf.l2j.gameserver.handler.skillhandlers.BalanceLife;
+import net.sf.l2j.gameserver.handler.skillhandlers.BeastFeed;
+import net.sf.l2j.gameserver.handler.skillhandlers.Blow;
+import net.sf.l2j.gameserver.handler.skillhandlers.Charge;
+import net.sf.l2j.gameserver.handler.skillhandlers.CombatPointHeal;
+import net.sf.l2j.gameserver.handler.skillhandlers.Continuous;
+import net.sf.l2j.gameserver.handler.skillhandlers.CpDam;
+import net.sf.l2j.gameserver.handler.skillhandlers.Craft;
+import net.sf.l2j.gameserver.handler.skillhandlers.DeluxeKey;
+import net.sf.l2j.gameserver.handler.skillhandlers.Disablers;
+import net.sf.l2j.gameserver.handler.skillhandlers.DrainSoul;
+import net.sf.l2j.gameserver.handler.skillhandlers.Fishing;
+import net.sf.l2j.gameserver.handler.skillhandlers.FishingSkill;
+import net.sf.l2j.gameserver.handler.skillhandlers.GetPlayer;
+import net.sf.l2j.gameserver.handler.skillhandlers.Harvest;
+import net.sf.l2j.gameserver.handler.skillhandlers.Heal;
+import net.sf.l2j.gameserver.handler.skillhandlers.ManaHeal;
+import net.sf.l2j.gameserver.handler.skillhandlers.Manadam;
+import net.sf.l2j.gameserver.handler.skillhandlers.Mdam;
+import net.sf.l2j.gameserver.handler.skillhandlers.Pdam;
+import net.sf.l2j.gameserver.handler.skillhandlers.Recall;
+import net.sf.l2j.gameserver.handler.skillhandlers.Resurrect;
+import net.sf.l2j.gameserver.handler.skillhandlers.SiegeFlag;
+import net.sf.l2j.gameserver.handler.skillhandlers.Soul;
+import net.sf.l2j.gameserver.handler.skillhandlers.Sow;
+import net.sf.l2j.gameserver.handler.skillhandlers.Spoil;
+import net.sf.l2j.gameserver.handler.skillhandlers.StrSiegeAssault;
+import net.sf.l2j.gameserver.handler.skillhandlers.SummonFriend;
+import net.sf.l2j.gameserver.handler.skillhandlers.SummonTreasureKey;
+import net.sf.l2j.gameserver.handler.skillhandlers.Sweep;
+import net.sf.l2j.gameserver.handler.skillhandlers.TakeCastle;
+import net.sf.l2j.gameserver.handler.skillhandlers.TakeFort;
+import net.sf.l2j.gameserver.handler.skillhandlers.TransformDispel;
+import net.sf.l2j.gameserver.handler.skillhandlers.Trap;
+import net.sf.l2j.gameserver.handler.skillhandlers.Unlock;
 import net.sf.l2j.gameserver.model.L2Skill;
 import net.sf.l2j.gameserver.model.L2Skill.SkillType;
 
@@ -55,6 +90,45 @@
 			_datatable.put(t, handler);
 		}
 	}
+	
+	public void registerAllSkillHandlers()
+	{
+		registerSkillHandler(new Blow());
+		registerSkillHandler(new Pdam());
+		registerSkillHandler(new Mdam());
+		registerSkillHandler(new CpDam());
+		registerSkillHandler(new Manadam());
+		registerSkillHandler(new Heal());
+        registerSkillHandler(new CombatPointHeal());
+		registerSkillHandler(new ManaHeal());
+		registerSkillHandler(new BalanceLife());
+		registerSkillHandler(new Charge());
+		registerSkillHandler(new Continuous());
+		registerSkillHandler(new Resurrect());
+        registerSkillHandler(new Spoil());
+        registerSkillHandler(new Sweep());
+        registerSkillHandler(new StrSiegeAssault());
+        registerSkillHandler(new SummonFriend());
+        registerSkillHandler(new SummonTreasureKey());
+        registerSkillHandler(new Disablers());
+		registerSkillHandler(new Recall());
+        registerSkillHandler(new SiegeFlag());
+        registerSkillHandler(new TakeCastle());
+        registerSkillHandler(new TakeFort());
+        registerSkillHandler(new Unlock());
+        registerSkillHandler(new DrainSoul());
+        registerSkillHandler(new Craft());
+		registerSkillHandler(new Fishing());
+		registerSkillHandler(new FishingSkill());
+        registerSkillHandler(new BeastFeed());
+        registerSkillHandler(new DeluxeKey());
+        registerSkillHandler(new Sow());
+        registerSkillHandler(new Soul());
+        registerSkillHandler(new Harvest());
+        registerSkillHandler(new GetPlayer());
+        registerSkillHandler(new TransformDispel());
+        registerSkillHandler(new Trap());
+	}
 
 	public ISkillHandler getSkillHandler(SkillType skillType)
 	{
Index: java/net/sf/l2j/gameserver/handler/AdminCommandHandler.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/AdminCommandHandler.java	(revision 2016)
+++ java/net/sf/l2j/gameserver/handler/AdminCommandHandler.java	(working copy)
@@ -22,6 +22,61 @@
 
 import javolution.util.FastMap;
 import net.sf.l2j.Config;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminAdmin;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminAnnouncements;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminBBS;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminBan;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminBanChat;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminCache;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminChangeAccessLevel;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminCreateItem;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminCursedWeapons;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminDelete;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminDoorControl;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEditChar;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEditNpc;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEffects;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEnchant;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEventEngine;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminExpSp;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminFightCalculator;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminFortSiege;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGeoEditor;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGeodata;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGm;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGmChat;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminHeal;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminHelpPage;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminInvul;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminKick;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminKill;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminLevel;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminLogin;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminMammon;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminManor;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminMenu;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminMobGroup;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminMonsterRace;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPForge;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPathNode;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPetition;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPledge;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPolymorph;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminQuest;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminRepairChar;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminRes;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminRide;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminShop;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminShutdown;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminSiege;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminSkill;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminSpawn;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminTarget;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminTeleport;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminTest;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminTvTEvent;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminUnblockIp;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminZone;
 import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
 
 /**
@@ -76,6 +131,66 @@
 					" -> "+(_datatable.get(command) != null));
 		return _datatable.get(command);
 	}
+	
+	public void registerAllAdminCommandHandlers()
+	{
+		registerAdminCommandHandler(new AdminAdmin());
+		registerAdminCommandHandler(new AdminInvul());
+		registerAdminCommandHandler(new AdminDelete());
+		registerAdminCommandHandler(new AdminKill());
+		registerAdminCommandHandler(new AdminTarget());
+		registerAdminCommandHandler(new AdminShop());
+		registerAdminCommandHandler(new AdminAnnouncements());
+		registerAdminCommandHandler(new AdminCreateItem());
+        registerAdminCommandHandler(new AdminHeal());
+		registerAdminCommandHandler(new AdminHelpPage());
+		registerAdminCommandHandler(new AdminShutdown());
+		registerAdminCommandHandler(new AdminSpawn());
+		registerAdminCommandHandler(new AdminSkill());
+		registerAdminCommandHandler(new AdminExpSp());
+        registerAdminCommandHandler(new AdminEventEngine());
+		registerAdminCommandHandler(new AdminGmChat());
+		registerAdminCommandHandler(new AdminEditChar());
+		registerAdminCommandHandler(new AdminGm());
+		registerAdminCommandHandler(new AdminTeleport());
+		registerAdminCommandHandler(new AdminRepairChar());
+        registerAdminCommandHandler(new AdminChangeAccessLevel());
+        registerAdminCommandHandler(new AdminBan());
+        registerAdminCommandHandler(new AdminPolymorph());
+		registerAdminCommandHandler(new AdminBanChat());
+        registerAdminCommandHandler(new AdminKick());
+        registerAdminCommandHandler(new AdminMonsterRace());
+        registerAdminCommandHandler(new AdminEditNpc());
+        registerAdminCommandHandler(new AdminFightCalculator());
+        registerAdminCommandHandler(new AdminMenu());
+        registerAdminCommandHandler(new AdminSiege());
+        registerAdminCommandHandler(new AdminFortSiege());
+        registerAdminCommandHandler(new AdminPathNode());
+        registerAdminCommandHandler(new AdminPetition());
+        registerAdminCommandHandler(new AdminPForge());
+        registerAdminCommandHandler(new AdminBBS());
+        registerAdminCommandHandler(new AdminEffects());
+        registerAdminCommandHandler(new AdminDoorControl());
+        registerAdminCommandHandler(new AdminTest());
+        registerAdminCommandHandler(new AdminEnchant());
+        registerAdminCommandHandler(new AdminMobGroup());
+        registerAdminCommandHandler(new AdminRes());
+        registerAdminCommandHandler(new AdminMammon());
+        registerAdminCommandHandler(new AdminUnblockIp());
+        registerAdminCommandHandler(new AdminPledge());
+        registerAdminCommandHandler(new AdminRide());
+        registerAdminCommandHandler(new AdminLogin());
+        registerAdminCommandHandler(new AdminCache());
+        registerAdminCommandHandler(new AdminLevel());
+        registerAdminCommandHandler(new AdminQuest());
+        registerAdminCommandHandler(new AdminZone());
+        registerAdminCommandHandler(new AdminCursedWeapons());
+        registerAdminCommandHandler(new AdminGeodata());
+        registerAdminCommandHandler(new AdminGeoEditor());
+        registerAdminCommandHandler(new AdminManor());
+        registerAdminCommandHandler(new AdminTvTEvent());
+      //_adminCommandHandler.registerAdminCommandHandler(new AdminRadar());
+	}
 
     /**
      * @return
Index: java/net/sf/l2j/gameserver/handler/ItemHandler.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/ItemHandler.java	(revision 2016)
+++ java/net/sf/l2j/gameserver/handler/ItemHandler.java	(working copy)
@@ -17,6 +17,39 @@
 import java.util.Map;
 import java.util.TreeMap;
 
+import net.sf.l2j.gameserver.handler.itemhandlers.BeastSoulShot;
+import net.sf.l2j.gameserver.handler.itemhandlers.BeastSpice;
+import net.sf.l2j.gameserver.handler.itemhandlers.BeastSpiritShot;
+import net.sf.l2j.gameserver.handler.itemhandlers.BlessedSpiritShot;
+import net.sf.l2j.gameserver.handler.itemhandlers.Book;
+import net.sf.l2j.gameserver.handler.itemhandlers.CharChangePotions;
+import net.sf.l2j.gameserver.handler.itemhandlers.CrystalCarol;
+import net.sf.l2j.gameserver.handler.itemhandlers.EnchantScrolls;
+import net.sf.l2j.gameserver.handler.itemhandlers.EnergyStone;
+import net.sf.l2j.gameserver.handler.itemhandlers.ExtractableItems;
+import net.sf.l2j.gameserver.handler.itemhandlers.Firework;
+import net.sf.l2j.gameserver.handler.itemhandlers.FishShots;
+import net.sf.l2j.gameserver.handler.itemhandlers.Harvester;
+import net.sf.l2j.gameserver.handler.itemhandlers.Key;
+import net.sf.l2j.gameserver.handler.itemhandlers.Maps;
+import net.sf.l2j.gameserver.handler.itemhandlers.MercTicket;
+import net.sf.l2j.gameserver.handler.itemhandlers.MysteryPotion;
+import net.sf.l2j.gameserver.handler.itemhandlers.PaganKeys;
+import net.sf.l2j.gameserver.handler.itemhandlers.Potions;
+import net.sf.l2j.gameserver.handler.itemhandlers.Recipes;
+import net.sf.l2j.gameserver.handler.itemhandlers.Remedy;
+import net.sf.l2j.gameserver.handler.itemhandlers.RollingDice;
+import net.sf.l2j.gameserver.handler.itemhandlers.ScrollOfEscape;
+import net.sf.l2j.gameserver.handler.itemhandlers.ScrollOfResurrection;
+import net.sf.l2j.gameserver.handler.itemhandlers.Scrolls;
+import net.sf.l2j.gameserver.handler.itemhandlers.Seed;
+import net.sf.l2j.gameserver.handler.itemhandlers.SevenSignsRecord;
+import net.sf.l2j.gameserver.handler.itemhandlers.SoulCrystals;
+import net.sf.l2j.gameserver.handler.itemhandlers.SoulShots;
+import net.sf.l2j.gameserver.handler.itemhandlers.SpecialXMas;
+import net.sf.l2j.gameserver.handler.itemhandlers.SpiritShot;
+import net.sf.l2j.gameserver.handler.itemhandlers.SummonItems;
+
 /**
  * This class manages handlers of items
  *
@@ -77,6 +110,42 @@
 			_datatable.put(new Integer(ids[i]), handler);
 		}
 	}
+	
+	public void registerAllItemHandlers()
+	{
+		registerItemHandler(new ScrollOfEscape());
+		registerItemHandler(new ScrollOfResurrection());
+		registerItemHandler(new SoulShots());
+		registerItemHandler(new SpiritShot());
+		registerItemHandler(new BlessedSpiritShot());
+        registerItemHandler(new BeastSoulShot());
+        registerItemHandler(new BeastSpiritShot());
+        registerItemHandler(new Key());
+        registerItemHandler(new PaganKeys());
+		registerItemHandler(new Maps());
+		registerItemHandler(new Potions());
+		registerItemHandler(new Recipes());
+        registerItemHandler(new RollingDice());
+        registerItemHandler(new MysteryPotion());
+		registerItemHandler(new EnchantScrolls());
+        registerItemHandler(new EnergyStone());
+		registerItemHandler(new Book());
+		registerItemHandler(new Remedy());
+		registerItemHandler(new Scrolls());
+		registerItemHandler(new CrystalCarol());
+		registerItemHandler(new SoulCrystals());
+		registerItemHandler(new SevenSignsRecord());
+        registerItemHandler(new CharChangePotions());
+        registerItemHandler(new Firework());
+        registerItemHandler(new Seed());
+        registerItemHandler(new Harvester());
+        registerItemHandler(new MercTicket());
+		registerItemHandler(new FishShots());
+		registerItemHandler(new ExtractableItems());
+		registerItemHandler(new SpecialXMas());
+		registerItemHandler(new SummonItems());
+		registerItemHandler(new BeastSpice());
+	}
 
 	/**
 	 * Returns the handler of the item
Index: java/net/sf/l2j/gameserver/GameServer.java
===================================================================
--- java/net/sf/l2j/gameserver/GameServer.java	(revision 2016)
+++ java/net/sf/l2j/gameserver/GameServer.java	(working copy)
@@ -67,144 +67,6 @@
 import net.sf.l2j.gameserver.handler.SkillHandler;
 import net.sf.l2j.gameserver.handler.UserCommandHandler;
 import net.sf.l2j.gameserver.handler.VoicedCommandHandler;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminAdmin;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminAnnouncements;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminBBS;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminBan;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminBanChat;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminCache;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminChangeAccessLevel;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminCreateItem;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminCursedWeapons;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminDelete;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminDoorControl;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEditChar;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEditNpc;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEffects;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEnchant;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEventEngine;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminExpSp;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminFightCalculator;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminFortSiege;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGeoEditor;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGeodata;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGm;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGmChat;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminHeal;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminHelpPage;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminInvul;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminKick;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminKill;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminLevel;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminLogin;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminMammon;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminManor;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminMenu;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminMobGroup;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminMonsterRace;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPForge;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPathNode;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPetition;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPledge;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPolymorph;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminQuest;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminRepairChar;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminRes;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminRide;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminShop;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminShutdown;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminSiege;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminSkill;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminSpawn;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminTarget;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminTeleport;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminTest;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminTvTEvent;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminUnblockIp;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminZone;
-import net.sf.l2j.gameserver.handler.itemhandlers.BeastSoulShot;
-import net.sf.l2j.gameserver.handler.itemhandlers.BeastSpice;
-import net.sf.l2j.gameserver.handler.itemhandlers.BeastSpiritShot;
-import net.sf.l2j.gameserver.handler.itemhandlers.BlessedSpiritShot;
-import net.sf.l2j.gameserver.handler.itemhandlers.Book;
-import net.sf.l2j.gameserver.handler.itemhandlers.CharChangePotions;
-import net.sf.l2j.gameserver.handler.itemhandlers.CrystalCarol;
-import net.sf.l2j.gameserver.handler.itemhandlers.EnchantScrolls;
-import net.sf.l2j.gameserver.handler.itemhandlers.EnergyStone;
-import net.sf.l2j.gameserver.handler.itemhandlers.ExtractableItems;
-import net.sf.l2j.gameserver.handler.itemhandlers.Firework;
-import net.sf.l2j.gameserver.handler.itemhandlers.FishShots;
-import net.sf.l2j.gameserver.handler.itemhandlers.Harvester;
-import net.sf.l2j.gameserver.handler.itemhandlers.Key;
-import net.sf.l2j.gameserver.handler.itemhandlers.Maps;
-import net.sf.l2j.gameserver.handler.itemhandlers.MercTicket;
-import net.sf.l2j.gameserver.handler.itemhandlers.MysteryPotion;
-import net.sf.l2j.gameserver.handler.itemhandlers.PaganKeys;
-import net.sf.l2j.gameserver.handler.itemhandlers.Potions;
-import net.sf.l2j.gameserver.handler.itemhandlers.Recipes;
-import net.sf.l2j.gameserver.handler.itemhandlers.Remedy;
-import net.sf.l2j.gameserver.handler.itemhandlers.RollingDice;
-import net.sf.l2j.gameserver.handler.itemhandlers.ScrollOfEscape;
-import net.sf.l2j.gameserver.handler.itemhandlers.ScrollOfResurrection;
-import net.sf.l2j.gameserver.handler.itemhandlers.Scrolls;
-import net.sf.l2j.gameserver.handler.itemhandlers.Seed;
-import net.sf.l2j.gameserver.handler.itemhandlers.SevenSignsRecord;
-import net.sf.l2j.gameserver.handler.itemhandlers.SoulCrystals;
-import net.sf.l2j.gameserver.handler.itemhandlers.SoulShots;
-import net.sf.l2j.gameserver.handler.itemhandlers.SpecialXMas;
-import net.sf.l2j.gameserver.handler.itemhandlers.SpiritShot;
-import net.sf.l2j.gameserver.handler.itemhandlers.SummonItems;
-import net.sf.l2j.gameserver.handler.skillhandlers.BalanceLife;
-import net.sf.l2j.gameserver.handler.skillhandlers.BeastFeed;
-import net.sf.l2j.gameserver.handler.skillhandlers.Blow;
-import net.sf.l2j.gameserver.handler.skillhandlers.Charge;
-import net.sf.l2j.gameserver.handler.skillhandlers.CombatPointHeal;
-import net.sf.l2j.gameserver.handler.skillhandlers.Continuous;
-import net.sf.l2j.gameserver.handler.skillhandlers.CpDam;
-import net.sf.l2j.gameserver.handler.skillhandlers.Craft;
-import net.sf.l2j.gameserver.handler.skillhandlers.DeluxeKey;
-import net.sf.l2j.gameserver.handler.skillhandlers.Disablers;
-import net.sf.l2j.gameserver.handler.skillhandlers.DrainSoul;
-import net.sf.l2j.gameserver.handler.skillhandlers.Fishing;
-import net.sf.l2j.gameserver.handler.skillhandlers.FishingSkill;
-import net.sf.l2j.gameserver.handler.skillhandlers.GetPlayer;
-import net.sf.l2j.gameserver.handler.skillhandlers.Harvest;
-import net.sf.l2j.gameserver.handler.skillhandlers.Heal;
-import net.sf.l2j.gameserver.handler.skillhandlers.ManaHeal;
-import net.sf.l2j.gameserver.handler.skillhandlers.Manadam;
-import net.sf.l2j.gameserver.handler.skillhandlers.Mdam;
-import net.sf.l2j.gameserver.handler.skillhandlers.Pdam;
-import net.sf.l2j.gameserver.handler.skillhandlers.Recall;
-import net.sf.l2j.gameserver.handler.skillhandlers.Resurrect;
-import net.sf.l2j.gameserver.handler.skillhandlers.SiegeFlag;
-import net.sf.l2j.gameserver.handler.skillhandlers.Soul;
-import net.sf.l2j.gameserver.handler.skillhandlers.Sow;
-import net.sf.l2j.gameserver.handler.skillhandlers.Spoil;
-import net.sf.l2j.gameserver.handler.skillhandlers.StrSiegeAssault;
-import net.sf.l2j.gameserver.handler.skillhandlers.SummonFriend;
-import net.sf.l2j.gameserver.handler.skillhandlers.SummonTreasureKey;
-import net.sf.l2j.gameserver.handler.skillhandlers.Sweep;
-import net.sf.l2j.gameserver.handler.skillhandlers.TakeCastle;
-import net.sf.l2j.gameserver.handler.skillhandlers.TakeFort;
-import net.sf.l2j.gameserver.handler.skillhandlers.TransformDispel;
-import net.sf.l2j.gameserver.handler.skillhandlers.Trap;
-import net.sf.l2j.gameserver.handler.skillhandlers.Unlock;
-import net.sf.l2j.gameserver.handler.usercommandhandlers.ChannelDelete;
-import net.sf.l2j.gameserver.handler.usercommandhandlers.ChannelLeave;
-import net.sf.l2j.gameserver.handler.usercommandhandlers.ChannelListUpdate;
-import net.sf.l2j.gameserver.handler.usercommandhandlers.ClanPenalty;
-import net.sf.l2j.gameserver.handler.usercommandhandlers.ClanWarsList;
-import net.sf.l2j.gameserver.handler.usercommandhandlers.DisMount;
-import net.sf.l2j.gameserver.handler.usercommandhandlers.Escape;
-import net.sf.l2j.gameserver.handler.usercommandhandlers.InstanceZone;
-import net.sf.l2j.gameserver.handler.usercommandhandlers.Loc;
-import net.sf.l2j.gameserver.handler.usercommandhandlers.Mount;
-import net.sf.l2j.gameserver.handler.usercommandhandlers.OlympiadStat;
-import net.sf.l2j.gameserver.handler.usercommandhandlers.PartyInfo;
-import net.sf.l2j.gameserver.handler.usercommandhandlers.Time;
-import net.sf.l2j.gameserver.handler.voicedcommandhandlers.Banking;
-import net.sf.l2j.gameserver.handler.voicedcommandhandlers.Wedding;
-import net.sf.l2j.gameserver.handler.voicedcommandhandlers.stats;
 import net.sf.l2j.gameserver.idfactory.IdFactory;
 import net.sf.l2j.gameserver.instancemanager.AuctionManager;
 import net.sf.l2j.gameserver.instancemanager.BoatManager;
@@ -262,12 +124,7 @@
 	private final IdFactory _idFactory;
 	public static GameServer gameServer;
 	private static ClanHallManager _cHManager;
-	private final ItemHandler _itemHandler;
-	private final SkillHandler _skillHandler;
-	private final AdminCommandHandler _adminCommandHandler;
 	private final Shutdown _shutdownHandler;
-	private final UserCommandHandler _userCommandHandler;
-    private final VoicedCommandHandler _voicedCommandHandler;
     private final DoorTable _doorTable;
     private final SevenSigns _sevenSignsEngine;
     private final AutoChatHandler _autoChatHandler;
@@ -477,165 +334,25 @@
 		_log.config("AutoChatHandler: Loaded " + _autoChatHandler.size() + " handlers in total.");
 		_log.config("AutoSpawnHandler: Loaded " + _autoSpawnHandler.size() + " handlers in total.");
 
-		_itemHandler = ItemHandler.getInstance();
-		_itemHandler.registerItemHandler(new ScrollOfEscape());
-		_itemHandler.registerItemHandler(new ScrollOfResurrection());
-		_itemHandler.registerItemHandler(new SoulShots());
-		_itemHandler.registerItemHandler(new SpiritShot());
-		_itemHandler.registerItemHandler(new BlessedSpiritShot());
-        _itemHandler.registerItemHandler(new BeastSoulShot());
-        _itemHandler.registerItemHandler(new BeastSpiritShot());
-        _itemHandler.registerItemHandler(new Key());
-        _itemHandler.registerItemHandler(new PaganKeys());
-		_itemHandler.registerItemHandler(new Maps());
-		_itemHandler.registerItemHandler(new Potions());
-		_itemHandler.registerItemHandler(new Recipes());
-        _itemHandler.registerItemHandler(new RollingDice());
-        _itemHandler.registerItemHandler(new MysteryPotion());
-		_itemHandler.registerItemHandler(new EnchantScrolls());
-        _itemHandler.registerItemHandler(new EnergyStone());
-		_itemHandler.registerItemHandler(new Book());
-		_itemHandler.registerItemHandler(new Remedy());
-		_itemHandler.registerItemHandler(new Scrolls());
-		_itemHandler.registerItemHandler(new CrystalCarol());
-		_itemHandler.registerItemHandler(new SoulCrystals());
-		_itemHandler.registerItemHandler(new SevenSignsRecord());
-        _itemHandler.registerItemHandler(new CharChangePotions());
-        _itemHandler.registerItemHandler(new Firework());
-        _itemHandler.registerItemHandler(new Seed());
-        _itemHandler.registerItemHandler(new Harvester());
-        _itemHandler.registerItemHandler(new MercTicket());
-		_itemHandler.registerItemHandler(new FishShots());
-		_itemHandler.registerItemHandler(new ExtractableItems());
-		_itemHandler.registerItemHandler(new SpecialXMas());
-		_itemHandler.registerItemHandler(new SummonItems());
-		_itemHandler.registerItemHandler(new BeastSpice());
-        _log.config("ItemHandler: Loaded " + _itemHandler.size() + " handlers.");
+		ItemHandler.getInstance();
+		ItemHandler.getInstance().registerAllItemHandlers();
+        _log.config("ItemHandler: Loaded " + ItemHandler.getInstance().size() + " handlers.");
 
-		_skillHandler = SkillHandler.getInstance();
-		_skillHandler.registerSkillHandler(new Blow());
-		_skillHandler.registerSkillHandler(new Pdam());
-		_skillHandler.registerSkillHandler(new Mdam());
-		_skillHandler.registerSkillHandler(new CpDam());
-		_skillHandler.registerSkillHandler(new Manadam());
-		_skillHandler.registerSkillHandler(new Heal());
-        _skillHandler.registerSkillHandler(new CombatPointHeal());
-		_skillHandler.registerSkillHandler(new ManaHeal());
-		_skillHandler.registerSkillHandler(new BalanceLife());
-		_skillHandler.registerSkillHandler(new Charge());
-		_skillHandler.registerSkillHandler(new Continuous());
-		_skillHandler.registerSkillHandler(new Resurrect());
-        _skillHandler.registerSkillHandler(new Spoil());
-        _skillHandler.registerSkillHandler(new Sweep());
-        _skillHandler.registerSkillHandler(new StrSiegeAssault());
-        _skillHandler.registerSkillHandler(new SummonFriend());
-        _skillHandler.registerSkillHandler(new SummonTreasureKey());
-        _skillHandler.registerSkillHandler(new Disablers());
-		_skillHandler.registerSkillHandler(new Recall());
-        _skillHandler.registerSkillHandler(new SiegeFlag());
-        _skillHandler.registerSkillHandler(new TakeCastle());
-        _skillHandler.registerSkillHandler(new TakeFort());
-        _skillHandler.registerSkillHandler(new Unlock());
-        _skillHandler.registerSkillHandler(new DrainSoul());
-        _skillHandler.registerSkillHandler(new Craft());
-		_skillHandler.registerSkillHandler(new Fishing());
-		_skillHandler.registerSkillHandler(new FishingSkill());
-        _skillHandler.registerSkillHandler(new BeastFeed());
-        _skillHandler.registerSkillHandler(new DeluxeKey());
-        _skillHandler.registerSkillHandler(new Sow());
-        _skillHandler.registerSkillHandler(new Soul());
-        _skillHandler.registerSkillHandler(new Harvest());
-        _skillHandler.registerSkillHandler(new GetPlayer());
-        _skillHandler.registerSkillHandler(new TransformDispel());
-        _skillHandler.registerSkillHandler(new Trap());
-        _log.config("SkillHandler: Loaded " + _skillHandler.size() + " handlers.");
+		SkillHandler.getInstance();
+		SkillHandler.getInstance().registerAllSkillHandlers();
+        _log.config("SkillHandler: Loaded " + SkillHandler.getInstance().size() + " handlers.");
 
-		_adminCommandHandler = AdminCommandHandler.getInstance();
-		_adminCommandHandler.registerAdminCommandHandler(new AdminAdmin());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminInvul());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminDelete());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminKill());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminTarget());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminShop());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminAnnouncements());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminCreateItem());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminHeal());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminHelpPage());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminShutdown());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminSpawn());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminSkill());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminExpSp());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminEventEngine());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminGmChat());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminEditChar());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminGm());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminTeleport());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminRepairChar());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminChangeAccessLevel());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminBan());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminPolymorph());
-		_adminCommandHandler.registerAdminCommandHandler(new AdminBanChat());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminKick());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminMonsterRace());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminEditNpc());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminFightCalculator());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminMenu());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminSiege());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminFortSiege());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminPathNode());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminPetition());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminPForge());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminBBS());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminEffects());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminDoorControl());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminTest());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminEnchant());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminMobGroup());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminRes());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminMammon());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminUnblockIp());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminPledge());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminRide());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminLogin());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminCache());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminLevel());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminQuest());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminZone());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminCursedWeapons());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminGeodata());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminGeoEditor());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminManor());
-        _adminCommandHandler.registerAdminCommandHandler(new AdminTvTEvent());
-        //_adminCommandHandler.registerAdminCommandHandler(new AdminRadar());
-        _log.config("AdminCommandHandler: Loaded " + _adminCommandHandler.size() + " handlers.");
+		AdminCommandHandler.getInstance();
+		AdminCommandHandler.getInstance().registerAllAdminCommandHandlers();
+        _log.config("AdminCommandHandler: Loaded " + AdminCommandHandler.getInstance().size() + " handlers.");
 
-        _userCommandHandler = UserCommandHandler.getInstance();
-        _userCommandHandler.registerUserCommandHandler(new ClanPenalty());
-        _userCommandHandler.registerUserCommandHandler(new ClanWarsList());
-        _userCommandHandler.registerUserCommandHandler(new DisMount());
-        _userCommandHandler.registerUserCommandHandler(new Escape());
-        _userCommandHandler.registerUserCommandHandler(new InstanceZone());
-        _userCommandHandler.registerUserCommandHandler(new Loc());
-        _userCommandHandler.registerUserCommandHandler(new Mount());
-        _userCommandHandler.registerUserCommandHandler(new PartyInfo());
-		_userCommandHandler.registerUserCommandHandler(new Time());
-		_userCommandHandler.registerUserCommandHandler(new OlympiadStat());
-		_userCommandHandler.registerUserCommandHandler(new ChannelLeave());
-		_userCommandHandler.registerUserCommandHandler(new ChannelDelete());
-		_userCommandHandler.registerUserCommandHandler(new ChannelListUpdate());
+        UserCommandHandler.getInstance();
+        UserCommandHandler.getInstance().registerAllUserCommandHandlers();
+        _log.config("UserCommandHandler: Loaded " + UserCommandHandler.getInstance().size() + " handlers.");
 
-        _log.config("UserCommandHandler: Loaded " + _userCommandHandler.size() + " handlers.");
-
-		_voicedCommandHandler = VoicedCommandHandler.getInstance();
-		_voicedCommandHandler.registerVoicedCommandHandler(new stats());
-
-		if(Config.L2JMOD_ALLOW_WEDDING)
-			_voicedCommandHandler.registerVoicedCommandHandler(new Wedding());
-
-		if(Config.BANKING_SYSTEM_ENABLED)
-			_voicedCommandHandler.registerVoicedCommandHandler(new Banking());
-		
-		_log.config("VoicedCommandHandler: Loaded " + _voicedCommandHandler.size() + " handlers.");
+		VoicedCommandHandler.getInstance();
+		VoicedCommandHandler.getInstance().registerAllVoicedCommandHandlers();
+		_log.config("VoicedCommandHandler: Loaded " + VoicedCommandHandler.getInstance().size() + " handlers.");
 						
 		if(Config.L2JMOD_ALLOW_WEDDING)
 			CoupleManager.getInstance();