From 593e36fc3a67f8ccfaf1a24fd197275f9d4fa7cc Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Sat, 30 Oct 2021 13:54:02 +0000 Subject: [PATCH] Solo event status related additions. --- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../model/actor/instance/PlayerInstance.java | 15 +++++++++++++-- .../network/clientpackets/AttackRequest.java | 2 +- .../model/actor/instance/PlayerInstance.java | 15 +++++++++++++-- .../network/clientpackets/AttackRequest.java | 2 +- .../handlers/targethandlers/CorpseClan.java | 2 +- .../handlers/targethandlers/PartyClan.java | 2 +- .../model/actor/instance/CubicInstance.java | 2 +- .../model/actor/instance/PlayerInstance.java | 13 ++++++++++++- .../l2jmobius/gameserver/model/skills/Skill.java | 2 +- .../handlers/targethandlers/CorpseClan.java | 2 +- .../handlers/targethandlers/PartyClan.java | 2 +- .../model/actor/instance/CubicInstance.java | 2 +- .../model/actor/instance/PlayerInstance.java | 13 ++++++++++++- .../l2jmobius/gameserver/model/skills/Skill.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../model/actor/instance/PlayerInstance.java | 13 ++++++++++++- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../model/actor/instance/PlayerInstance.java | 13 ++++++++++++- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../model/actor/instance/PlayerInstance.java | 13 ++++++++++++- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../model/actor/instance/PlayerInstance.java | 13 ++++++++++++- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../model/actor/instance/PlayerInstance.java | 13 ++++++++++++- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../model/actor/instance/PlayerInstance.java | 13 ++++++++++++- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../model/actor/instance/PlayerInstance.java | 13 ++++++++++++- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../model/actor/instance/PlayerInstance.java | 13 ++++++++++++- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- .../targethandlers/affectobject/NotFriend.java | 2 +- .../targethandlers/affectobject/NotFriendPc.java | 2 +- .../gameserver/model/actor/Creature.java | 2 +- .../model/actor/instance/PlayerInstance.java | 13 ++++++++++++- .../conditions/ConditionPlayerCanTransform.java | 2 +- .../gameserver/model/skills/SkillCaster.java | 2 +- 118 files changed, 263 insertions(+), 120 deletions(-) diff --git a/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/actor/Creature.java index 2c3916a99c..a2eb37b78d 100644 --- a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1022,7 +1022,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index d71e1bc592..cb2ad5de03 100644 --- a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_02.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_02.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index 92ef49a349..75a70d0d31 100644 --- a/L2J_Mobius_02.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_02.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -80,7 +80,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_02.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_02.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index ae271764f0..a49bd74f2a 100644 --- a/L2J_Mobius_02.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_02.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -80,7 +80,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/actor/Creature.java index 2c3916a99c..a2eb37b78d 100644 --- a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1022,7 +1022,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index d4cc53c0de..cf00703602 100644 --- a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index 92ef49a349..75a70d0d31 100644 --- a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -80,7 +80,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index ae271764f0..a49bd74f2a 100644 --- a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -80,7 +80,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/actor/Creature.java index 2c8d3a34bc..9563a59958 100644 --- a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1022,7 +1022,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index d4cc53c0de..cf00703602 100644 --- a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/actor/Creature.java index 2c8d3a34bc..9563a59958 100644 --- a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1022,7 +1022,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index d4cc53c0de..cf00703602 100644 --- a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/actor/Creature.java index 64fca5c362..d18ae3ac63 100644 --- a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1022,7 +1022,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index b22329e212..acb9f76029 100644 --- a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/Creature.java index 64fca5c362..d18ae3ac63 100644 --- a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1022,7 +1022,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index b22329e212..acb9f76029 100644 --- a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/Creature.java index 64fca5c362..d18ae3ac63 100644 --- a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1022,7 +1022,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index b22329e212..acb9f76029 100644 --- a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/actor/Creature.java index 4a328cd17b..cfbd445756 100644 --- a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1022,7 +1022,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index 45fcf99be4..3e755dfb30 100644 --- a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/actor/Creature.java index 34aba9caa8..1cee2809ba 100644 --- a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1022,7 +1022,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index 45fcf99be4..3e755dfb30 100644 --- a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/actor/Creature.java index 34aba9caa8..1cee2809ba 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1022,7 +1022,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index 45fcf99be4..5cfe049d30 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad()&& !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_C4_ScionsOfDestiny/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_C4_ScionsOfDestiny/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index 5050f83a67..9d068f73b9 100644 --- a/L2J_Mobius_C4_ScionsOfDestiny/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_C4_ScionsOfDestiny/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -399,6 +399,7 @@ public class PlayerInstance extends Playable private final int[] _race = new int[2]; private final BlockList _blockList = new BlockList(this); private boolean _isRegisteredOnEvent = false; + private boolean _isOnSoloEvent = false; private boolean _isOnEvent = false; private int _team = 0; private int _alliedVarkaKetra = 0; @@ -8943,7 +8944,7 @@ public class PlayerInstance extends Playable final PlayerInstance player = attacker.getActingPlayer(); if ((player != null) && player.isOnEvent()) { - return getTeam() != player.getTeam(); + return isOnSoloEvent() || (getTeam() != player.getTeam()); } } @@ -9696,7 +9697,7 @@ public class PlayerInstance extends Playable // Check if player and target are in events and on the same team. if ((target instanceof PlayerInstance) && isOnEvent() && skill.isOffensive()) { - return target.getActingPlayer().isOnEvent() && (getTeam() != target.getActingPlayer().getTeam()); + return target.getActingPlayer().isOnEvent() && (isOnSoloEvent() || (getTeam() != target.getActingPlayer().getTeam())); } // check for PC->PC Pvp status @@ -11002,6 +11003,16 @@ public class PlayerInstance extends Playable _isOnEvent = value; } + public boolean isOnSoloEvent() + { + return _isOnSoloEvent; + } + + public void setOnSoloEvent(boolean value) + { + _isOnSoloEvent = value; + } + /** * Sets the team. * @param team the new team diff --git a/L2J_Mobius_C4_ScionsOfDestiny/java/org/l2jmobius/gameserver/network/clientpackets/AttackRequest.java b/L2J_Mobius_C4_ScionsOfDestiny/java/org/l2jmobius/gameserver/network/clientpackets/AttackRequest.java index 5932350921..0317249532 100644 --- a/L2J_Mobius_C4_ScionsOfDestiny/java/org/l2jmobius/gameserver/network/clientpackets/AttackRequest.java +++ b/L2J_Mobius_C4_ScionsOfDestiny/java/org/l2jmobius/gameserver/network/clientpackets/AttackRequest.java @@ -98,7 +98,7 @@ public class AttackRequest implements IClientIncomingPacket } // No attacks to same team in event - if (player.isOnEvent()) + if (player.isOnEvent() && !player.isOnSoloEvent()) { if (target instanceof PlayerInstance) { diff --git a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index 80718efb19..88a35a9f47 100644 --- a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -412,6 +412,7 @@ public class PlayerInstance extends Playable private final int[] _race = new int[2]; private final BlockList _blockList = new BlockList(this); private boolean _isRegisteredOnEvent = false; + private boolean _isOnSoloEvent = false; private boolean _isOnEvent = false; private int _team = 0; private int _alliedVarkaKetra = 0; @@ -9095,7 +9096,7 @@ public class PlayerInstance extends Playable final PlayerInstance player = attacker.getActingPlayer(); if ((player != null) && player.isOnEvent()) { - return getTeam() != player.getTeam(); + return isOnSoloEvent() || (getTeam() != player.getTeam()); } } @@ -9862,7 +9863,7 @@ public class PlayerInstance extends Playable // Check if player and target are in events and on the same team. if ((target instanceof PlayerInstance) && isOnEvent() && skill.isOffensive()) { - return target.getActingPlayer().isOnEvent() && (getTeam() != target.getActingPlayer().getTeam()); + return target.getActingPlayer().isOnEvent() && (isOnSoloEvent() || (getTeam() != target.getActingPlayer().getTeam())); } // check for PC->PC Pvp status @@ -11297,6 +11298,16 @@ public class PlayerInstance extends Playable _isOnEvent = value; } + public boolean isOnSoloEvent() + { + return _isOnSoloEvent; + } + + public void setOnSoloEvent(boolean value) + { + _isOnSoloEvent = value; + } + /** * Sets the team. * @param team the new team diff --git a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/network/clientpackets/AttackRequest.java b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/network/clientpackets/AttackRequest.java index 5932350921..0317249532 100644 --- a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/network/clientpackets/AttackRequest.java +++ b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/network/clientpackets/AttackRequest.java @@ -98,7 +98,7 @@ public class AttackRequest implements IClientIncomingPacket } // No attacks to same team in event - if (player.isOnEvent()) + if (player.isOnEvent() && !player.isOnSoloEvent()) { if (target instanceof PlayerInstance) { diff --git a/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/handlers/targethandlers/CorpseClan.java b/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/handlers/targethandlers/CorpseClan.java index 13801ef947..d454f89555 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/handlers/targethandlers/CorpseClan.java +++ b/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/handlers/targethandlers/CorpseClan.java @@ -87,7 +87,7 @@ public class CorpseClan implements ITargetTypeHandler continue; } - if (player.isOnEvent() && obj.isOnEvent() && (player.getTeam() != obj.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && obj.isOnEvent() && (player.getTeam() != obj.getTeam())) { continue; } diff --git a/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/handlers/targethandlers/PartyClan.java b/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/handlers/targethandlers/PartyClan.java index 784bfad04f..8326403d43 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/handlers/targethandlers/PartyClan.java +++ b/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/handlers/targethandlers/PartyClan.java @@ -117,7 +117,7 @@ public class PartyClan implements ITargetTypeHandler continue; } - if (player.isOnEvent() && obj.isOnEvent() && (player.getTeam() != obj.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && obj.isOnEvent() && (player.getTeam() != obj.getTeam())) { continue; } diff --git a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/instance/CubicInstance.java b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/instance/CubicInstance.java index 7be28d61f7..05c3dbddb9 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/instance/CubicInstance.java +++ b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/instance/CubicInstance.java @@ -291,7 +291,7 @@ public class CubicInstance implements IIdentifiable if (ownerTarget.getActingPlayer() != null) { final PlayerInstance target = ownerTarget.getActingPlayer(); - if ((_owner.getTeam() != target.getTeam()) && !(target.isDead())) + if (((_owner.getTeam() != target.getTeam()) || _owner.isOnSoloEvent()) && !(target.isDead())) { _target = (Creature) ownerTarget; } diff --git a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index a7afd6f5bd..021bed2601 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -717,6 +717,7 @@ public class PlayerInstance extends Playable /** Event parameters */ private boolean _isRegisteredOnEvent = false; + private boolean _isOnSoloEvent = false; private boolean _isOnEvent = false; private byte _handysBlockCheckerEventArena = -1; @@ -8422,7 +8423,7 @@ public class PlayerInstance extends Playable // Check if the attacker is in an event if (isOnEvent()) { - return getTeam() != attacker.getTeam(); + return isOnSoloEvent() || (getTeam() != attacker.getTeam()); } // Check if the attacker is a Playable @@ -14015,6 +14016,16 @@ public class PlayerInstance extends Playable _isOnEvent = value; } + public boolean isOnSoloEvent() + { + return _isOnSoloEvent; + } + + public void setOnSoloEvent(boolean value) + { + _isOnSoloEvent = value; + } + public void setBlockCheckerArena(byte arena) { _handysBlockCheckerEventArena = arena; diff --git a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/skills/Skill.java b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/skills/Skill.java index 906c090350..3be90cb89c 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/skills/Skill.java +++ b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/skills/Skill.java @@ -1122,7 +1122,7 @@ public class Skill implements IIdentifiable } } - if (player.isOnEvent() && targetPlayer.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && targetPlayer.isOnEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/targethandlers/CorpseClan.java b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/targethandlers/CorpseClan.java index 13801ef947..d454f89555 100644 --- a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/targethandlers/CorpseClan.java +++ b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/targethandlers/CorpseClan.java @@ -87,7 +87,7 @@ public class CorpseClan implements ITargetTypeHandler continue; } - if (player.isOnEvent() && obj.isOnEvent() && (player.getTeam() != obj.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && obj.isOnEvent() && (player.getTeam() != obj.getTeam())) { continue; } diff --git a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/targethandlers/PartyClan.java b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/targethandlers/PartyClan.java index 784bfad04f..8326403d43 100644 --- a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/targethandlers/PartyClan.java +++ b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/targethandlers/PartyClan.java @@ -117,7 +117,7 @@ public class PartyClan implements ITargetTypeHandler continue; } - if (player.isOnEvent() && obj.isOnEvent() && (player.getTeam() != obj.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && obj.isOnEvent() && (player.getTeam() != obj.getTeam())) { continue; } diff --git a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/instance/CubicInstance.java b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/instance/CubicInstance.java index 7be28d61f7..05c3dbddb9 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/instance/CubicInstance.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/instance/CubicInstance.java @@ -291,7 +291,7 @@ public class CubicInstance implements IIdentifiable if (ownerTarget.getActingPlayer() != null) { final PlayerInstance target = ownerTarget.getActingPlayer(); - if ((_owner.getTeam() != target.getTeam()) && !(target.isDead())) + if (((_owner.getTeam() != target.getTeam()) || _owner.isOnSoloEvent()) && !(target.isDead())) { _target = (Creature) ownerTarget; } diff --git a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index 3f861625a1..beddd441b4 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -736,6 +736,7 @@ public class PlayerInstance extends Playable /** Event parameters */ private boolean _isRegisteredOnEvent = false; + private boolean _isOnSoloEvent = false; private boolean _isOnEvent = false; private byte _handysBlockCheckerEventArena = -1; @@ -8306,7 +8307,7 @@ public class PlayerInstance extends Playable // Check if the attacker is in an event if (isOnEvent()) { - return getTeam() != attacker.getTeam(); + return isOnSoloEvent() || (getTeam() != attacker.getTeam()); } // Check if the attacker is a Playable @@ -14102,6 +14103,16 @@ public class PlayerInstance extends Playable _isOnEvent = value; } + public boolean isOnSoloEvent() + { + return _isOnSoloEvent; + } + + public void setOnSoloEvent(boolean value) + { + _isOnSoloEvent = value; + } + public void setBlockCheckerArena(byte arena) { _handysBlockCheckerEventArena = arena; diff --git a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/skills/Skill.java b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/skills/Skill.java index 6d913e3b00..d53040dd6d 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/skills/Skill.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/skills/Skill.java @@ -1129,7 +1129,7 @@ public class Skill implements IIdentifiable } } - if (player.isOnEvent() && targetPlayer.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && targetPlayer.isOnEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/Creature.java index 20a9bc5ad5..416e5a7883 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1022,7 +1022,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index 01427e7857..30f69e9fa4 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -718,6 +718,7 @@ public class PlayerInstance extends Playable /** Event parameters */ private boolean _isRegisteredOnEvent = false; + private boolean _isOnSoloEvent = false; private boolean _isOnEvent = false; private byte _handysBlockCheckerEventArena = -1; @@ -8101,7 +8102,7 @@ public class PlayerInstance extends Playable // Check if the attacker is in an event if (isOnEvent()) { - return getTeam() != attacker.getTeam(); + return isOnSoloEvent() || (getTeam() != attacker.getTeam()); } // Check if the attacker is a Playable @@ -13028,6 +13029,16 @@ public class PlayerInstance extends Playable _isOnEvent = value; } + public boolean isOnSoloEvent() + { + return _isOnSoloEvent; + } + + public void setOnSoloEvent(boolean value) + { + _isOnSoloEvent = value; + } + public boolean isBlockedFromDeathPenalty() { return _isOnEvent || isAffected(EffectFlag.PROTECT_DEATH_PENALTY); diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index 7dd3e39882..673bc79dc6 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/Creature.java index 20a9bc5ad5..416e5a7883 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1022,7 +1022,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index 736d53df24..0c83eabf59 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -718,6 +718,7 @@ public class PlayerInstance extends Playable /** Event parameters */ private boolean _isRegisteredOnEvent = false; + private boolean _isOnSoloEvent = false; private boolean _isOnEvent = false; private byte _handysBlockCheckerEventArena = -1; @@ -8101,7 +8102,7 @@ public class PlayerInstance extends Playable // Check if the attacker is in an event if (isOnEvent()) { - return getTeam() != attacker.getTeam(); + return isOnSoloEvent() || (getTeam() != attacker.getTeam()); } // Check if the attacker is a Playable @@ -13028,6 +13029,16 @@ public class PlayerInstance extends Playable _isOnEvent = value; } + public boolean isOnSoloEvent() + { + return _isOnSoloEvent; + } + + public void setOnSoloEvent(boolean value) + { + _isOnSoloEvent = value; + } + public boolean isBlockedFromDeathPenalty() { return _isOnEvent || isAffected(EffectFlag.PROTECT_DEATH_PENALTY); diff --git a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index 7dd3e39882..673bc79dc6 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/Creature.java index 40b4ac1ce0..303c47b7e7 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1022,7 +1022,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index f1967f058c..7588db539e 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -716,6 +716,7 @@ public class PlayerInstance extends Playable /** Event parameters */ private boolean _isRegisteredOnEvent = false; + private boolean _isOnSoloEvent = false; private boolean _isOnEvent = false; private byte _handysBlockCheckerEventArena = -1; @@ -8087,7 +8088,7 @@ public class PlayerInstance extends Playable // Check if the attacker is in an event if (isOnEvent()) { - return getTeam() != attacker.getTeam(); + return isOnSoloEvent() || (getTeam() != attacker.getTeam()); } // Check if the attacker is a Playable @@ -13014,6 +13015,16 @@ public class PlayerInstance extends Playable _isOnEvent = value; } + public boolean isOnSoloEvent() + { + return _isOnSoloEvent; + } + + public void setOnSoloEvent(boolean value) + { + _isOnSoloEvent = value; + } + public boolean isBlockedFromDeathPenalty() { return _isOnEvent || isAffected(EffectFlag.PROTECT_DEATH_PENALTY); diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index 7dd3e39882..673bc79dc6 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/Creature.java index ca102cad10..7df45b19dc 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1023,7 +1023,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index 9d4044e41a..247daf72ed 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -724,6 +724,7 @@ public class PlayerInstance extends Playable /** Event parameters */ private boolean _isRegisteredOnEvent = false; + private boolean _isOnSoloEvent = false; private boolean _isOnEvent = false; private byte _handysBlockCheckerEventArena = -1; @@ -8114,7 +8115,7 @@ public class PlayerInstance extends Playable // Check if the attacker is in an event if (isOnEvent()) { - return getTeam() != attacker.getTeam(); + return isOnSoloEvent() || (getTeam() != attacker.getTeam()); } // Check if the attacker is a Playable @@ -13062,6 +13063,16 @@ public class PlayerInstance extends Playable _isOnEvent = value; } + public boolean isOnSoloEvent() + { + return _isOnSoloEvent; + } + + public void setOnSoloEvent(boolean value) + { + _isOnSoloEvent = value; + } + public boolean isBlockedFromDeathPenalty() { return _isOnEvent || isAffected(EffectFlag.PROTECT_DEATH_PENALTY); diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index 7dd3e39882..673bc79dc6 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/Creature.java index ca102cad10..7df45b19dc 100644 --- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1023,7 +1023,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index 1b671f7446..3ae80191c4 100644 --- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -724,6 +724,7 @@ public class PlayerInstance extends Playable /** Event parameters */ private boolean _isRegisteredOnEvent = false; + private boolean _isOnSoloEvent = false; private boolean _isOnEvent = false; private byte _handysBlockCheckerEventArena = -1; @@ -8114,7 +8115,7 @@ public class PlayerInstance extends Playable // Check if the attacker is in an event if (isOnEvent()) { - return getTeam() != attacker.getTeam(); + return isOnSoloEvent() || (getTeam() != attacker.getTeam()); } // Check if the attacker is a Playable @@ -13062,6 +13063,16 @@ public class PlayerInstance extends Playable _isOnEvent = value; } + public boolean isOnSoloEvent() + { + return _isOnSoloEvent; + } + + public void setOnSoloEvent(boolean value) + { + _isOnSoloEvent = value; + } + public boolean isBlockedFromDeathPenalty() { return _isOnEvent || isAffected(EffectFlag.PROTECT_DEATH_PENALTY); diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index 7dd3e39882..673bc79dc6 100644 --- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/actor/Creature.java index cfd3089345..2a1b657b0a 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1023,7 +1023,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index c22087eb0d..33c90a1ceb 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -738,6 +738,7 @@ public class PlayerInstance extends Playable /** Event parameters */ private boolean _isRegisteredOnEvent = false; + private boolean _isOnSoloEvent = false; private boolean _isOnEvent = false; private byte _handysBlockCheckerEventArena = -1; @@ -8067,7 +8068,7 @@ public class PlayerInstance extends Playable // Check if the attacker is in an event if (isOnEvent()) { - return getTeam() != attacker.getTeam(); + return isOnSoloEvent() || (getTeam() != attacker.getTeam()); } // Check if the attacker is a Playable @@ -13071,6 +13072,16 @@ public class PlayerInstance extends Playable _isOnEvent = value; } + public boolean isOnSoloEvent() + { + return _isOnSoloEvent; + } + + public void setOnSoloEvent(boolean value) + { + _isOnSoloEvent = value; + } + public boolean isBlockedFromDeathPenalty() { return _isOnEvent || isAffected(EffectFlag.PROTECT_DEATH_PENALTY); diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index e275602c19..1dae36d980 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1135,7 +1135,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/actor/Creature.java index 20a9bc5ad5..416e5a7883 100644 --- a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1022,7 +1022,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index eb939e2889..1df17aa85e 100644 --- a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -713,6 +713,7 @@ public class PlayerInstance extends Playable /** Event parameters */ private boolean _isRegisteredOnEvent = false; + private boolean _isOnSoloEvent = false; private boolean _isOnEvent = false; private byte _handysBlockCheckerEventArena = -1; @@ -8079,7 +8080,7 @@ public class PlayerInstance extends Playable // Check if the attacker is in an event if (isOnEvent()) { - return getTeam() != attacker.getTeam(); + return isOnSoloEvent() || (getTeam() != attacker.getTeam()); } // Check if the attacker is a Playable @@ -13024,6 +13025,16 @@ public class PlayerInstance extends Playable _isOnEvent = value; } + public boolean isOnSoloEvent() + { + return _isOnSoloEvent; + } + + public void setOnSoloEvent(boolean value) + { + _isOnSoloEvent = value; + } + public boolean isBlockedFromDeathPenalty() { return _isOnEvent || isAffected(EffectFlag.PROTECT_DEATH_PENALTY); diff --git a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index 7dd3e39882..673bc79dc6 100644 --- a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1130,7 +1130,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/Creature.java index 08a8ded386..50b8ccc284 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1026,7 +1026,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index 8f1f66eca4..7c4877a256 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -765,6 +765,7 @@ public class PlayerInstance extends Playable /** Event parameters */ private boolean _isRegisteredOnEvent = false; + private boolean _isOnSoloEvent = false; private boolean _isOnEvent = false; private byte _handysBlockCheckerEventArena = -1; @@ -8213,7 +8214,7 @@ public class PlayerInstance extends Playable // Check if the attacker is in an event if (isOnEvent()) { - return getTeam() != attacker.getTeam(); + return isOnSoloEvent() || (getTeam() != attacker.getTeam()); } // Check if the attacker is a Playable @@ -13331,6 +13332,16 @@ public class PlayerInstance extends Playable _isOnEvent = value; } + public boolean isOnSoloEvent() + { + return _isOnSoloEvent; + } + + public void setOnSoloEvent(boolean value) + { + _isOnSoloEvent = value; + } + public boolean isBlockedFromDeathPenalty() { return _isOnEvent || isAffected(EffectFlag.PROTECT_DEATH_PENALTY); diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index e5ba502fc8..e11dfcf07d 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1135,7 +1135,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam())) diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java index e871e36f2c..66adaf7388 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriend.java @@ -79,7 +79,7 @@ public class NotFriend implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java index 28a3260b12..5a6d464a14 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/targethandlers/affectobject/NotFriendPc.java @@ -79,7 +79,7 @@ public class NotFriendPc implements IAffectObjectHandler } // Events. - if (player.isOnEvent() && (player.getTeam() == target.getTeam())) + if (player.isOnEvent() && !player.isOnSoloEvent() && (player.getTeam() == target.getTeam())) { return false; } diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/Creature.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/Creature.java index ec47e1e66c..967f739d2a 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/Creature.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/Creature.java @@ -1026,7 +1026,7 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe return; } // Events. - else if (getActingPlayer().isOnEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) + else if (getActingPlayer().isOnEvent() && !getActingPlayer().isOnSoloEvent() && target.isPlayable() && (getActingPlayer().getTeam() == target.getActingPlayer().getTeam())) { sendPacket(ActionFailed.STATIC_PACKET); return; diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index df2f3c09de..037a8f4490 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -789,6 +789,7 @@ public class PlayerInstance extends Playable /** Event parameters */ private boolean _isRegisteredOnEvent = false; + private boolean _isOnSoloEvent = false; private boolean _isOnEvent = false; private byte _handysBlockCheckerEventArena = -1; @@ -8279,7 +8280,7 @@ public class PlayerInstance extends Playable // Check if the attacker is in an event if (isOnEvent()) { - return getTeam() != attacker.getTeam(); + return isOnSoloEvent() || (getTeam() != attacker.getTeam()); } // Check if the attacker is a Playable @@ -13408,6 +13409,16 @@ public class PlayerInstance extends Playable _isOnEvent = value; } + public boolean isOnSoloEvent() + { + return _isOnSoloEvent; + } + + public void setOnSoloEvent(boolean value) + { + _isOnSoloEvent = value; + } + public boolean isBlockedFromDeathPenalty() { return _isOnEvent || isAffected(EffectFlag.PROTECT_DEATH_PENALTY); diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java index 682d2ec2b1..c69447dee9 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/conditions/ConditionPlayerCanTransform.java @@ -64,7 +64,7 @@ public class ConditionPlayerCanTransform extends Condition player.sendPacket(SystemMessageId.YOU_CANNOT_TRANSFORM_WHILE_RIDING_A_PET); canTransform = false; } - else if (player.isOnEvent()) + else if (player.isRegisteredOnEvent()) { player.sendMessage("You cannot transform while registered on an event."); canTransform = false; diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java index e5ba502fc8..e11dfcf07d 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/skills/SkillCaster.java @@ -1135,7 +1135,7 @@ public class SkillCaster implements Runnable return false; } - if (skill.isBad()) + if (skill.isBad() && !player.isOnSoloEvent()) { final WorldObject target = player.getTarget(); if ((target != null) && target.isPlayable() && (player.getTeam() == target.getActingPlayer().getTeam()))