diff --git a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/effecthandlers/Passive.java b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/effecthandlers/Passive.java index 9bc43fe164..06e53b2117 100644 --- a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/effecthandlers/Passive.java +++ b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/effecthandlers/Passive.java @@ -17,14 +17,14 @@ package handlers.effecthandlers; import com.l2jmobius.gameserver.model.StatsSet; -import com.l2jmobius.gameserver.model.actor.L2Attackable; import com.l2jmobius.gameserver.model.conditions.Condition; import com.l2jmobius.gameserver.model.effects.AbstractEffect; +import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.skills.BuffInfo; /** * Passive effect implementation. - * @author Adry_85 + * @author Mobius */ public final class Passive extends AbstractEffect { @@ -34,10 +34,9 @@ public final class Passive extends AbstractEffect } @Override - public void onExit(BuffInfo info) + public int getEffectFlags() { - info.getEffected().enableAllSkills(); - info.getEffected().setIsImmobilized(false); + return EffectFlag.PASSIVE.getMask(); } @Override @@ -45,14 +44,4 @@ public final class Passive extends AbstractEffect { return info.getEffected().isAttackable(); } - - @Override - public void onStart(BuffInfo info) - { - final L2Attackable target = (L2Attackable) info.getEffected(); - target.abortAttack(); - target.abortCast(); - target.disableAllSkills(); - target.setIsImmobilized(true); - } } diff --git a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/L2Character.java index 657bf1ccfe..bf903d96b3 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -5703,7 +5703,7 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe } } // notify target AI about the attack - if (((L2Character) target).hasAI() && !skill.hasEffectType(L2EffectType.HATE)) + if (((L2Character) target).hasAI() && !skill.hasEffectType(L2EffectType.HATE) && (skill.getAbnormalType() != AbnormalType.TURN_PASSIVE)) { ((L2Character) target).getAI().notifyEvent(CtrlEvent.EVT_ATTACKED, this); } diff --git a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/instance/L2MonsterInstance.java b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/instance/L2MonsterInstance.java index c7d4e53734..ca54f2f108 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/instance/L2MonsterInstance.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/instance/L2MonsterInstance.java @@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.L2Object; import com.l2jmobius.gameserver.model.actor.L2Attackable; import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.templates.L2NpcTemplate; +import com.l2jmobius.gameserver.model.effects.EffectFlag; import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.util.MinionList; @@ -94,7 +95,7 @@ public class L2MonsterInstance extends L2Attackable @Override public boolean isAggressive() { - return getTemplate().isAggressive() && !isEventMob(); + return getTemplate().isAggressive() && !isEventMob() && !isAffected(EffectFlag.PASSIVE); } @Override diff --git a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/effects/EffectFlag.java b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/effects/EffectFlag.java index 63d9650fb5..267f225351 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/effects/EffectFlag.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/effects/EffectFlag.java @@ -32,6 +32,7 @@ public enum EffectFlag MUTED, PSYCHICAL_MUTED, PSYCHICAL_ATTACK_MUTED, + PASSIVE, DISARMED, ROOTED, SLEEP,