Adjustments for previous commit.

This commit is contained in:
MobiusDevelopment
2019-03-15 18:53:49 +00:00
parent e02f179662
commit 859945e659
795 changed files with 1700 additions and 1114 deletions

View File

@@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -37,7 +38,7 @@ public final class AbnormalShield extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.setAbnormalShieldBlocks(_times); effected.setAbnormalShieldBlocks(_times);
} }

View File

@@ -26,6 +26,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageReceived; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageReceived;
import com.l2jmobius.gameserver.model.events.listeners.FunctionEventListener; import com.l2jmobius.gameserver.model.events.listeners.FunctionEventListener;
import com.l2jmobius.gameserver.model.events.returns.DamageReturn; import com.l2jmobius.gameserver.model.events.returns.DamageReturn;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -68,7 +69,7 @@ public class AbsorbDamage extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
_damageHolder.put(effected.getObjectId(), _damage); _damageHolder.put(effected.getObjectId(), _damage);
effected.addListener(new FunctionEventListener(effected, EventType.ON_CREATURE_DAMAGE_RECEIVED, (OnCreatureDamageReceived event) -> onDamageReceivedEvent(event), this)); effected.addListener(new FunctionEventListener(effected, EventType.ON_CREATURE_DAMAGE_RECEIVED, (OnCreatureDamageReceived event) -> onDamageReceivedEvent(event), this));

View File

@@ -26,6 +26,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.ListenersContainer; import com.l2jmobius.gameserver.model.events.ListenersContainer;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureHpChange; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureHpChange;
import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener; import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
@@ -44,7 +45,7 @@ abstract class AbstractConditionalHpEffect extends AbstractStatEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
// Augmentation option // Augmentation option
if (skill == null) if (skill == null)

View File

@@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.stat.CharStat; import com.l2jmobius.gameserver.model.actor.stat.CharStat;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.TraitType; import com.l2jmobius.gameserver.model.stats.TraitType;
@@ -69,7 +70,7 @@ public final class AttackTrait extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
final CharStat charStat = effected.getStat(); final CharStat charStat = effected.getStat();
synchronized (charStat.getAttackTraits()) synchronized (charStat.getAttackTraits())

View File

@@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -46,7 +47,7 @@ public final class Betray extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, effected.getActingPlayer()); effected.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, effected.getActingPlayer());
} }

View File

@@ -23,6 +23,7 @@ import java.util.stream.Collectors;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.AbnormalType; import com.l2jmobius.gameserver.model.skills.AbnormalType;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
@@ -40,7 +41,7 @@ public final class BlockAbnormalSlot extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getEffectList().addBlockedAbnormalTypes(_blockAbnormalSlots); effected.getEffectList().addBlockedAbnormalTypes(_blockAbnormalSlots);
} }

View File

@@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.instancemanager.PunishmentManager;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.punishment.PunishmentAffect; import com.l2jmobius.gameserver.model.punishment.PunishmentAffect;
import com.l2jmobius.gameserver.model.punishment.PunishmentTask; import com.l2jmobius.gameserver.model.punishment.PunishmentTask;
import com.l2jmobius.gameserver.model.punishment.PunishmentType; import com.l2jmobius.gameserver.model.punishment.PunishmentType;
@@ -59,7 +60,7 @@ public final class BlockAction extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (_blockedActions.contains(BotReportTable.PARTY_ACTION_BLOCK_ID)) if (_blockedActions.contains(BotReportTable.PARTY_ACTION_BLOCK_ID))
{ {

View File

@@ -28,6 +28,7 @@ import com.l2jmobius.gameserver.model.actor.L2Summon;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -57,7 +58,7 @@ public final class BlockActions extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
_allowedSkills.stream().forEach(effected::addBlockActionsAllowedSkill); _allowedSkills.stream().forEach(effected::addBlockActionsAllowedSkill);
effected.startParalyze(); effected.startParalyze();

View File

@@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.punishment.PunishmentAffect; import com.l2jmobius.gameserver.model.punishment.PunishmentAffect;
import com.l2jmobius.gameserver.model.punishment.PunishmentTask; import com.l2jmobius.gameserver.model.punishment.PunishmentTask;
import com.l2jmobius.gameserver.model.punishment.PunishmentType; import com.l2jmobius.gameserver.model.punishment.PunishmentType;
@@ -49,7 +50,7 @@ public final class BlockChat extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
PunishmentManager.getInstance().startPunishment(new PunishmentTask(0, effected.getObjectId(), PunishmentAffect.CHARACTER, PunishmentType.CHAT_BAN, 0, "Chat banned bot report", "system", true)); PunishmentManager.getInstance().startPunishment(new PunishmentTask(0, effected.getObjectId(), PunishmentAffect.CHARACTER, PunishmentType.CHAT_BAN, 0, "Chat banned bot report", "system", true));
} }

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -32,7 +33,7 @@ public final class BlockMove extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.setIsImmobilized(true); effected.setIsImmobilized(true);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.instancemanager.PunishmentManager;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.punishment.PunishmentAffect; import com.l2jmobius.gameserver.model.punishment.PunishmentAffect;
import com.l2jmobius.gameserver.model.punishment.PunishmentTask; import com.l2jmobius.gameserver.model.punishment.PunishmentTask;
import com.l2jmobius.gameserver.model.punishment.PunishmentType; import com.l2jmobius.gameserver.model.punishment.PunishmentType;
@@ -42,7 +43,7 @@ public final class BlockParty extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
PunishmentManager.getInstance().startPunishment(new PunishmentTask(0, effected.getObjectId(), PunishmentAffect.CHARACTER, PunishmentType.PARTY_BAN, 0, "Party banned by bot report", "system", true)); PunishmentManager.getInstance().startPunishment(new PunishmentTask(0, effected.getObjectId(), PunishmentAffect.CHARACTER, PunishmentType.PARTY_BAN, 0, "Party banned by bot report", "system", true));
} }

