From 25ff1c296eb8f24980399680538f21df81f95189 Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Mon, 9 Nov 2020 23:13:27 +0000 Subject: [PATCH] Member range check for Lindvior and Kelbim. Contributed by Sero. --- .../Lindvior/KatoSicanus/KatoSicanus.java | 7 ++++++ .../data/scripts/ai/bosses/Kelbim/Kelbim.java | 22 ++++++++++++------- .../Lindvior/KatoSicanus/KatoSicanus.java | 7 ++++++ .../data/scripts/ai/bosses/Kelbim/Kelbim.java | 22 ++++++++++++------- .../Lindvior/KatoSicanus/KatoSicanus.java | 7 ++++++ .../data/scripts/ai/bosses/Kelbim/Kelbim.java | 22 ++++++++++++------- .../Lindvior/KatoSicanus/KatoSicanus.java | 7 ++++++ .../data/scripts/ai/bosses/Kelbim/Kelbim.java | 22 ++++++++++++------- .../Lindvior/KatoSicanus/KatoSicanus.java | 7 ++++++ .../data/scripts/ai/bosses/Kelbim/Kelbim.java | 22 ++++++++++++------- .../Lindvior/KatoSicanus/KatoSicanus.java | 7 ++++++ .../data/scripts/ai/bosses/Kelbim/Kelbim.java | 22 ++++++++++++------- .../Lindvior/KatoSicanus/KatoSicanus.java | 7 ++++++ .../data/scripts/ai/bosses/Kelbim/Kelbim.java | 22 ++++++++++++------- .../Lindvior/KatoSicanus/KatoSicanus.java | 7 ++++++ .../data/scripts/ai/bosses/Kelbim/Kelbim.java | 22 ++++++++++++------- .../Lindvior/KatoSicanus/KatoSicanus.java | 7 ++++++ 17 files changed, 175 insertions(+), 64 deletions(-) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java index b36a140e10..66f8d63687 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java @@ -78,6 +78,13 @@ public class KatoSicanus extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE)) + { + return "33881-4.html"; + } + } if (!isPartyLeader) { return "33881-3.html"; diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java index 5987d7fb26..81fd9ae6e8 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java @@ -313,7 +313,6 @@ public class Kelbim extends AbstractNpcAI { return "34052-1.html"; } - if (!player.isInParty()) { final NpcHtmlMessage packet = new NpcHtmlMessage(npc.getObjectId()); @@ -327,6 +326,13 @@ public class Kelbim extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, 1000)) + { + return "34052-2.html"; + } + } if (!isPartyLeader) { return "34052-3.html"; @@ -342,18 +348,18 @@ public class Kelbim extends AbstractNpcAI { for (PlayerInstance member : members) { - if (member.isInsideRadius3D(npc, 1000)) + if ((status == ALIVE) && member.isInsideRadius3D(npc, 1000)) { + GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); + startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); member.teleToLocation(KELBIM_LOCATION, true); } + else + { + return "34052-3.html"; + } } } - - if (status == ALIVE) - { - GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); - startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); - } } return super.onTalk(npc, player); } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java index b36a140e10..66f8d63687 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java @@ -78,6 +78,13 @@ public class KatoSicanus extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE)) + { + return "33881-4.html"; + } + } if (!isPartyLeader) { return "33881-3.html"; diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java index 5987d7fb26..81fd9ae6e8 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java @@ -313,7 +313,6 @@ public class Kelbim extends AbstractNpcAI { return "34052-1.html"; } - if (!player.isInParty()) { final NpcHtmlMessage packet = new NpcHtmlMessage(npc.getObjectId()); @@ -327,6 +326,13 @@ public class Kelbim extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, 1000)) + { + return "34052-2.html"; + } + } if (!isPartyLeader) { return "34052-3.html"; @@ -342,18 +348,18 @@ public class Kelbim extends AbstractNpcAI { for (PlayerInstance member : members) { - if (member.isInsideRadius3D(npc, 1000)) + if ((status == ALIVE) && member.isInsideRadius3D(npc, 1000)) { + GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); + startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); member.teleToLocation(KELBIM_LOCATION, true); } + else + { + return "34052-3.html"; + } } } - - if (status == ALIVE) - { - GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); - startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); - } } return super.onTalk(npc, player); } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java index b36a140e10..66f8d63687 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java @@ -78,6 +78,13 @@ public class KatoSicanus extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE)) + { + return "33881-4.html"; + } + } if (!isPartyLeader) { return "33881-3.html"; diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java index 5987d7fb26..81fd9ae6e8 100644 --- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java +++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java @@ -313,7 +313,6 @@ public class Kelbim extends AbstractNpcAI { return "34052-1.html"; } - if (!player.isInParty()) { final NpcHtmlMessage packet = new NpcHtmlMessage(npc.getObjectId()); @@ -327,6 +326,13 @@ public class Kelbim extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, 1000)) + { + return "34052-2.html"; + } + } if (!isPartyLeader) { return "34052-3.html"; @@ -342,18 +348,18 @@ public class Kelbim extends AbstractNpcAI { for (PlayerInstance member : members) { - if (member.isInsideRadius3D(npc, 1000)) + if ((status == ALIVE) && member.isInsideRadius3D(npc, 1000)) { + GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); + startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); member.teleToLocation(KELBIM_LOCATION, true); } + else + { + return "34052-3.html"; + } } } - - if (status == ALIVE) - { - GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); - startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); - } } return super.onTalk(npc, player); } diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java index b36a140e10..66f8d63687 100644 --- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java +++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java @@ -78,6 +78,13 @@ public class KatoSicanus extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE)) + { + return "33881-4.html"; + } + } if (!isPartyLeader) { return "33881-3.html"; diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java index 5987d7fb26..81fd9ae6e8 100644 --- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java @@ -313,7 +313,6 @@ public class Kelbim extends AbstractNpcAI { return "34052-1.html"; } - if (!player.isInParty()) { final NpcHtmlMessage packet = new NpcHtmlMessage(npc.getObjectId()); @@ -327,6 +326,13 @@ public class Kelbim extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, 1000)) + { + return "34052-2.html"; + } + } if (!isPartyLeader) { return "34052-3.html"; @@ -342,18 +348,18 @@ public class Kelbim extends AbstractNpcAI { for (PlayerInstance member : members) { - if (member.isInsideRadius3D(npc, 1000)) + if ((status == ALIVE) && member.isInsideRadius3D(npc, 1000)) { + GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); + startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); member.teleToLocation(KELBIM_LOCATION, true); } + else + { + return "34052-3.html"; + } } } - - if (status == ALIVE) - { - GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); - startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); - } } return super.onTalk(npc, player); } diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java index b36a140e10..66f8d63687 100644 --- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java @@ -78,6 +78,13 @@ public class KatoSicanus extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE)) + { + return "33881-4.html"; + } + } if (!isPartyLeader) { return "33881-3.html"; diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java index 5987d7fb26..81fd9ae6e8 100644 --- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java @@ -313,7 +313,6 @@ public class Kelbim extends AbstractNpcAI { return "34052-1.html"; } - if (!player.isInParty()) { final NpcHtmlMessage packet = new NpcHtmlMessage(npc.getObjectId()); @@ -327,6 +326,13 @@ public class Kelbim extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, 1000)) + { + return "34052-2.html"; + } + } if (!isPartyLeader) { return "34052-3.html"; @@ -342,18 +348,18 @@ public class Kelbim extends AbstractNpcAI { for (PlayerInstance member : members) { - if (member.isInsideRadius3D(npc, 1000)) + if ((status == ALIVE) && member.isInsideRadius3D(npc, 1000)) { + GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); + startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); member.teleToLocation(KELBIM_LOCATION, true); } + else + { + return "34052-3.html"; + } } } - - if (status == ALIVE) - { - GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); - startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); - } } return super.onTalk(npc, player); } diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java index b36a140e10..66f8d63687 100644 --- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java @@ -78,6 +78,13 @@ public class KatoSicanus extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE)) + { + return "33881-4.html"; + } + } if (!isPartyLeader) { return "33881-3.html"; diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java index 5987d7fb26..81fd9ae6e8 100644 --- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java @@ -313,7 +313,6 @@ public class Kelbim extends AbstractNpcAI { return "34052-1.html"; } - if (!player.isInParty()) { final NpcHtmlMessage packet = new NpcHtmlMessage(npc.getObjectId()); @@ -327,6 +326,13 @@ public class Kelbim extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, 1000)) + { + return "34052-2.html"; + } + } if (!isPartyLeader) { return "34052-3.html"; @@ -342,18 +348,18 @@ public class Kelbim extends AbstractNpcAI { for (PlayerInstance member : members) { - if (member.isInsideRadius3D(npc, 1000)) + if ((status == ALIVE) && member.isInsideRadius3D(npc, 1000)) { + GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); + startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); member.teleToLocation(KELBIM_LOCATION, true); } + else + { + return "34052-3.html"; + } } } - - if (status == ALIVE) - { - GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); - startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); - } } return super.onTalk(npc, player); } diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java index b36a140e10..66f8d63687 100644 --- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java @@ -78,6 +78,13 @@ public class KatoSicanus extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE)) + { + return "33881-4.html"; + } + } if (!isPartyLeader) { return "33881-3.html"; diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java index 5987d7fb26..81fd9ae6e8 100644 --- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java +++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java @@ -313,7 +313,6 @@ public class Kelbim extends AbstractNpcAI { return "34052-1.html"; } - if (!player.isInParty()) { final NpcHtmlMessage packet = new NpcHtmlMessage(npc.getObjectId()); @@ -327,6 +326,13 @@ public class Kelbim extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, 1000)) + { + return "34052-2.html"; + } + } if (!isPartyLeader) { return "34052-3.html"; @@ -342,18 +348,18 @@ public class Kelbim extends AbstractNpcAI { for (PlayerInstance member : members) { - if (member.isInsideRadius3D(npc, 1000)) + if ((status == ALIVE) && member.isInsideRadius3D(npc, 1000)) { + GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); + startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); member.teleToLocation(KELBIM_LOCATION, true); } + else + { + return "34052-3.html"; + } } } - - if (status == ALIVE) - { - GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); - startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); - } } return super.onTalk(npc, player); } diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java index b36a140e10..66f8d63687 100644 --- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java +++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java @@ -78,6 +78,13 @@ public class KatoSicanus extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE)) + { + return "33881-4.html"; + } + } if (!isPartyLeader) { return "33881-3.html"; diff --git a/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java b/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java index 5987d7fb26..81fd9ae6e8 100644 --- a/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java +++ b/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/ai/bosses/Kelbim/Kelbim.java @@ -313,7 +313,6 @@ public class Kelbim extends AbstractNpcAI { return "34052-1.html"; } - if (!player.isInParty()) { final NpcHtmlMessage packet = new NpcHtmlMessage(npc.getObjectId()); @@ -327,6 +326,13 @@ public class Kelbim extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, 1000)) + { + return "34052-2.html"; + } + } if (!isPartyLeader) { return "34052-3.html"; @@ -342,18 +348,18 @@ public class Kelbim extends AbstractNpcAI { for (PlayerInstance member : members) { - if (member.isInsideRadius3D(npc, 1000)) + if ((status == ALIVE) && member.isInsideRadius3D(npc, 1000)) { + GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); + startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); member.teleToLocation(KELBIM_LOCATION, true); } + else + { + return "34052-3.html"; + } } } - - if (status == ALIVE) - { - GrandBossManager.getInstance().setBossStatus(KELBIM, WAITING); - startQuestTimer("stage_1_start", Config.KELBIM_WAIT_TIME * 60 * 1000, null, null); - } } return super.onTalk(npc, player); } diff --git a/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java b/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java index b36a140e10..66f8d63687 100644 --- a/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java +++ b/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/ai/bosses/Lindvior/KatoSicanus/KatoSicanus.java @@ -78,6 +78,13 @@ public class KatoSicanus extends AbstractNpcAI final boolean isInCC = party.isInCommandChannel(); final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player); + for (PlayerInstance member : members) + { + if (!member.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE)) + { + return "33881-4.html"; + } + } if (!isPartyLeader) { return "33881-3.html";