l2j_mobius/trunk/dist/game/data/scripts/handlers/EffectMasterHandler.java
2015-01-29 05:18:04 +00:00

224 lines
5.3 KiB
Java

/*
* Copyright (C) 2004-2015 L2J DataPack
*
* This file is part of L2J DataPack.
*
* L2J DataPack 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.
*
* L2J DataPack 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 handlers;
import handlers.effecthandlers.*;
import java.util.logging.Level;
import java.util.logging.Logger;
import com.l2jserver.gameserver.handler.EffectHandler;
import com.l2jserver.gameserver.model.effects.AbstractEffect;
/**
* Effect Master handler.
* @author BiggBoss, Zoey76
*/
public final class EffectMasterHandler
{
private static final Logger _log = Logger.getLogger(EffectMasterHandler.class.getName());
private static final Class<?>[] EFFECTS =
{
AddHate.class,
AttackTrait.class,
Backstab.class,
Betray.class,
Blink.class,
BlockAction.class,
BlockChat.class,
BlockParty.class,
BlockBuffSlot.class,
BlockResurrection.class,
Bluff.class,
Buff.class,
CallParty.class,
CallPc.class,
CallSkill.class,
ChameleonRest.class,
ChangeFace.class,
ChangeFishingMastery.class,
ChangeHairColor.class,
ChangeHairStyle.class,
ClanGate.class,
ClassChange.class,
Confuse.class,
ConsumeBody.class,
ConvertItem.class,
CpDamPercent.class,
CpHeal.class,
CpHealOverTime.class,
CpHealPercent.class,
CrystalGradeModify.class,
CubicMastery.class,
DamOverTime.class,
DamOverTimePercent.class,
DeathLink.class,
Debuff.class,
DefenceTrait.class,
DeleteHate.class,
DeleteHateOfMe.class,
DetectHiddenObjects.class,
Detection.class,
Disarm.class,
DispelAll.class,
DispelByCategory.class,
DispelBySlot.class,
DispelBySlotProbability.class,
EnableCloak.class,
EnemyCharge.class,
EnergyAttack.class,
EnlargeAbnormalSlot.class,
Escape.class,
FakeDeath.class,
FatalBlow.class,
Fear.class,
Fishing.class,
Flag.class,
FocusEnergy.class,
FocusMaxEnergy.class,
FocusSouls.class,
GetAgro.class,
GiveRecommendation.class,
GiveSp.class,
Grow.class,
HairAccessorySet.class,
Harvesting.class,
HeadquarterCreate.class,
Heal.class,
HealOverTime.class,
HealPercent.class,
Hide.class,
HpByLevel.class,
HpCpHeal.class,
HpDrain.class,
ImmobileBuff.class,
ImmobilePetBuff.class,
Invincible.class,
KnockBack.class,
KnockDown.class,
Lethal.class,
Lucky.class,
MagicalAttack.class,
MagicalAttackByAbnormal.class,
MagicalAttackMp.class,
MagicalSoulAttack.class,
ManaDamOverTime.class,
ManaHeal.class,
ManaHealByLevel.class,
ManaHealOverTime.class,
ManaHealPercent.class,
MpConsumePerLevel.class,
Mute.class,
NoblesseBless.class,
OpenChest.class,
Unsummon.class,
OpenCommonRecipeBook.class,
OpenDoor.class,
OpenDwarfRecipeBook.class,
Paralyze.class,
Passive.class,
Petrification.class,
PhysicalAttack.class,
PhysicalAttackHpLink.class,
PhysicalAttackMute.class,
PhysicalMute.class,
PhysicalSoulAttack.class,
Pumping.class,
ProtectionBlessing.class,
RandomizeHate.class,
RebalanceHP.class,
Recovery.class,
Reeling.class,
RefuelAirship.class,
Relax.class,
ResistSkill.class,
Restoration.class,
RestorationRandom.class,
Resurrection.class,
ResurrectionSpecial.class,
Root.class,
ServitorShare.class,
SetSkill.class,
ShilensBreath.class,
SilentMove.class,
SkillTurning.class,
Sleep.class,
SoulBlow.class,
SoulEating.class,
Sow.class,
Spoil.class,
StaticDamage.class,
StealAbnormal.class,
Stun.class,
Summon.class,
SummonAgathion.class,
SummonCubic.class,
SummonNpc.class,
SummonPet.class,
SummonTrap.class,
Sweeper.class,
TakeCastle.class,
TakeCastleStart.class,
TakeFort.class,
TakeFortStart.class,
TalismanSlot.class,
TargetCancel.class,
TargetMe.class,
TargetMeProbability.class,
Teleport.class,
TeleportToTarget.class,
ThrowUp.class,
TransferDamage.class,
TransferHate.class,
Transformation.class,
TrapDetect.class,
TrapRemove.class,
TriggerSkillByAttack.class,
TriggerSkillByAvoid.class,
TriggerSkillByDamage.class,
TriggerSkillBySkill.class,
UnsummonAgathion.class,
VitalityPointUp.class,
};
@SuppressWarnings("unchecked")
public static void main(String[] args)
{
for (Class<?> c : EFFECTS)
{
if (c == null)
{
continue; // Disabled handler
}
EffectHandler.getInstance().registerHandler((Class<? extends AbstractEffect>) c);
}
// And lets try get size
try
{
_log.log(Level.INFO, EffectMasterHandler.class.getSimpleName() + ": Loaded " + EffectHandler.getInstance().size() + " effect handlers.");
}
catch (Exception e)
{
_log.log(Level.WARNING, "Failed invoking size method for handler: " + EffectMasterHandler.class.getSimpleName(), e);
}
}
}