View File

@@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureSkillUse; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureSkillUse;
import com.l2jmobius.gameserver.model.events.listeners.FunctionEventListener; import com.l2jmobius.gameserver.model.events.listeners.FunctionEventListener;
import com.l2jmobius.gameserver.model.events.returns.TerminateReturn; import com.l2jmobius.gameserver.model.events.returns.TerminateReturn;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -50,7 +51,7 @@ public final class BlockSkill extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if ((_magicTypes == null) || (_magicTypes.length == 0)) if ((_magicTypes == null) || (_magicTypes.length == 0))
{ {

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.L2World;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -32,7 +33,7 @@ public class BlockTarget extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.setTargetable(false); effected.setTargetable(false);
L2World.getInstance().forEachVisibleObject(effected, L2Character.class, target -> L2World.getInstance().forEachVisibleObject(effected, L2Character.class, target ->

View File

@@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.holders.SkillHolder; import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.SkillCaster; import com.l2jmobius.gameserver.model.skills.SkillCaster;
@@ -41,7 +42,7 @@ public final class CallSkillOnActionTime extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getEffectList().stopEffects(Collections.singleton(_skill.getSkill().getAbnormalType())); effected.getEffectList().stopEffects(Collections.singleton(_skill.getSkill().getAbnormalType()));
effected.getEffectList().addBlockedAbnormalTypes(Collections.singleton(_skill.getSkill().getAbnormalType())); effected.getEffectList().addBlockedAbnormalTypes(Collections.singleton(_skill.getSkill().getAbnormalType()));
@@ -54,7 +55,7 @@ public final class CallSkillOnActionTime extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effector.isDead()) if (effector.isDead())
{ {

View File

@@ -22,6 +22,7 @@ import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.network.SystemMessageId; import com.l2jmobius.gameserver.network.SystemMessageId;
@@ -51,7 +52,7 @@ public final class ChameleonRest extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isDead()) if (effected.isDead())
{ {
@@ -78,7 +79,7 @@ public final class ChameleonRest extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isPlayer()) if (effected.isPlayer())
{ {

View File

@@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.holders.TemplateChanceHolder; import com.l2jmobius.gameserver.model.holders.TemplateChanceHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -49,7 +50,7 @@ public final class ChangeBody extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
final int chance = Rnd.get(100); final int chance = Rnd.get(100);
//@formatter:off //@formatter:off

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.enums.Position;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
import com.l2jmobius.gameserver.util.MathUtil; import com.l2jmobius.gameserver.util.MathUtil;
@@ -39,7 +40,7 @@ public class CriticalDamagePosition extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getStat().mergePositionTypeValue(Stats.CRITICAL_DAMAGE, _position, (_amount / 100) + 1, MathUtil::mul); effected.getStat().mergePositionTypeValue(Stats.CRITICAL_DAMAGE, _position, (_amount / 100) + 1, MathUtil::mul);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.enums.Position;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
import com.l2jmobius.gameserver.util.MathUtil; import com.l2jmobius.gameserver.util.MathUtil;
@@ -39,7 +40,7 @@ public class CriticalRatePositionBonus extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getStat().mergePositionTypeValue(Stats.CRITICAL_RATE, _position, (_amount / 100) + 1, MathUtil::mul); effected.getStat().mergePositionTypeValue(Stats.CRITICAL_RATE, _position, (_amount / 100) + 1, MathUtil::mul);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -42,7 +43,7 @@ public final class CrystalGradeModify extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getActingPlayer().setExpertisePenaltyBonus(_grade); effected.getActingPlayer().setExpertisePenaltyBonus(_grade);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Formulas; import com.l2jmobius.gameserver.model.stats.Formulas;
import com.l2jmobius.gameserver.network.SystemMessageId; import com.l2jmobius.gameserver.network.SystemMessageId;
@@ -40,7 +41,7 @@ public final class DamOverTime extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (!skill.isToggle() && skill.isMagic()) if (!skill.isToggle() && skill.isMagic())
{ {
@@ -67,7 +68,7 @@ public final class DamOverTime extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isDead()) if (effected.isDead())
{ {

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.network.SystemMessageId; import com.l2jmobius.gameserver.network.SystemMessageId;
@@ -46,7 +47,7 @@ public final class DamOverTimePercent extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isDead()) if (effected.isDead())
{ {

View File

@@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.stat.CharStat; import com.l2jmobius.gameserver.model.actor.stat.CharStat;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.TraitType; import com.l2jmobius.gameserver.model.stats.TraitType;
@@ -98,7 +99,7 @@ public final class DefenceTrait extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
final CharStat charStat = effected.getStat(); final CharStat charStat = effected.getStat();
synchronized (charStat.getDefenceTraits()) synchronized (charStat.getDefenceTraits())

View File

@@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -34,7 +35,7 @@ public final class DisableTargeting extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.setTarget(null); effected.setTarget(null);
effected.abortAttack(); effected.abortAttack();

View File

@@ -26,6 +26,7 @@ import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.holders.SkillHolder; import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -56,7 +57,7 @@ public final class DoubleCast extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isPlayer()) if (effected.isPlayer())
{ {
@@ -70,7 +71,7 @@ public final class DoubleCast extends AbstractEffect
} }
} }
} }
super.onStart(effector, effected, skill); super.onStart(effector, effected, skill, item);
} }
@Override @Override

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -38,7 +39,7 @@ public final class EnableCloak extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getActingPlayer().getStat().setCloakSlotStatus(true); effected.getActingPlayer().getStat().setCloakSlotStatus(true);
} }

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -41,7 +42,7 @@ public final class EnlargeAbnormalSlot extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getStat().setMaxBuffCount(effected.getStat().getMaxBuffCount() + _slots); effected.getStat().setMaxBuffCount(effected.getStat().getMaxBuffCount() + _slots);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.network.SystemMessageId; import com.l2jmobius.gameserver.network.SystemMessageId;
import com.l2jmobius.gameserver.network.serverpackets.ChangeWaitType; import com.l2jmobius.gameserver.network.serverpackets.ChangeWaitType;
@@ -46,7 +47,7 @@ public final class FakeDeath extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isDead()) if (effected.isDead())
{ {
@@ -81,7 +82,7 @@ public final class FakeDeath extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.startFakeDeath(); effected.startFakeDeath();
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.enums.StatModifierType;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
@@ -38,7 +39,7 @@ public class FatalBlowRate extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
switch (_mode) switch (_mode)
{ {

View File

@@ -28,6 +28,7 @@ import com.l2jmobius.gameserver.model.actor.instance.L2FortCommanderInstance;
import com.l2jmobius.gameserver.model.actor.instance.L2SiegeFlagInstance; import com.l2jmobius.gameserver.model.actor.instance.L2SiegeFlagInstance;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.util.Util; import com.l2jmobius.gameserver.util.Util;
@@ -66,14 +67,14 @@ public final class Fear extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
fearAction(null, effected); fearAction(null, effected);
return false; return false;
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getAI().notifyEvent(CtrlEvent.EVT_AFRAID); effected.getAI().notifyEvent(CtrlEvent.EVT_AFRAID);
fearAction(effector, effected); fearAction(effector, effected);

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -38,7 +39,7 @@ public final class Flag extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.updatePvPFlag(1); effected.updatePvPFlag(1);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
import com.l2jmobius.gameserver.network.SystemMessageId; import com.l2jmobius.gameserver.network.SystemMessageId;
@@ -45,7 +46,7 @@ public class GetMomentum extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isPlayer()) if (effected.isPlayer())
{ {

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.L2Npc; import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -32,7 +33,7 @@ public final class Grow extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isNpc()) if (effected.isNpc())
{ {

View File

@@ -22,6 +22,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -35,7 +36,7 @@ public final class Hide extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isPlayer()) if (effected.isPlayer())
{ {

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.GameTimeController; import com.l2jmobius.gameserver.GameTimeController;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
@@ -33,7 +34,7 @@ public class HitAtNight extends AbstractStatEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
GameTimeController.getInstance().addShadowSenseCharacter(effected); GameTimeController.getInstance().addShadowSenseCharacter(effected);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Formulas; import com.l2jmobius.gameserver.model.stats.Formulas;
@@ -40,7 +41,7 @@ public final class HpToOwner extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (!skill.isToggle() && skill.isMagic()) if (!skill.isToggle() && skill.isMagic())
{ {
@@ -61,7 +62,7 @@ public final class HpToOwner extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isDead()) if (effected.isDead())
{ {

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.L2Summon; import com.l2jmobius.gameserver.model.actor.L2Summon;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -39,7 +40,7 @@ public final class ImmobilePetBuff extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isSummon() && effector.isPlayer() && (((L2Summon) effected).getOwner() == effector)) if (effected.isSummon() && effector.isPlayer() && (((L2Summon) effected).getOwner() == effector))
{ {

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.util.MathUtil; import com.l2jmobius.gameserver.util.MathUtil;
@@ -37,7 +38,7 @@ public class MagicMpCost extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getStat().mergeMpConsumeTypeValue(_magicType, (_amount / 100) + 1, MathUtil::mul); effected.getStat().mergeMpConsumeTypeValue(_magicType, (_amount / 100) + 1, MathUtil::mul);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Formulas; import com.l2jmobius.gameserver.model.stats.Formulas;
import com.l2jmobius.gameserver.network.SystemMessageId; import com.l2jmobius.gameserver.network.SystemMessageId;
@@ -47,7 +48,7 @@ public final class MagicalDamOverTime extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
final L2Character activeChar = effector; final L2Character activeChar = effector;
final L2Character target = effected; final L2Character target = effected;

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.network.SystemMessageId; import com.l2jmobius.gameserver.network.SystemMessageId;
@@ -36,7 +37,7 @@ public final class ManaDamOverTime extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isDead()) if (effected.isDead())
{ {

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.network.SystemMessageId; import com.l2jmobius.gameserver.network.SystemMessageId;
@@ -36,7 +37,7 @@ public final class MpConsumePerLevel extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isDead()) if (effected.isDead())
{ {

View File

@@ -22,6 +22,7 @@ import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -46,7 +47,7 @@ public final class Mute extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.abortCast(); effected.abortCast();
effected.getAI().notifyEvent(CtrlEvent.EVT_MUTED); effected.getAI().notifyEvent(CtrlEvent.EVT_MUTED);

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -39,7 +40,7 @@ public final class PhysicalAttackMute extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.startPhysicalAttackMuted(); effected.startPhysicalAttackMuted();
} }

View File

@@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -40,7 +41,7 @@ public final class PhysicalMute extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getAI().notifyEvent(CtrlEvent.EVT_MUTED); effected.getAI().notifyEvent(CtrlEvent.EVT_MUTED);
} }

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
@@ -32,7 +33,7 @@ public class PolearmSingleTarget extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isPlayer()) if (effected.isPlayer())
{ {

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.stat.PcStat; import com.l2jmobius.gameserver.model.actor.stat.PcStat;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.BuffInfo; import com.l2jmobius.gameserver.model.skills.BuffInfo;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.zone.ZoneId; import com.l2jmobius.gameserver.model.zone.ZoneId;
@@ -46,7 +47,7 @@ public final class RecoverVitalityInPeaceZone extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if ((effected == null) // if ((effected == null) //
|| effected.isDead() // || effected.isDead() //

View File

@@ -23,6 +23,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageReceived; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageReceived;
import com.l2jmobius.gameserver.model.events.listeners.FunctionEventListener; import com.l2jmobius.gameserver.model.events.listeners.FunctionEventListener;
import com.l2jmobius.gameserver.model.events.returns.DamageReturn; import com.l2jmobius.gameserver.model.events.returns.DamageReturn;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -57,7 +58,7 @@ public class ReduceDamage extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.addListener(new FunctionEventListener(effected, EventType.ON_CREATURE_DAMAGE_RECEIVED, (OnCreatureDamageReceived event) -> onDamageReceivedEvent(event), this)); effected.addListener(new FunctionEventListener(effected, EventType.ON_CREATURE_DAMAGE_RECEIVED, (OnCreatureDamageReceived event) -> onDamageReceivedEvent(event), this));
} }

View File

@@ -22,6 +22,7 @@ import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.network.SystemMessageId; import com.l2jmobius.gameserver.network.SystemMessageId;
@@ -51,7 +52,7 @@ public final class Relax extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isPlayer()) if (effected.isPlayer())
{ {
@@ -64,7 +65,7 @@ public final class Relax extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isDead()) if (effected.isDead())
{ {

View File

@@ -23,6 +23,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.holders.SkillHolder; import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -53,7 +54,7 @@ public final class ResistSkill extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
for (SkillHolder holder : _skills) for (SkillHolder holder : _skills)
{ {

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.util.MathUtil; import com.l2jmobius.gameserver.util.MathUtil;
@@ -37,7 +38,7 @@ public class Reuse extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getStat().mergeReuseTypeValue(_magicType, (_amount / 100) + 1, MathUtil::mul); effected.getStat().mergeReuseTypeValue(_magicType, (_amount / 100) + 1, MathUtil::mul);
} }

View File

@@ -22,6 +22,7 @@ import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -56,7 +57,7 @@ public final class Root extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.stopMove(null); effected.stopMove(null);
effected.getAI().notifyEvent(CtrlEvent.EVT_ROOTED); effected.getAI().notifyEvent(CtrlEvent.EVT_ROOTED);

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -37,7 +38,7 @@ public class SkillEvasion extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getStat().addSkillEvasionTypeValue(_magicType, _amount); effected.getStat().addSkillEvasionTypeValue(_magicType, _amount);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.commons.util.Rnd;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Formulas; import com.l2jmobius.gameserver.model.stats.Formulas;
@@ -39,7 +40,7 @@ public final class SkillTurningOverTime extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if ((effected == null) || (effected == effector) || effected.isRaid()) if ((effected == null) || (effected == effector) || effected.isRaid())
{ {
@@ -52,6 +53,6 @@ public final class SkillTurningOverTime extends AbstractEffect
effected.breakCast(); effected.breakCast();
} }
return super.onActionTime(effector, effected, skill); return super.onActionTime(effector, effected, skill, item);
} }
} }

View File

@@ -25,6 +25,7 @@ import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.events.EventType; import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.player.OnPlayableExpChanged; import com.l2jmobius.gameserver.model.events.impl.character.player.OnPlayableExpChanged;
import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener; import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
import com.l2jmobius.gameserver.network.SystemMessageId; import com.l2jmobius.gameserver.network.SystemMessageId;
@@ -46,7 +47,7 @@ public final class SoulEating extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isPlayer()) if (effected.isPlayer())
{ {

View File

@@ -22,6 +22,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageReceived; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageReceived;
import com.l2jmobius.gameserver.model.events.listeners.FunctionEventListener; import com.l2jmobius.gameserver.model.events.listeners.FunctionEventListener;
import com.l2jmobius.gameserver.model.events.returns.DamageReturn; import com.l2jmobius.gameserver.model.events.returns.DamageReturn;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
@@ -36,7 +37,7 @@ public class SphericBarrier extends AbstractStatAddEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.addListener(new FunctionEventListener(effected, EventType.ON_CREATURE_DAMAGE_RECEIVED, (OnCreatureDamageReceived event) -> onDamageReceivedEvent(event), this)); effected.addListener(new FunctionEventListener(effected, EventType.ON_CREATURE_DAMAGE_RECEIVED, (OnCreatureDamageReceived event) -> onDamageReceivedEvent(event), this));
} }

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.MoveType; import com.l2jmobius.gameserver.model.stats.MoveType;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
@@ -41,7 +42,7 @@ public class StatByMoveType extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getStat().mergeMoveTypeValue(_stat, _type, _value); effected.getStat().mergeMoveTypeValue(_stat, _type, _value);
} }
@@ -53,7 +54,7 @@ public class StatByMoveType extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
return skill.isPassive() || skill.isToggle(); return skill.isPassive() || skill.isToggle();
} }

View File

@@ -25,6 +25,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.holders.SkillHolder; import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.AbnormalType; import com.l2jmobius.gameserver.model.skills.AbnormalType;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.SkillCaster; import com.l2jmobius.gameserver.model.skills.SkillCaster;
@@ -77,7 +78,7 @@ public final class Synergy extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effector.isDead()) if (effector.isDead())
{ {

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -41,7 +42,7 @@ public final class TalismanSlot extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getActingPlayer().getStat().addTalismanSlots(_slots); effected.getActingPlayer().getStat().addTalismanSlots(_slots);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.L2Playable; import com.l2jmobius.gameserver.model.actor.L2Playable;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -42,7 +43,7 @@ public final class TargetMe extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isPlayable()) if (effected.isPlayable())
{ {

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.L2Playable; import com.l2jmobius.gameserver.model.actor.L2Playable;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
@@ -43,7 +44,7 @@ public final class TransferDamageToPlayer extends AbstractStatAddEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isPlayable() && effector.isPlayer()) if (effected.isPlayable() && effector.isPlayer())
{ {

View File

@@ -24,6 +24,7 @@ import com.l2jmobius.commons.util.Rnd;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -58,7 +59,7 @@ public final class Transformation extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (!_id.isEmpty()) if (!_id.isEmpty())
{ {

View File

@@ -29,6 +29,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageDealt; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageDealt;
import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener; import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener;
import com.l2jmobius.gameserver.model.holders.SkillHolder; import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.items.type.WeaponType; import com.l2jmobius.gameserver.model.items.type.WeaponType;
import com.l2jmobius.gameserver.model.skills.BuffInfo; import com.l2jmobius.gameserver.model.skills.BuffInfo;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
@@ -166,7 +167,7 @@ public final class TriggerSkillByAttack extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.addListener(new ConsumerEventListener(effected, EventType.ON_CREATURE_DAMAGE_DEALT, (OnCreatureDamageDealt event) -> onAttackEvent(event), this)); effected.addListener(new ConsumerEventListener(effected, EventType.ON_CREATURE_DAMAGE_DEALT, (OnCreatureDamageDealt event) -> onAttackEvent(event), this));
} }

View File

@@ -29,6 +29,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureAttackAvoid; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureAttackAvoid;
import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener; import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener;
import com.l2jmobius.gameserver.model.holders.SkillHolder; import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.SkillCaster; import com.l2jmobius.gameserver.model.skills.SkillCaster;
import com.l2jmobius.gameserver.model.skills.targets.TargetType; import com.l2jmobius.gameserver.model.skills.targets.TargetType;
@@ -96,7 +97,7 @@ public final class TriggerSkillByAvoid extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.addListener(new ConsumerEventListener(effected, EventType.ON_CREATURE_ATTACK_AVOID, (OnCreatureAttackAvoid event) -> onAvoidEvent(event), this)); effected.addListener(new ConsumerEventListener(effected, EventType.ON_CREATURE_ATTACK_AVOID, (OnCreatureAttackAvoid event) -> onAvoidEvent(event), this));
} }

View File

@@ -29,6 +29,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageReceived; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageReceived;
import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener; import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener;
import com.l2jmobius.gameserver.model.holders.SkillHolder; import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.SkillCaster; import com.l2jmobius.gameserver.model.skills.SkillCaster;
import com.l2jmobius.gameserver.model.skills.targets.TargetType; import com.l2jmobius.gameserver.model.skills.targets.TargetType;
@@ -104,7 +105,7 @@ public final class TriggerSkillByDamage extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.addListener(new ConsumerEventListener(effected, EventType.ON_CREATURE_DAMAGE_RECEIVED, (OnCreatureDamageReceived event) -> onDamageReceivedEvent(event), this)); effected.addListener(new ConsumerEventListener(effected, EventType.ON_CREATURE_DAMAGE_RECEIVED, (OnCreatureDamageReceived event) -> onDamageReceivedEvent(event), this));
} }

View File

@@ -29,6 +29,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageReceived; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageReceived;
import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener; import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener;
import com.l2jmobius.gameserver.model.holders.SkillHolder; import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.SkillCaster; import com.l2jmobius.gameserver.model.skills.SkillCaster;
import com.l2jmobius.gameserver.model.skills.targets.TargetType; import com.l2jmobius.gameserver.model.skills.targets.TargetType;
@@ -107,7 +108,7 @@ public final class TriggerSkillByDeathBlow extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.addListener(new ConsumerEventListener(effected, EventType.ON_CREATURE_DAMAGE_RECEIVED, (OnCreatureDamageReceived event) -> onDamageReceivedEvent(event), this)); effected.addListener(new ConsumerEventListener(effected, EventType.ON_CREATURE_DAMAGE_RECEIVED, (OnCreatureDamageReceived event) -> onDamageReceivedEvent(event), this));
} }

