From 62e95215563107f81f5f6a478b92bc0f35c3e34d Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Sat, 15 Oct 2022 00:15:14 +0000 Subject: [PATCH] Fixed OctavisWarzone MINION_CALL NPE. --- .../game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java | 6 +++--- .../game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java | 6 +++--- .../game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java | 6 +++--- .../game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java | 6 +++--- .../game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java | 6 +++--- .../game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java | 6 +++--- .../game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java | 6 +++--- .../game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java | 6 +++--- .../game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java | 6 +++--- .../game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java | 6 +++--- .../game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java | 6 +++--- 11 files changed, 33 insertions(+), 33 deletions(-) diff --git a/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java b/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java index 80dd650b89..49a224c8bc 100644 --- a/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java +++ b/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java @@ -370,10 +370,10 @@ public class OctavisWarzone extends AbstractInstance } case "MINION_CALL": { - final Player mostHated = ((Attackable) npc).getMostHated().getActingPlayer(); - if ((mostHated != null) && (mostHated.calculateDistance3D(npc) < 5000)) + final Creature mostHated = ((Attackable) npc).getMostHated(); + if ((mostHated != null) && mostHated.isPlayer() && (npc.calculateDistance3D(npc) < 5000)) { - World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, mostHated, 23)); + World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, (Player) mostHated, 23)); } getTimers().addTimer("MINION_CALL", 5000 + (getRandom(5) * 1000), npc, null); break; diff --git a/L2J_Mobius_02.5_Underground/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java b/L2J_Mobius_02.5_Underground/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java index 80dd650b89..49a224c8bc 100644 --- a/L2J_Mobius_02.5_Underground/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java +++ b/L2J_Mobius_02.5_Underground/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java @@ -370,10 +370,10 @@ public class OctavisWarzone extends AbstractInstance } case "MINION_CALL": { - final Player mostHated = ((Attackable) npc).getMostHated().getActingPlayer(); - if ((mostHated != null) && (mostHated.calculateDistance3D(npc) < 5000)) + final Creature mostHated = ((Attackable) npc).getMostHated(); + if ((mostHated != null) && mostHated.isPlayer() && (npc.calculateDistance3D(npc) < 5000)) { - World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, mostHated, 23)); + World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, (Player) mostHated, 23)); } getTimers().addTimer("MINION_CALL", 5000 + (getRandom(5) * 1000), npc, null); break; diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java index 80dd650b89..49a224c8bc 100644 --- a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java +++ b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java @@ -370,10 +370,10 @@ public class OctavisWarzone extends AbstractInstance } case "MINION_CALL": { - final Player mostHated = ((Attackable) npc).getMostHated().getActingPlayer(); - if ((mostHated != null) && (mostHated.calculateDistance3D(npc) < 5000)) + final Creature mostHated = ((Attackable) npc).getMostHated(); + if ((mostHated != null) && mostHated.isPlayer() && (npc.calculateDistance3D(npc) < 5000)) { - World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, mostHated, 23)); + World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, (Player) mostHated, 23)); } getTimers().addTimer("MINION_CALL", 5000 + (getRandom(5) * 1000), npc, null); break; diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java index 80dd650b89..49a224c8bc 100644 --- a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java +++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java @@ -370,10 +370,10 @@ public class OctavisWarzone extends AbstractInstance } case "MINION_CALL": { - final Player mostHated = ((Attackable) npc).getMostHated().getActingPlayer(); - if ((mostHated != null) && (mostHated.calculateDistance3D(npc) < 5000)) + final Creature mostHated = ((Attackable) npc).getMostHated(); + if ((mostHated != null) && mostHated.isPlayer() && (npc.calculateDistance3D(npc) < 5000)) { - World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, mostHated, 23)); + World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, (Player) mostHated, 23)); } getTimers().addTimer("MINION_CALL", 5000 + (getRandom(5) * 1000), npc, null); break; diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java index 80dd650b89..49a224c8bc 100644 --- a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java +++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java @@ -370,10 +370,10 @@ public class OctavisWarzone extends AbstractInstance } case "MINION_CALL": { - final Player mostHated = ((Attackable) npc).getMostHated().getActingPlayer(); - if ((mostHated != null) && (mostHated.calculateDistance3D(npc) < 5000)) + final Creature mostHated = ((Attackable) npc).getMostHated(); + if ((mostHated != null) && mostHated.isPlayer() && (npc.calculateDistance3D(npc) < 5000)) { - World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, mostHated, 23)); + World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, (Player) mostHated, 23)); } getTimers().addTimer("MINION_CALL", 5000 + (getRandom(5) * 1000), npc, null); break; diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java index 80dd650b89..49a224c8bc 100644 --- a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java +++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java @@ -370,10 +370,10 @@ public class OctavisWarzone extends AbstractInstance } case "MINION_CALL": { - final Player mostHated = ((Attackable) npc).getMostHated().getActingPlayer(); - if ((mostHated != null) && (mostHated.calculateDistance3D(npc) < 5000)) + final Creature mostHated = ((Attackable) npc).getMostHated(); + if ((mostHated != null) && mostHated.isPlayer() && (npc.calculateDistance3D(npc) < 5000)) { - World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, mostHated, 23)); + World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, (Player) mostHated, 23)); } getTimers().addTimer("MINION_CALL", 5000 + (getRandom(5) * 1000), npc, null); break; diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java index 80dd650b89..49a224c8bc 100644 --- a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java +++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java @@ -370,10 +370,10 @@ public class OctavisWarzone extends AbstractInstance } case "MINION_CALL": { - final Player mostHated = ((Attackable) npc).getMostHated().getActingPlayer(); - if ((mostHated != null) && (mostHated.calculateDistance3D(npc) < 5000)) + final Creature mostHated = ((Attackable) npc).getMostHated(); + if ((mostHated != null) && mostHated.isPlayer() && (npc.calculateDistance3D(npc) < 5000)) { - World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, mostHated, 23)); + World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, (Player) mostHated, 23)); } getTimers().addTimer("MINION_CALL", 5000 + (getRandom(5) * 1000), npc, null); break; diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java index 80dd650b89..49a224c8bc 100644 --- a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java +++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java @@ -370,10 +370,10 @@ public class OctavisWarzone extends AbstractInstance } case "MINION_CALL": { - final Player mostHated = ((Attackable) npc).getMostHated().getActingPlayer(); - if ((mostHated != null) && (mostHated.calculateDistance3D(npc) < 5000)) + final Creature mostHated = ((Attackable) npc).getMostHated(); + if ((mostHated != null) && mostHated.isPlayer() && (npc.calculateDistance3D(npc) < 5000)) { - World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, mostHated, 23)); + World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, (Player) mostHated, 23)); } getTimers().addTimer("MINION_CALL", 5000 + (getRandom(5) * 1000), npc, null); break; diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java index 80dd650b89..49a224c8bc 100644 --- a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java +++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java @@ -370,10 +370,10 @@ public class OctavisWarzone extends AbstractInstance } case "MINION_CALL": { - final Player mostHated = ((Attackable) npc).getMostHated().getActingPlayer(); - if ((mostHated != null) && (mostHated.calculateDistance3D(npc) < 5000)) + final Creature mostHated = ((Attackable) npc).getMostHated(); + if ((mostHated != null) && mostHated.isPlayer() && (npc.calculateDistance3D(npc) < 5000)) { - World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, mostHated, 23)); + World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, (Player) mostHated, 23)); } getTimers().addTimer("MINION_CALL", 5000 + (getRandom(5) * 1000), npc, null); break; diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java index 80dd650b89..49a224c8bc 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java @@ -370,10 +370,10 @@ public class OctavisWarzone extends AbstractInstance } case "MINION_CALL": { - final Player mostHated = ((Attackable) npc).getMostHated().getActingPlayer(); - if ((mostHated != null) && (mostHated.calculateDistance3D(npc) < 5000)) + final Creature mostHated = ((Attackable) npc).getMostHated(); + if ((mostHated != null) && mostHated.isPlayer() && (npc.calculateDistance3D(npc) < 5000)) { - World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, mostHated, 23)); + World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, (Player) mostHated, 23)); } getTimers().addTimer("MINION_CALL", 5000 + (getRandom(5) * 1000), npc, null); break; diff --git a/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java b/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java index 80dd650b89..49a224c8bc 100644 --- a/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java +++ b/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/ai/bosses/Octavis/OctavisWarzone.java @@ -370,10 +370,10 @@ public class OctavisWarzone extends AbstractInstance } case "MINION_CALL": { - final Player mostHated = ((Attackable) npc).getMostHated().getActingPlayer(); - if ((mostHated != null) && (mostHated.calculateDistance3D(npc) < 5000)) + final Creature mostHated = ((Attackable) npc).getMostHated(); + if ((mostHated != null) && mostHated.isPlayer() && (npc.calculateDistance3D(npc) < 5000)) { - World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, mostHated, 23)); + World.getInstance().getVisibleObjectsInRange(npc, Attackable.class, 4000, obj -> CommonUtil.contains(BEASTS_MINIONS, obj.getId()) || CommonUtil.contains(GLADIATORS, obj.getId())).forEach(minion -> addAttackPlayerDesire(minion, (Player) mostHated, 23)); } getTimers().addTimer("MINION_CALL", 5000 + (getRandom(5) * 1000), npc, null); break;