MasterHandler.java 31 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673
  1. /*
  2. * This program is free software: you can redistribute it and/or modify it under
  3. * the terms of the GNU General Public License as published by the Free Software
  4. * Foundation, either version 3 of the License, or (at your option) any later
  5. * version.
  6. *
  7. * This program is distributed in the hope that it will be useful, but WITHOUT
  8. * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  9. * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
  10. * details.
  11. *
  12. * You should have received a copy of the GNU General Public License along with
  13. * this program. If not, see <http://www.gnu.org/licenses/>.
  14. */
  15. package handlers;
  16. import handlers.actionhandlers.L2ArtefactInstanceAction;
  17. import handlers.actionhandlers.L2DecoyAction;
  18. import handlers.actionhandlers.L2DoorInstanceAction;
  19. import handlers.actionhandlers.L2DoorInstanceActionShift;
  20. import handlers.actionhandlers.L2ItemInstanceAction;
  21. import handlers.actionhandlers.L2ItemInstanceActionShift;
  22. import handlers.actionhandlers.L2NpcAction;
  23. import handlers.actionhandlers.L2NpcActionShift;
  24. import handlers.actionhandlers.L2PcInstanceAction;
  25. import handlers.actionhandlers.L2PcInstanceActionShift;
  26. import handlers.actionhandlers.L2PetInstanceAction;
  27. import handlers.actionhandlers.L2StaticObjectInstanceAction;
  28. import handlers.actionhandlers.L2StaticObjectInstanceActionShift;
  29. import handlers.actionhandlers.L2SummonAction;
  30. import handlers.actionhandlers.L2SummonActionShift;
  31. import handlers.actionhandlers.L2TrapAction;
  32. import handlers.admincommandhandlers.AdminAdmin;
  33. import handlers.admincommandhandlers.AdminAnnouncements;
  34. import handlers.admincommandhandlers.AdminBBS;
  35. import handlers.admincommandhandlers.AdminBan;
  36. import handlers.admincommandhandlers.AdminBuffs;
  37. import handlers.admincommandhandlers.AdminCHSiege;
  38. import handlers.admincommandhandlers.AdminCache;
  39. import handlers.admincommandhandlers.AdminCamera;
  40. import handlers.admincommandhandlers.AdminChangeAccessLevel;
  41. import handlers.admincommandhandlers.AdminClan;
  42. import handlers.admincommandhandlers.AdminCreateItem;
  43. import handlers.admincommandhandlers.AdminCursedWeapons;
  44. import handlers.admincommandhandlers.AdminDebug;
  45. import handlers.admincommandhandlers.AdminDelete;
  46. import handlers.admincommandhandlers.AdminDisconnect;
  47. import handlers.admincommandhandlers.AdminDoorControl;
  48. import handlers.admincommandhandlers.AdminEditChar;
  49. import handlers.admincommandhandlers.AdminEditNpc;
  50. import handlers.admincommandhandlers.AdminEffects;
  51. import handlers.admincommandhandlers.AdminElement;
  52. import handlers.admincommandhandlers.AdminEnchant;
  53. import handlers.admincommandhandlers.AdminEventEngine;
  54. import handlers.admincommandhandlers.AdminEvents;
  55. import handlers.admincommandhandlers.AdminExpSp;
  56. import handlers.admincommandhandlers.AdminFightCalculator;
  57. import handlers.admincommandhandlers.AdminFortSiege;
  58. import handlers.admincommandhandlers.AdminGeoEditor;
  59. import handlers.admincommandhandlers.AdminGeodata;
  60. import handlers.admincommandhandlers.AdminGm;
  61. import handlers.admincommandhandlers.AdminGmChat;
  62. import handlers.admincommandhandlers.AdminGraciaSeeds;
  63. import handlers.admincommandhandlers.AdminHeal;
  64. import handlers.admincommandhandlers.AdminHellbound;
  65. import handlers.admincommandhandlers.AdminHelpPage;
  66. import handlers.admincommandhandlers.AdminInstance;
  67. import handlers.admincommandhandlers.AdminInstanceZone;
  68. import handlers.admincommandhandlers.AdminInvul;
  69. import handlers.admincommandhandlers.AdminKick;
  70. import handlers.admincommandhandlers.AdminKill;
  71. import handlers.admincommandhandlers.AdminLevel;
  72. import handlers.admincommandhandlers.AdminLogin;
  73. import handlers.admincommandhandlers.AdminMammon;
  74. import handlers.admincommandhandlers.AdminManor;
  75. import handlers.admincommandhandlers.AdminMenu;
  76. import handlers.admincommandhandlers.AdminMessages;
  77. import handlers.admincommandhandlers.AdminMobGroup;
  78. import handlers.admincommandhandlers.AdminMonsterRace;
  79. import handlers.admincommandhandlers.AdminPForge;
  80. import handlers.admincommandhandlers.AdminPathNode;
  81. import handlers.admincommandhandlers.AdminPetition;
  82. import handlers.admincommandhandlers.AdminPledge;
  83. import handlers.admincommandhandlers.AdminPolymorph;
  84. import handlers.admincommandhandlers.AdminQuest;
  85. import handlers.admincommandhandlers.AdminRepairChar;
  86. import handlers.admincommandhandlers.AdminRes;
  87. import handlers.admincommandhandlers.AdminRide;
  88. import handlers.admincommandhandlers.AdminShop;
  89. import handlers.admincommandhandlers.AdminShowQuests;
  90. import handlers.admincommandhandlers.AdminShutdown;
  91. import handlers.admincommandhandlers.AdminSiege;
  92. import handlers.admincommandhandlers.AdminSkill;
  93. import handlers.admincommandhandlers.AdminSpawn;
  94. import handlers.admincommandhandlers.AdminSummon;
  95. import handlers.admincommandhandlers.AdminTarget;
  96. import handlers.admincommandhandlers.AdminTeleport;
  97. import handlers.admincommandhandlers.AdminTerritoryWar;
  98. import handlers.admincommandhandlers.AdminTest;
  99. import handlers.admincommandhandlers.AdminTvTEvent;
  100. import handlers.admincommandhandlers.AdminUnblockIp;
  101. import handlers.admincommandhandlers.AdminVitality;
  102. import handlers.admincommandhandlers.AdminZone;
  103. import handlers.bypasshandlers.Augment;
  104. import handlers.bypasshandlers.BloodAlliance;
  105. import handlers.bypasshandlers.Buy;
  106. import handlers.bypasshandlers.BuyShadowItem;
  107. import handlers.bypasshandlers.CPRecovery;
  108. import handlers.bypasshandlers.ChatLink;
  109. import handlers.bypasshandlers.ClanWarehouse;
  110. import handlers.bypasshandlers.DrawHenna;
  111. import handlers.bypasshandlers.EventEngine;
  112. import handlers.bypasshandlers.Festival;
  113. import handlers.bypasshandlers.FortSiege;
  114. import handlers.bypasshandlers.Freight;
  115. import handlers.bypasshandlers.ItemAuctionLink;
  116. import handlers.bypasshandlers.Link;
  117. import handlers.bypasshandlers.Loto;
  118. import handlers.bypasshandlers.ManorManager;
  119. import handlers.bypasshandlers.Multisell;
  120. import handlers.bypasshandlers.Observation;
  121. import handlers.bypasshandlers.OlympiadManagerLink;
  122. import handlers.bypasshandlers.OlympiadObservation;
  123. import handlers.bypasshandlers.PlayerHelp;
  124. import handlers.bypasshandlers.PrivateWarehouse;
  125. import handlers.bypasshandlers.QuestLink;
  126. import handlers.bypasshandlers.QuestList;
  127. import handlers.bypasshandlers.ReceivePremium;
  128. import handlers.bypasshandlers.ReleaseAttribute;
  129. import handlers.bypasshandlers.RemoveDeathPenalty;
  130. import handlers.bypasshandlers.RemoveHennaList;
  131. import handlers.bypasshandlers.RentPet;
  132. import handlers.bypasshandlers.RideWyvern;
  133. import handlers.bypasshandlers.Rift;
  134. import handlers.bypasshandlers.SkillList;
  135. import handlers.bypasshandlers.SupportBlessing;
  136. import handlers.bypasshandlers.SupportMagic;
  137. import handlers.bypasshandlers.TerritoryStatus;
  138. import handlers.bypasshandlers.TerritoryWar;
  139. import handlers.bypasshandlers.VoiceCommand;
  140. import handlers.bypasshandlers.Wear;
  141. import handlers.chathandlers.ChatAll;
  142. import handlers.chathandlers.ChatAlliance;
  143. import handlers.chathandlers.ChatBattlefield;
  144. import handlers.chathandlers.ChatClan;
  145. import handlers.chathandlers.ChatHeroVoice;
  146. import handlers.chathandlers.ChatParty;
  147. import handlers.chathandlers.ChatPartyMatchRoom;
  148. import handlers.chathandlers.ChatPartyRoomAll;
  149. import handlers.chathandlers.ChatPartyRoomCommander;
  150. import handlers.chathandlers.ChatPetition;
  151. import handlers.chathandlers.ChatShout;
  152. import handlers.chathandlers.ChatTell;
  153. import handlers.chathandlers.ChatTrade;
  154. import handlers.itemhandlers.BeastSoulShot;
  155. import handlers.itemhandlers.BeastSpice;
  156. import handlers.itemhandlers.BeastSpiritShot;
  157. import handlers.itemhandlers.BlessedSpiritShot;
  158. import handlers.itemhandlers.Book;
  159. import handlers.itemhandlers.Disguise;
  160. import handlers.itemhandlers.Elixir;
  161. import handlers.itemhandlers.EnchantAttribute;
  162. import handlers.itemhandlers.EnchantScrolls;
  163. import handlers.itemhandlers.EnergyStarStone;
  164. import handlers.itemhandlers.EventItem;
  165. import handlers.itemhandlers.ExtractableItems;
  166. import handlers.itemhandlers.FishShots;
  167. import handlers.itemhandlers.Harvester;
  168. import handlers.itemhandlers.ItemSkills;
  169. import handlers.itemhandlers.ItemSkillsTemplate;
  170. import handlers.itemhandlers.ManaPotion;
  171. import handlers.itemhandlers.Maps;
  172. import handlers.itemhandlers.MercTicket;
  173. import handlers.itemhandlers.NicknameColor;
  174. import handlers.itemhandlers.PaganKeys;
  175. import handlers.itemhandlers.PetFood;
  176. import handlers.itemhandlers.Recipes;
  177. import handlers.itemhandlers.RollingDice;
  178. import handlers.itemhandlers.ScrollOfResurrection;
  179. import handlers.itemhandlers.Seed;
  180. import handlers.itemhandlers.SevenSignsRecord;
  181. import handlers.itemhandlers.SoulShots;
  182. import handlers.itemhandlers.SpecialXMas;
  183. import handlers.itemhandlers.SpiritShot;
  184. import handlers.itemhandlers.SummonItems;
  185. import handlers.itemhandlers.TeleportBookmark;
  186. import handlers.skillhandlers.BalanceLife;
  187. import handlers.skillhandlers.BallistaBomb;
  188. import handlers.skillhandlers.BeastSkills;
  189. import handlers.skillhandlers.Blow;
  190. import handlers.skillhandlers.Cancel;
  191. import handlers.skillhandlers.ChainHeal;
  192. import handlers.skillhandlers.Charge;
  193. import handlers.skillhandlers.CombatPointHeal;
  194. import handlers.skillhandlers.Continuous;
  195. import handlers.skillhandlers.CpDam;
  196. import handlers.skillhandlers.CpDamPercent;
  197. import handlers.skillhandlers.Craft;
  198. import handlers.skillhandlers.DeluxeKey;
  199. import handlers.skillhandlers.Detection;
  200. import handlers.skillhandlers.Disablers;
  201. import handlers.skillhandlers.Dummy;
  202. import handlers.skillhandlers.Extractable;
  203. import handlers.skillhandlers.Fishing;
  204. import handlers.skillhandlers.FishingSkill;
  205. import handlers.skillhandlers.GetPlayer;
  206. import handlers.skillhandlers.GiveReco;
  207. import handlers.skillhandlers.GiveSp;
  208. import handlers.skillhandlers.GiveVitality;
  209. import handlers.skillhandlers.Harvest;
  210. import handlers.skillhandlers.Heal;
  211. import handlers.skillhandlers.HealPercent;
  212. import handlers.skillhandlers.InstantJump;
  213. import handlers.skillhandlers.ManaHeal;
  214. import handlers.skillhandlers.Manadam;
  215. import handlers.skillhandlers.Mdam;
  216. import handlers.skillhandlers.NornilsPower;
  217. import handlers.skillhandlers.Pdam;
  218. import handlers.skillhandlers.RefuelAirShip;
  219. import handlers.skillhandlers.Resurrect;
  220. import handlers.skillhandlers.ShiftTarget;
  221. import handlers.skillhandlers.Soul;
  222. import handlers.skillhandlers.Sow;
  223. import handlers.skillhandlers.Spoil;
  224. import handlers.skillhandlers.StealBuffs;
  225. import handlers.skillhandlers.StrSiegeAssault;
  226. import handlers.skillhandlers.SummonFriend;
  227. import handlers.skillhandlers.Sweep;
  228. import handlers.skillhandlers.TakeCastle;
  229. import handlers.skillhandlers.TakeFort;
  230. import handlers.skillhandlers.TransformDispel;
  231. import handlers.skillhandlers.Trap;
  232. import handlers.skillhandlers.Unlock;
  233. import handlers.targethandlers.TargetAlly;
  234. import handlers.targethandlers.TargetArea;
  235. import handlers.targethandlers.TargetAreaCorpseMob;
  236. import handlers.targethandlers.TargetAreaSummon;
  237. import handlers.targethandlers.TargetAreaUndead;
  238. import handlers.targethandlers.TargetAura;
  239. import handlers.targethandlers.TargetAuraCorpseMob;
  240. import handlers.targethandlers.TargetBehindArea;
  241. import handlers.targethandlers.TargetBehindAura;
  242. import handlers.targethandlers.TargetClan;
  243. import handlers.targethandlers.TargetClanMember;
  244. import handlers.targethandlers.TargetCorpseAlly;
  245. import handlers.targethandlers.TargetCorpseClan;
  246. import handlers.targethandlers.TargetCorpseMob;
  247. import handlers.targethandlers.TargetCorpsePet;
  248. import handlers.targethandlers.TargetCorpsePlayer;
  249. import handlers.targethandlers.TargetEnemySummon;
  250. import handlers.targethandlers.TargetFlagPole;
  251. import handlers.targethandlers.TargetFrontArea;
  252. import handlers.targethandlers.TargetFrontAura;
  253. import handlers.targethandlers.TargetGround;
  254. import handlers.targethandlers.TargetHoly;
  255. import handlers.targethandlers.TargetOne;
  256. import handlers.targethandlers.TargetOwnerPet;
  257. import handlers.targethandlers.TargetParty;
  258. import handlers.targethandlers.TargetPartyClan;
  259. import handlers.targethandlers.TargetPartyMember;
  260. import handlers.targethandlers.TargetPartyNotMe;
  261. import handlers.targethandlers.TargetPartyOther;
  262. import handlers.targethandlers.TargetPet;
  263. import handlers.targethandlers.TargetSelf;
  264. import handlers.targethandlers.TargetSummon;
  265. import handlers.targethandlers.TargetUndead;
  266. import handlers.targethandlers.TargetUnlockable;
  267. import handlers.usercommandhandlers.Birthday;
  268. import handlers.usercommandhandlers.ChannelDelete;
  269. import handlers.usercommandhandlers.ChannelLeave;
  270. import handlers.usercommandhandlers.ChannelListUpdate;
  271. import handlers.usercommandhandlers.ClanPenalty;
  272. import handlers.usercommandhandlers.ClanWarsList;
  273. import handlers.usercommandhandlers.DisMount;
  274. import handlers.usercommandhandlers.Escape;
  275. import handlers.usercommandhandlers.InstanceZone;
  276. import handlers.usercommandhandlers.Loc;
  277. import handlers.usercommandhandlers.Mount;
  278. import handlers.usercommandhandlers.OlympiadStat;
  279. import handlers.usercommandhandlers.PartyInfo;
  280. import handlers.usercommandhandlers.Time;
  281. import handlers.voicedcommandhandlers.Banking;
  282. import handlers.voicedcommandhandlers.ChangePassword;
  283. import handlers.voicedcommandhandlers.ChatAdmin;
  284. import handlers.voicedcommandhandlers.Debug;
  285. import handlers.voicedcommandhandlers.Hellbound;
  286. import handlers.voicedcommandhandlers.Lang;
  287. import handlers.voicedcommandhandlers.TvTVoicedInfo;
  288. import handlers.voicedcommandhandlers.Wedding;
  289. import handlers.voicedcommandhandlers.stats;
  290. import java.util.logging.Level;
  291. import java.util.logging.Logger;
  292. import com.l2jserver.Config;
  293. import com.l2jserver.gameserver.handler.ActionHandler;
  294. import com.l2jserver.gameserver.handler.AdminCommandHandler;
  295. import com.l2jserver.gameserver.handler.BypassHandler;
  296. import com.l2jserver.gameserver.handler.ChatHandler;
  297. import com.l2jserver.gameserver.handler.ItemHandler;
  298. import com.l2jserver.gameserver.handler.SkillHandler;
  299. import com.l2jserver.gameserver.handler.TargetHandler;
  300. import com.l2jserver.gameserver.handler.UserCommandHandler;
  301. import com.l2jserver.gameserver.handler.VoicedCommandHandler;
  302. /**
  303. * @author nBd
  304. */
  305. public class MasterHandler
  306. {
  307. private static Logger _log = Logger.getLogger(MasterHandler.class.getName());
  308. private static final ActionHandler ACTION = ActionHandler.getInstance();
  309. private static final AdminCommandHandler ADMIN = AdminCommandHandler.getInstance();
  310. private static final BypassHandler BYPASS = BypassHandler.getInstance();
  311. private static final ChatHandler CHAT = ChatHandler.getInstance();
  312. private static final ItemHandler ITEM = ItemHandler.getInstance();
  313. private static final SkillHandler SKILL = SkillHandler.getInstance();
  314. private static final UserCommandHandler USER = UserCommandHandler.getInstance();
  315. private static final VoicedCommandHandler VOICE = VoicedCommandHandler.getInstance();
  316. private static final TargetHandler TARGET = TargetHandler.getInstance();
  317. private static void loadActionHandlers()
  318. {
  319. ACTION.registerActionHandler(new L2ArtefactInstanceAction());
  320. ACTION.registerActionHandler(new L2DecoyAction());
  321. ACTION.registerActionHandler(new L2DoorInstanceAction());
  322. ACTION.registerActionHandler(new L2ItemInstanceAction());
  323. ACTION.registerActionHandler(new L2NpcAction());
  324. ACTION.registerActionHandler(new L2PcInstanceAction());
  325. ACTION.registerActionHandler(new L2PetInstanceAction());
  326. ACTION.registerActionHandler(new L2StaticObjectInstanceAction());
  327. ACTION.registerActionHandler(new L2SummonAction());
  328. ACTION.registerActionHandler(new L2TrapAction());
  329. _log.log(Level.INFO, "Loaded " + ACTION.size() + " ActionHandlers");
  330. }
  331. private static void loadActionShiftHandlers()
  332. {
  333. ACTION.registerActionShiftHandler(new L2DoorInstanceActionShift());
  334. ACTION.registerActionShiftHandler(new L2ItemInstanceActionShift());
  335. ACTION.registerActionShiftHandler(new L2NpcActionShift());
  336. ACTION.registerActionShiftHandler(new L2PcInstanceActionShift());
  337. ACTION.registerActionShiftHandler(new L2StaticObjectInstanceActionShift());
  338. ACTION.registerActionShiftHandler(new L2SummonActionShift());
  339. _log.log(Level.INFO, "Loaded " + ACTION.sizeShift() + " ActionShiftHandlers");
  340. }
  341. private static void loadAdminHandlers()
  342. {
  343. ADMIN.registerAdminCommandHandler(new AdminAdmin());
  344. ADMIN.registerAdminCommandHandler(new AdminAnnouncements());
  345. ADMIN.registerAdminCommandHandler(new AdminBan());
  346. ADMIN.registerAdminCommandHandler(new AdminBBS());
  347. ADMIN.registerAdminCommandHandler(new AdminBuffs());
  348. ADMIN.registerAdminCommandHandler(new AdminCache());
  349. ADMIN.registerAdminCommandHandler(new AdminCamera());
  350. ADMIN.registerAdminCommandHandler(new AdminChangeAccessLevel());
  351. ADMIN.registerAdminCommandHandler(new AdminCHSiege());
  352. ADMIN.registerAdminCommandHandler(new AdminClan());
  353. ADMIN.registerAdminCommandHandler(new AdminCreateItem());
  354. ADMIN.registerAdminCommandHandler(new AdminCursedWeapons());
  355. ADMIN.registerAdminCommandHandler(new AdminDebug());
  356. ADMIN.registerAdminCommandHandler(new AdminDelete());
  357. ADMIN.registerAdminCommandHandler(new AdminDisconnect());
  358. ADMIN.registerAdminCommandHandler(new AdminDoorControl());
  359. ADMIN.registerAdminCommandHandler(new AdminEditChar());
  360. ADMIN.registerAdminCommandHandler(new AdminEditNpc());
  361. ADMIN.registerAdminCommandHandler(new AdminEffects());
  362. ADMIN.registerAdminCommandHandler(new AdminElement());
  363. ADMIN.registerAdminCommandHandler(new AdminEnchant());
  364. ADMIN.registerAdminCommandHandler(new AdminEventEngine());
  365. ADMIN.registerAdminCommandHandler(new AdminEvents());
  366. ADMIN.registerAdminCommandHandler(new AdminExpSp());
  367. ADMIN.registerAdminCommandHandler(new AdminFightCalculator());
  368. ADMIN.registerAdminCommandHandler(new AdminFortSiege());
  369. ADMIN.registerAdminCommandHandler(new AdminGeodata());
  370. ADMIN.registerAdminCommandHandler(new AdminGeoEditor());
  371. ADMIN.registerAdminCommandHandler(new AdminGm());
  372. ADMIN.registerAdminCommandHandler(new AdminGmChat());
  373. ADMIN.registerAdminCommandHandler(new AdminGraciaSeeds());
  374. ADMIN.registerAdminCommandHandler(new AdminHeal());
  375. ADMIN.registerAdminCommandHandler(new AdminHellbound());
  376. ADMIN.registerAdminCommandHandler(new AdminHelpPage());
  377. ADMIN.registerAdminCommandHandler(new AdminInstance());
  378. ADMIN.registerAdminCommandHandler(new AdminInstanceZone());
  379. ADMIN.registerAdminCommandHandler(new AdminInvul());
  380. ADMIN.registerAdminCommandHandler(new AdminKick());
  381. ADMIN.registerAdminCommandHandler(new AdminKill());
  382. ADMIN.registerAdminCommandHandler(new AdminLevel());
  383. ADMIN.registerAdminCommandHandler(new AdminLogin());
  384. ADMIN.registerAdminCommandHandler(new AdminMammon());
  385. ADMIN.registerAdminCommandHandler(new AdminManor());
  386. ADMIN.registerAdminCommandHandler(new AdminMenu());
  387. ADMIN.registerAdminCommandHandler(new AdminMessages());
  388. ADMIN.registerAdminCommandHandler(new AdminMobGroup());
  389. ADMIN.registerAdminCommandHandler(new AdminMonsterRace());
  390. ADMIN.registerAdminCommandHandler(new AdminPathNode());
  391. ADMIN.registerAdminCommandHandler(new AdminPetition());
  392. ADMIN.registerAdminCommandHandler(new AdminPForge());
  393. ADMIN.registerAdminCommandHandler(new AdminPledge());
  394. ADMIN.registerAdminCommandHandler(new AdminPolymorph());
  395. ADMIN.registerAdminCommandHandler(new AdminQuest());
  396. ADMIN.registerAdminCommandHandler(new AdminRepairChar());
  397. ADMIN.registerAdminCommandHandler(new AdminRes());
  398. ADMIN.registerAdminCommandHandler(new AdminRide());
  399. ADMIN.registerAdminCommandHandler(new AdminShop());
  400. ADMIN.registerAdminCommandHandler(new AdminShowQuests());
  401. ADMIN.registerAdminCommandHandler(new AdminShutdown());
  402. ADMIN.registerAdminCommandHandler(new AdminSiege());
  403. ADMIN.registerAdminCommandHandler(new AdminSkill());
  404. ADMIN.registerAdminCommandHandler(new AdminSpawn());
  405. ADMIN.registerAdminCommandHandler(new AdminSummon());
  406. ADMIN.registerAdminCommandHandler(new AdminTarget());
  407. ADMIN.registerAdminCommandHandler(new AdminTeleport());
  408. ADMIN.registerAdminCommandHandler(new AdminTerritoryWar());
  409. ADMIN.registerAdminCommandHandler(new AdminTest());
  410. ADMIN.registerAdminCommandHandler(new AdminTvTEvent());
  411. ADMIN.registerAdminCommandHandler(new AdminUnblockIp());
  412. ADMIN.registerAdminCommandHandler(new AdminVitality());
  413. ADMIN.registerAdminCommandHandler(new AdminZone());
  414. _log.log(Level.INFO, "Loaded " + ADMIN.size() + " AdminCommandHandlers");
  415. }
  416. private static void loadBypassHandlers()
  417. {
  418. BYPASS.registerBypassHandler(new Augment());
  419. BYPASS.registerBypassHandler(new BloodAlliance());
  420. BYPASS.registerBypassHandler(new Buy());
  421. BYPASS.registerBypassHandler(new BuyShadowItem());
  422. BYPASS.registerBypassHandler(new ChatLink());
  423. BYPASS.registerBypassHandler(new ClanWarehouse());
  424. BYPASS.registerBypassHandler(new CPRecovery());
  425. BYPASS.registerBypassHandler(new DrawHenna());
  426. BYPASS.registerBypassHandler(new EventEngine());
  427. BYPASS.registerBypassHandler(new Festival());
  428. BYPASS.registerBypassHandler(new FortSiege());
  429. BYPASS.registerBypassHandler(new Freight());
  430. BYPASS.registerBypassHandler(new ItemAuctionLink());
  431. BYPASS.registerBypassHandler(new Link());
  432. BYPASS.registerBypassHandler(new Loto());
  433. BYPASS.registerBypassHandler(new ManorManager());
  434. BYPASS.registerBypassHandler(new Multisell());
  435. BYPASS.registerBypassHandler(new Observation());
  436. BYPASS.registerBypassHandler(new OlympiadObservation());
  437. BYPASS.registerBypassHandler(new OlympiadManagerLink());
  438. BYPASS.registerBypassHandler(new QuestLink());
  439. BYPASS.registerBypassHandler(new PlayerHelp());
  440. BYPASS.registerBypassHandler(new PrivateWarehouse());
  441. BYPASS.registerBypassHandler(new QuestList());
  442. BYPASS.registerBypassHandler(new ReceivePremium());
  443. BYPASS.registerBypassHandler(new ReleaseAttribute());
  444. BYPASS.registerBypassHandler(new RemoveDeathPenalty());
  445. BYPASS.registerBypassHandler(new RemoveHennaList());
  446. BYPASS.registerBypassHandler(new RentPet());
  447. BYPASS.registerBypassHandler(new RideWyvern());
  448. BYPASS.registerBypassHandler(new Rift());
  449. BYPASS.registerBypassHandler(new SkillList());
  450. BYPASS.registerBypassHandler(new SupportBlessing());
  451. BYPASS.registerBypassHandler(new SupportMagic());
  452. BYPASS.registerBypassHandler(new TerritoryStatus());
  453. BYPASS.registerBypassHandler(new TerritoryWar());
  454. BYPASS.registerBypassHandler(new VoiceCommand());
  455. BYPASS.registerBypassHandler(new Wear());
  456. _log.log(Level.INFO, "Loaded " + BYPASS.size() + " BypassHandlers");
  457. }
  458. private static void loadChatHandlers()
  459. {
  460. CHAT.registerChatHandler(new ChatAll());
  461. CHAT.registerChatHandler(new ChatAlliance());
  462. CHAT.registerChatHandler(new ChatBattlefield());
  463. CHAT.registerChatHandler(new ChatClan());
  464. CHAT.registerChatHandler(new ChatHeroVoice());
  465. CHAT.registerChatHandler(new ChatParty());
  466. CHAT.registerChatHandler(new ChatPartyMatchRoom());
  467. CHAT.registerChatHandler(new ChatPartyRoomAll());
  468. CHAT.registerChatHandler(new ChatPartyRoomCommander());
  469. CHAT.registerChatHandler(new ChatPetition());
  470. CHAT.registerChatHandler(new ChatShout());
  471. CHAT.registerChatHandler(new ChatTell());
  472. CHAT.registerChatHandler(new ChatTrade());
  473. _log.log(Level.INFO, "Loaded " + CHAT.size() + " ChatHandlers");
  474. }
  475. private static void loadItemHandlers()
  476. {
  477. ITEM.registerItemHandler(new ScrollOfResurrection());
  478. ITEM.registerItemHandler(new SoulShots());
  479. ITEM.registerItemHandler(new SpiritShot());
  480. ITEM.registerItemHandler(new BlessedSpiritShot());
  481. ITEM.registerItemHandler(new BeastSoulShot());
  482. ITEM.registerItemHandler(new BeastSpiritShot());
  483. ITEM.registerItemHandler(new PaganKeys());
  484. ITEM.registerItemHandler(new Maps());
  485. ITEM.registerItemHandler(new NicknameColor());
  486. ITEM.registerItemHandler(new Recipes());
  487. ITEM.registerItemHandler(new RollingDice());
  488. ITEM.registerItemHandler(new EnchantAttribute());
  489. ITEM.registerItemHandler(new EnchantScrolls());
  490. ITEM.registerItemHandler(new ExtractableItems());
  491. ITEM.registerItemHandler(new Book());
  492. ITEM.registerItemHandler(new SevenSignsRecord());
  493. ITEM.registerItemHandler(new ItemSkills());
  494. ITEM.registerItemHandler(new ItemSkillsTemplate());
  495. ITEM.registerItemHandler(new Seed());
  496. ITEM.registerItemHandler(new Harvester());
  497. ITEM.registerItemHandler(new MercTicket());
  498. ITEM.registerItemHandler(new FishShots());
  499. ITEM.registerItemHandler(new PetFood());
  500. ITEM.registerItemHandler(new SpecialXMas());
  501. ITEM.registerItemHandler(new SummonItems());
  502. ITEM.registerItemHandler(new BeastSpice());
  503. ITEM.registerItemHandler(new TeleportBookmark());
  504. ITEM.registerItemHandler(new Elixir());
  505. ITEM.registerItemHandler(new Disguise());
  506. ITEM.registerItemHandler(new ManaPotion());
  507. ITEM.registerItemHandler(new EnergyStarStone());
  508. ITEM.registerItemHandler(new EventItem());
  509. _log.log(Level.INFO, "Loaded " + ITEM.size() + " ItemHandlers");
  510. }
  511. private static void loadSkillHandlers()
  512. {
  513. SKILL.registerSkillHandler(new Blow());
  514. SKILL.registerSkillHandler(new Pdam());
  515. SKILL.registerSkillHandler(new Mdam());
  516. SKILL.registerSkillHandler(new CpDam());
  517. SKILL.registerSkillHandler(new CpDamPercent());
  518. SKILL.registerSkillHandler(new Manadam());
  519. SKILL.registerSkillHandler(new Heal());
  520. SKILL.registerSkillHandler(new HealPercent());
  521. SKILL.registerSkillHandler(new CombatPointHeal());
  522. SKILL.registerSkillHandler(new ManaHeal());
  523. SKILL.registerSkillHandler(new BalanceLife());
  524. SKILL.registerSkillHandler(new Charge());
  525. SKILL.registerSkillHandler(new Continuous());
  526. SKILL.registerSkillHandler(new Detection());
  527. SKILL.registerSkillHandler(new Resurrect());
  528. SKILL.registerSkillHandler(new ShiftTarget());
  529. SKILL.registerSkillHandler(new Spoil());
  530. SKILL.registerSkillHandler(new Sweep());
  531. SKILL.registerSkillHandler(new StrSiegeAssault());
  532. SKILL.registerSkillHandler(new SummonFriend());
  533. SKILL.registerSkillHandler(new Disablers());
  534. SKILL.registerSkillHandler(new Cancel());
  535. SKILL.registerSkillHandler(new ChainHeal());
  536. SKILL.registerSkillHandler(new StealBuffs());
  537. SKILL.registerSkillHandler(new BallistaBomb());
  538. SKILL.registerSkillHandler(new TakeCastle());
  539. SKILL.registerSkillHandler(new TakeFort());
  540. SKILL.registerSkillHandler(new Unlock());
  541. SKILL.registerSkillHandler(new Craft());
  542. SKILL.registerSkillHandler(new Fishing());
  543. SKILL.registerSkillHandler(new FishingSkill());
  544. SKILL.registerSkillHandler(new BeastSkills());
  545. SKILL.registerSkillHandler(new DeluxeKey());
  546. SKILL.registerSkillHandler(new Sow());
  547. SKILL.registerSkillHandler(new Soul());
  548. SKILL.registerSkillHandler(new Harvest());
  549. SKILL.registerSkillHandler(new GetPlayer());
  550. SKILL.registerSkillHandler(new TransformDispel());
  551. SKILL.registerSkillHandler(new Trap());
  552. SKILL.registerSkillHandler(new GiveSp());
  553. SKILL.registerSkillHandler(new GiveReco());
  554. SKILL.registerSkillHandler(new GiveVitality());
  555. SKILL.registerSkillHandler(new InstantJump());
  556. SKILL.registerSkillHandler(new Dummy());
  557. SKILL.registerSkillHandler(new Extractable());
  558. SKILL.registerSkillHandler(new RefuelAirShip());
  559. SKILL.registerSkillHandler(new NornilsPower());
  560. _log.log(Level.INFO, "Loaded " + SKILL.size() + " SkillHandlers");
  561. }
  562. private static void loadUserHandlers()
  563. {
  564. USER.registerUserCommandHandler(new ClanPenalty());
  565. USER.registerUserCommandHandler(new ClanWarsList());
  566. USER.registerUserCommandHandler(new DisMount());
  567. USER.registerUserCommandHandler(new Escape());
  568. USER.registerUserCommandHandler(new InstanceZone());
  569. USER.registerUserCommandHandler(new Loc());
  570. USER.registerUserCommandHandler(new Mount());
  571. USER.registerUserCommandHandler(new PartyInfo());
  572. USER.registerUserCommandHandler(new Time());
  573. USER.registerUserCommandHandler(new OlympiadStat());
  574. USER.registerUserCommandHandler(new ChannelLeave());
  575. USER.registerUserCommandHandler(new ChannelDelete());
  576. USER.registerUserCommandHandler(new ChannelListUpdate());
  577. USER.registerUserCommandHandler(new Birthday());
  578. _log.log(Level.INFO, "Loaded " + USER.size() + " UserHandlers");
  579. }
  580. private static void loadVoicedHandlers()
  581. {
  582. VOICE.registerVoicedCommandHandler(new stats());
  583. if (Config.L2JMOD_ALLOW_WEDDING)
  584. VOICE.registerVoicedCommandHandler(new Wedding());
  585. if (Config.BANKING_SYSTEM_ENABLED)
  586. VOICE.registerVoicedCommandHandler(new Banking());
  587. if (Config.TVT_ALLOW_VOICED_COMMAND)
  588. VOICE.registerVoicedCommandHandler(new TvTVoicedInfo());
  589. if (Config.L2JMOD_CHAT_ADMIN)
  590. VOICE.registerVoicedCommandHandler(new ChatAdmin());
  591. if (Config.L2JMOD_MULTILANG_ENABLE && Config.L2JMOD_MULTILANG_VOICED_ALLOW)
  592. VOICE.registerVoicedCommandHandler(new Lang());
  593. if (Config.L2JMOD_DEBUG_VOICE_COMMAND)
  594. VOICE.registerVoicedCommandHandler(new Debug());
  595. if (Config.L2JMOD_ALLOW_CHANGE_PASSWORD)
  596. VOICE.registerVoicedCommandHandler(new ChangePassword());
  597. if (Config.L2JMOD_HELLBOUND_STATUS)
  598. VOICE.registerVoicedCommandHandler(new Hellbound());
  599. _log.log(Level.INFO, "Loaded " + VOICE.size() + " VoicedHandlers");
  600. }
  601. private static void loadTargetHandlers()
  602. {
  603. TARGET.registerSkillTargetType(new TargetAlly());
  604. TARGET.registerSkillTargetType(new TargetArea());
  605. TARGET.registerSkillTargetType(new TargetAreaCorpseMob());
  606. TARGET.registerSkillTargetType(new TargetAreaSummon());
  607. TARGET.registerSkillTargetType(new TargetAreaUndead());
  608. TARGET.registerSkillTargetType(new TargetAura());
  609. TARGET.registerSkillTargetType(new TargetAuraCorpseMob());
  610. TARGET.registerSkillTargetType(new TargetBehindArea());
  611. TARGET.registerSkillTargetType(new TargetBehindAura());
  612. TARGET.registerSkillTargetType(new TargetClan());
  613. TARGET.registerSkillTargetType(new TargetClanMember());
  614. TARGET.registerSkillTargetType(new TargetCorpseAlly());
  615. TARGET.registerSkillTargetType(new TargetCorpseClan());
  616. TARGET.registerSkillTargetType(new TargetCorpseMob());
  617. TARGET.registerSkillTargetType(new TargetCorpsePet());
  618. TARGET.registerSkillTargetType(new TargetCorpsePlayer());
  619. TARGET.registerSkillTargetType(new TargetEnemySummon());
  620. TARGET.registerSkillTargetType(new TargetFlagPole());
  621. TARGET.registerSkillTargetType(new TargetFrontArea());
  622. TARGET.registerSkillTargetType(new TargetFrontAura());
  623. TARGET.registerSkillTargetType(new TargetGround());
  624. TARGET.registerSkillTargetType(new TargetHoly());
  625. TARGET.registerSkillTargetType(new TargetOne());
  626. TARGET.registerSkillTargetType(new TargetOwnerPet());
  627. TARGET.registerSkillTargetType(new TargetParty());
  628. TARGET.registerSkillTargetType(new TargetPartyClan());
  629. TARGET.registerSkillTargetType(new TargetPartyMember());
  630. TARGET.registerSkillTargetType(new TargetPartyNotMe());
  631. TARGET.registerSkillTargetType(new TargetPartyOther());
  632. TARGET.registerSkillTargetType(new TargetPet());
  633. TARGET.registerSkillTargetType(new TargetSelf());
  634. TARGET.registerSkillTargetType(new TargetSummon());
  635. TARGET.registerSkillTargetType(new TargetUndead());
  636. TARGET.registerSkillTargetType(new TargetUnlockable());
  637. _log.log(Level.INFO, "Loaded " + TARGET.size() + " Target Handlers");
  638. }
  639. /**
  640. * @param args
  641. */
  642. public static void main(String[] args)
  643. {
  644. _log.log(Level.INFO, "Loading Handlers...");
  645. loadActionHandlers();
  646. loadActionShiftHandlers();
  647. loadAdminHandlers();
  648. loadBypassHandlers();
  649. loadChatHandlers();
  650. loadItemHandlers();
  651. loadSkillHandlers();
  652. loadUserHandlers();
  653. loadVoicedHandlers();
  654. loadTargetHandlers();
  655. _log.log(Level.INFO, "Handlers Loaded...");
  656. }
  657. }