View File

@@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureKilled; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureKilled;
import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener; import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener;
import com.l2jmobius.gameserver.model.holders.SkillHolder; import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.SkillCaster; import com.l2jmobius.gameserver.model.skills.SkillCaster;
@@ -69,7 +70,7 @@ public final class TriggerSkillByKill extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.addListener(new ConsumerEventListener(effected, EventType.ON_CREATURE_KILLED, (OnCreatureKilled event) -> onCreatureKilled(event, effected), this)); effected.addListener(new ConsumerEventListener(effected, EventType.ON_CREATURE_KILLED, (OnCreatureKilled event) -> onCreatureKilled(event, effected), this));
} }

View File

@@ -30,6 +30,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureSkillFinishCast; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureSkillFinishCast;
import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener; import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener;
import com.l2jmobius.gameserver.model.holders.SkillHolder; import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.BuffInfo; import com.l2jmobius.gameserver.model.skills.BuffInfo;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.SkillCaster; import com.l2jmobius.gameserver.model.skills.SkillCaster;
@@ -112,7 +113,7 @@ public final class TriggerSkillByMagicType extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if ((_chance == 0) || (_skill.getSkillId() == 0) || (_skill.getSkillLevel() == 0) || (_magicTypes.length == 0)) if ((_chance == 0) || (_skill.getSkillId() == 0) || (_skill.getSkillLevel() == 0) || (_magicTypes.length == 0))
{ {

View File

@@ -29,6 +29,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureSkillFinishCast; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureSkillFinishCast;
import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener; import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener;
import com.l2jmobius.gameserver.model.holders.SkillHolder; import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.BuffInfo; import com.l2jmobius.gameserver.model.skills.BuffInfo;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.SkillCaster; import com.l2jmobius.gameserver.model.skills.SkillCaster;
@@ -56,7 +57,7 @@ public final class TriggerSkillBySkill extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.addListener(new ConsumerEventListener(effected, EventType.ON_CREATURE_SKILL_FINISH_CAST, (OnCreatureSkillFinishCast event) -> onSkillUseEvent(event), this)); effected.addListener(new ConsumerEventListener(effected, EventType.ON_CREATURE_SKILL_FINISH_CAST, (OnCreatureSkillFinishCast event) -> onSkillUseEvent(event), this));
} }

View File

@@ -31,6 +31,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageDealt; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageDealt;
import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener; import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener;
import com.l2jmobius.gameserver.model.holders.SkillHolder; import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.BuffInfo; import com.l2jmobius.gameserver.model.skills.BuffInfo;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.SkillCaster; import com.l2jmobius.gameserver.model.skills.SkillCaster;
@@ -66,7 +67,7 @@ public final class TriggerSkillBySkillAttack extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.addListener(new ConsumerEventListener(effected, EventType.ON_CREATURE_DAMAGE_DEALT, (OnCreatureDamageDealt event) -> onAttackEvent(event), this)); effected.addListener(new ConsumerEventListener(effected, EventType.ON_CREATURE_DAMAGE_DEALT, (OnCreatureDamageDealt event) -> onAttackEvent(event), this));
} }

View File

@@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -40,7 +41,7 @@ public final class Untargetable extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
// Remove target from those that have the untargetable creature on target. // Remove target from those that have the untargetable creature on target.
L2World.getInstance().forEachVisibleObject(effected, L2Character.class, c -> L2World.getInstance().forEachVisibleObject(effected, L2Character.class, c ->

View File

@@ -26,8 +26,8 @@ import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
* Abstract effect implementation.<br> * Abstract effect implementation.<br>
* Instant effects should not override {@link #onExit(L2Character, L2Character, Skill)}.<br> * Instant effects should not override {@link #onExit(L2Character, L2Character, Skill)}.<br>
* Instant effects should not override {@link #canStart(L2Character, L2Character, Skill)}, all checks should be done {@link #onStart(L2Character, L2Character, Skill)}.<br> * Instant effects should not override {@link #canStart(L2Character, L2Character, Skill)}, all checks should be done {@link #onStart(L2Character, L2Character, Skill, L2ItemInstance)}.<br>
* Do not call super class methods {@link #onStart(L2Character, L2Character, Skill)} nor {@link #onExit(L2Character, L2Character, Skill)}. * Do not call super class methods {@link #onStart(L2Character, L2Character, Skill, L2ItemInstance)} nor {@link #onExit(L2Character, L2Character, Skill)}.
* @author Zoey76 * @author Zoey76
*/ */
public abstract class AbstractEffect public abstract class AbstractEffect
@@ -102,11 +102,6 @@ public abstract class AbstractEffect
} }
public void onStart(L2Character effector, L2Character effected, Skill skill)
{
onStart(effector, effected, skill, null);
}
public void onExit(L2Character effector, L2Character effected, Skill skill) public void onExit(L2Character effector, L2Character effected, Skill skill)
{ {
@@ -126,19 +121,6 @@ public abstract class AbstractEffect
return false; return false;
} }
/**
* Called on each tick.<br>
* If the abnormal time is lesser than zero it will last forever.
* @param effector
* @param effected
* @param skill
* @return if {@code true} this effect will continue forever, if {@code false} it will stop after abnormal time has passed
*/
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill)
{
return onActionTime(effector, effected, skill, null);
}
/** /**
* Get the effect flags. * Get the effect flags.
* @return bit flag for current effect * @return bit flag for current effect

View File

@@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -37,7 +38,7 @@ public final class AbnormalShield extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.setAbnormalShieldBlocks(_times); effected.setAbnormalShieldBlocks(_times);
} }

View File

@@ -26,6 +26,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageReceived; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureDamageReceived;
import com.l2jmobius.gameserver.model.events.listeners.FunctionEventListener; import com.l2jmobius.gameserver.model.events.listeners.FunctionEventListener;
import com.l2jmobius.gameserver.model.events.returns.DamageReturn; import com.l2jmobius.gameserver.model.events.returns.DamageReturn;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -68,7 +69,7 @@ public class AbsorbDamage extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
_damageHolder.put(effected.getObjectId(), _damage); _damageHolder.put(effected.getObjectId(), _damage);
effected.addListener(new FunctionEventListener(effected, EventType.ON_CREATURE_DAMAGE_RECEIVED, (OnCreatureDamageReceived event) -> onDamageReceivedEvent(event), this)); effected.addListener(new FunctionEventListener(effected, EventType.ON_CREATURE_DAMAGE_RECEIVED, (OnCreatureDamageReceived event) -> onDamageReceivedEvent(event), this));

View File

@@ -26,6 +26,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.ListenersContainer; import com.l2jmobius.gameserver.model.events.ListenersContainer;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureHpChange; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureHpChange;
import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener; import com.l2jmobius.gameserver.model.events.listeners.ConsumerEventListener;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
@@ -44,7 +45,7 @@ abstract class AbstractConditionalHpEffect extends AbstractStatEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
// Augmentation option // Augmentation option
if (skill == null) if (skill == null)

View File

@@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.stat.CharStat; import com.l2jmobius.gameserver.model.actor.stat.CharStat;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.TraitType; import com.l2jmobius.gameserver.model.stats.TraitType;
@@ -69,7 +70,7 @@ public final class AttackTrait extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
final CharStat charStat = effected.getStat(); final CharStat charStat = effected.getStat();
synchronized (charStat.getAttackTraits()) synchronized (charStat.getAttackTraits())

View File

@@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -46,7 +47,7 @@ public final class Betray extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, effected.getActingPlayer()); effected.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, effected.getActingPlayer());
} }

View File

@@ -23,6 +23,7 @@ import java.util.stream.Collectors;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.AbnormalType; import com.l2jmobius.gameserver.model.skills.AbnormalType;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
@@ -40,7 +41,7 @@ public final class BlockAbnormalSlot extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getEffectList().addBlockedAbnormalTypes(_blockAbnormalSlots); effected.getEffectList().addBlockedAbnormalTypes(_blockAbnormalSlots);
} }

View File

@@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.instancemanager.PunishmentManager;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.punishment.PunishmentAffect; import com.l2jmobius.gameserver.model.punishment.PunishmentAffect;
import com.l2jmobius.gameserver.model.punishment.PunishmentTask; import com.l2jmobius.gameserver.model.punishment.PunishmentTask;
import com.l2jmobius.gameserver.model.punishment.PunishmentType; import com.l2jmobius.gameserver.model.punishment.PunishmentType;
@@ -59,7 +60,7 @@ public final class BlockAction extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (_blockedActions.contains(BotReportTable.PARTY_ACTION_BLOCK_ID)) if (_blockedActions.contains(BotReportTable.PARTY_ACTION_BLOCK_ID))
{ {

View File

@@ -28,6 +28,7 @@ import com.l2jmobius.gameserver.model.actor.L2Summon;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -57,7 +58,7 @@ public final class BlockActions extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
_allowedSkills.stream().forEach(effected::addBlockActionsAllowedSkill); _allowedSkills.stream().forEach(effected::addBlockActionsAllowedSkill);
effected.startParalyze(); effected.startParalyze();

View File

@@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.punishment.PunishmentAffect; import com.l2jmobius.gameserver.model.punishment.PunishmentAffect;
import com.l2jmobius.gameserver.model.punishment.PunishmentTask; import com.l2jmobius.gameserver.model.punishment.PunishmentTask;
import com.l2jmobius.gameserver.model.punishment.PunishmentType; import com.l2jmobius.gameserver.model.punishment.PunishmentType;
@@ -49,7 +50,7 @@ public final class BlockChat extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
PunishmentManager.getInstance().startPunishment(new PunishmentTask(0, effected.getObjectId(), PunishmentAffect.CHARACTER, PunishmentType.CHAT_BAN, 0, "Chat banned bot report", "system", true)); PunishmentManager.getInstance().startPunishment(new PunishmentTask(0, effected.getObjectId(), PunishmentAffect.CHARACTER, PunishmentType.CHAT_BAN, 0, "Chat banned bot report", "system", true));
} }

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -32,7 +33,7 @@ public final class BlockMove extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.setIsImmobilized(true); effected.setIsImmobilized(true);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.instancemanager.PunishmentManager;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.punishment.PunishmentAffect; import com.l2jmobius.gameserver.model.punishment.PunishmentAffect;
import com.l2jmobius.gameserver.model.punishment.PunishmentTask; import com.l2jmobius.gameserver.model.punishment.PunishmentTask;
import com.l2jmobius.gameserver.model.punishment.PunishmentType; import com.l2jmobius.gameserver.model.punishment.PunishmentType;
@@ -42,7 +43,7 @@ public final class BlockParty extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
PunishmentManager.getInstance().startPunishment(new PunishmentTask(0, effected.getObjectId(), PunishmentAffect.CHARACTER, PunishmentType.PARTY_BAN, 0, "Party banned by bot report", "system", true)); PunishmentManager.getInstance().startPunishment(new PunishmentTask(0, effected.getObjectId(), PunishmentAffect.CHARACTER, PunishmentType.PARTY_BAN, 0, "Party banned by bot report", "system", true));
} }

View File

@@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.events.EventType;
import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureSkillUse; import com.l2jmobius.gameserver.model.events.impl.character.OnCreatureSkillUse;
import com.l2jmobius.gameserver.model.events.listeners.FunctionEventListener; import com.l2jmobius.gameserver.model.events.listeners.FunctionEventListener;
import com.l2jmobius.gameserver.model.events.returns.TerminateReturn; import com.l2jmobius.gameserver.model.events.returns.TerminateReturn;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -50,7 +51,7 @@ public final class BlockSkill extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if ((_magicTypes == null) || (_magicTypes.length == 0)) if ((_magicTypes == null) || (_magicTypes.length == 0))
{ {

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.L2World;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -32,7 +33,7 @@ public class BlockTarget extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.setTargetable(false); effected.setTargetable(false);
L2World.getInstance().forEachVisibleObject(effected, L2Character.class, target -> L2World.getInstance().forEachVisibleObject(effected, L2Character.class, target ->

View File

@@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.holders.SkillHolder; import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.SkillCaster; import com.l2jmobius.gameserver.model.skills.SkillCaster;
@@ -41,7 +42,7 @@ public final class CallSkillOnActionTime extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getEffectList().stopEffects(Collections.singleton(_skill.getSkill().getAbnormalType())); effected.getEffectList().stopEffects(Collections.singleton(_skill.getSkill().getAbnormalType()));
effected.getEffectList().addBlockedAbnormalTypes(Collections.singleton(_skill.getSkill().getAbnormalType())); effected.getEffectList().addBlockedAbnormalTypes(Collections.singleton(_skill.getSkill().getAbnormalType()));
@@ -54,7 +55,7 @@ public final class CallSkillOnActionTime extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effector.isDead()) if (effector.isDead())
{ {

View File

@@ -22,6 +22,7 @@ import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.network.SystemMessageId; import com.l2jmobius.gameserver.network.SystemMessageId;
@@ -51,7 +52,7 @@ public final class ChameleonRest extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isDead()) if (effected.isDead())
{ {
@@ -78,7 +79,7 @@ public final class ChameleonRest extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isPlayer()) if (effected.isPlayer())
{ {

View File

@@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.holders.TemplateChanceHolder; import com.l2jmobius.gameserver.model.holders.TemplateChanceHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -49,7 +50,7 @@ public final class ChangeBody extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
final int chance = Rnd.get(100); final int chance = Rnd.get(100);
//@formatter:off //@formatter:off

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.enums.Position;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
import com.l2jmobius.gameserver.util.MathUtil; import com.l2jmobius.gameserver.util.MathUtil;
@@ -39,7 +40,7 @@ public class CriticalDamagePosition extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getStat().mergePositionTypeValue(Stats.CRITICAL_DAMAGE, _position, (_amount / 100) + 1, MathUtil::mul); effected.getStat().mergePositionTypeValue(Stats.CRITICAL_DAMAGE, _position, (_amount / 100) + 1, MathUtil::mul);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.enums.Position;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
import com.l2jmobius.gameserver.util.MathUtil; import com.l2jmobius.gameserver.util.MathUtil;
@@ -39,7 +40,7 @@ public class CriticalRatePositionBonus extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getStat().mergePositionTypeValue(Stats.CRITICAL_RATE, _position, (_amount / 100) + 1, MathUtil::mul); effected.getStat().mergePositionTypeValue(Stats.CRITICAL_RATE, _position, (_amount / 100) + 1, MathUtil::mul);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -42,7 +43,7 @@ public final class CrystalGradeModify extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getActingPlayer().setExpertisePenaltyBonus(_grade); effected.getActingPlayer().setExpertisePenaltyBonus(_grade);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Formulas; import com.l2jmobius.gameserver.model.stats.Formulas;
import com.l2jmobius.gameserver.network.SystemMessageId; import com.l2jmobius.gameserver.network.SystemMessageId;
@@ -40,7 +41,7 @@ public final class DamOverTime extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (!skill.isToggle() && skill.isMagic()) if (!skill.isToggle() && skill.isMagic())
{ {
@@ -67,7 +68,7 @@ public final class DamOverTime extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isDead()) if (effected.isDead())
{ {

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.L2EffectType; import com.l2jmobius.gameserver.model.effects.L2EffectType;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.network.SystemMessageId; import com.l2jmobius.gameserver.network.SystemMessageId;
@@ -46,7 +47,7 @@ public final class DamOverTimePercent extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isDead()) if (effected.isDead())
{ {

View File

@@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.stat.CharStat; import com.l2jmobius.gameserver.model.actor.stat.CharStat;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.TraitType; import com.l2jmobius.gameserver.model.stats.TraitType;
@@ -98,7 +99,7 @@ public final class DefenceTrait extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
final CharStat charStat = effected.getStat(); final CharStat charStat = effected.getStat();
synchronized (charStat.getDefenceTraits()) synchronized (charStat.getDefenceTraits())

View File

@@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -34,7 +35,7 @@ public final class DisableTargeting extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.setTarget(null); effected.setTarget(null);
effected.abortAttack(); effected.abortAttack();

View File

@@ -26,6 +26,7 @@ import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.holders.SkillHolder; import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -56,7 +57,7 @@ public final class DoubleCast extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isPlayer()) if (effected.isPlayer())
{ {
@@ -70,7 +71,7 @@ public final class DoubleCast extends AbstractEffect
} }
} }
} }
super.onStart(effector, effected, skill); super.onStart(effector, effected, skill, item);
} }
@Override @Override

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -38,7 +39,7 @@ public final class EnableCloak extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getActingPlayer().getStat().setCloakSlotStatus(true); effected.getActingPlayer().getStat().setCloakSlotStatus(true);
} }

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -41,7 +42,7 @@ public final class EnlargeAbnormalSlot extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getStat().setMaxBuffCount(effected.getStat().getMaxBuffCount() + _slots); effected.getStat().setMaxBuffCount(effected.getStat().getMaxBuffCount() + _slots);
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.network.SystemMessageId; import com.l2jmobius.gameserver.network.SystemMessageId;
import com.l2jmobius.gameserver.network.serverpackets.ChangeWaitType; import com.l2jmobius.gameserver.network.serverpackets.ChangeWaitType;
@@ -46,7 +47,7 @@ public final class FakeDeath extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
if (effected.isDead()) if (effected.isDead())
{ {
@@ -81,7 +82,7 @@ public final class FakeDeath extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.startFakeDeath(); effected.startFakeDeath();
} }

View File

@@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.enums.StatModifierType;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.stats.Stats; import com.l2jmobius.gameserver.model.stats.Stats;
@@ -38,7 +39,7 @@ public class FatalBlowRate extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
switch (_mode) switch (_mode)
{ {

View File

@@ -28,6 +28,7 @@ import com.l2jmobius.gameserver.model.actor.instance.L2FortCommanderInstance;
import com.l2jmobius.gameserver.model.actor.instance.L2SiegeFlagInstance; import com.l2jmobius.gameserver.model.actor.instance.L2SiegeFlagInstance;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.effects.EffectFlag;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.util.Util; import com.l2jmobius.gameserver.util.Util;
@@ -66,14 +67,14 @@ public final class Fear extends AbstractEffect
} }
@Override @Override
public boolean onActionTime(L2Character effector, L2Character effected, Skill skill) public boolean onActionTime(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
fearAction(null, effected); fearAction(null, effected);
return false; return false;
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.getAI().notifyEvent(CtrlEvent.EVT_AFRAID); effected.getAI().notifyEvent(CtrlEvent.EVT_AFRAID);
fearAction(effector, effected); fearAction(effector, effected);

View File

@@ -19,6 +19,7 @@ package handlers.effecthandlers;
import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
@@ -38,7 +39,7 @@ public final class Flag extends AbstractEffect
} }
@Override @Override
public void onStart(L2Character effector, L2Character effected, Skill skill) public void onStart(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{ {
effected.updatePvPFlag(1); effected.updatePvPFlag(1);
} }

Some files were not shown because too many files have changed in this diff Show More