From 8769eb492677ad506271883b4c3fc851f80158cd Mon Sep 17 00:00:00 2001 From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com> Date: Thu, 30 Aug 2018 19:02:53 +0000 Subject: [PATCH] Improvements for Talking Island aggro soldier AIs. --- .../areas/TalkingIsland/TrainningSoldier.java | 4 ++-- .../areas/TalkingIsland/YeSagiraGuards.java | 19 +++++++++++-------- .../areas/TalkingIsland/TrainningSoldier.java | 4 ++-- .../areas/TalkingIsland/YeSagiraGuards.java | 19 +++++++++++-------- .../areas/TalkingIsland/TrainningSoldier.java | 4 ++-- .../areas/TalkingIsland/YeSagiraGuards.java | 19 +++++++++++-------- .../areas/TalkingIsland/TrainningSoldier.java | 4 ++-- .../areas/TalkingIsland/YeSagiraGuards.java | 19 +++++++++++-------- 8 files changed, 52 insertions(+), 40 deletions(-) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java index ae6ef5fab3..9e10b3b24d 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java @@ -40,9 +40,9 @@ public final class TrainningSoldier extends AbstractNpcAI @Override public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) { - if ((npc != null) && !npc.isDead()) + if ((npc != null)) { - if (!npc.isInCombat()) + if (!npc.isInCombat() && !npc.isDead()) { for (L2Npc nearby : L2World.getInstance().getVisibleObjects(npc, L2Npc.class, 150)) { diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java index 162afb2aa7..0304f576ce 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java @@ -46,18 +46,21 @@ public final class YeSagiraGuards extends AbstractNpcAI @Override public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) { - if ((npc != null) && !npc.isDead() && !npc.isInCombat()) + if ((npc != null)) { - final List nearbyMonsters = L2World.getInstance().getVisibleObjects(npc, L2MonsterInstance.class, 1000); - if (!nearbyMonsters.isEmpty()) + if (!npc.isInCombat() && !npc.isDead()) { - final L2MonsterInstance monster = nearbyMonsters.get(getRandom(nearbyMonsters.size())); - if ((monster != null) && !monster.isDead() && !monster.isInCombat()) + final List nearbyMonsters = L2World.getInstance().getVisibleObjects(npc, L2MonsterInstance.class, 1000); + if (!nearbyMonsters.isEmpty()) { - npc.reduceCurrentHp(1, monster, null); // TODO: Find better way for attack + final L2MonsterInstance monster = nearbyMonsters.get(getRandom(nearbyMonsters.size())); + if ((monster != null) && !monster.isDead() && !monster.isInCombat()) + { + npc.reduceCurrentHp(1, monster, null); // TODO: Find better way for attack + } } } - startQuestTimer("GUARD_AGGRO" + npc.getObjectId(), 10000, npc, null); + startQuestTimer("GUARD_AGGRO", 10000, npc, null); } return super.onAdvEvent(event, npc, player); } @@ -66,7 +69,7 @@ public final class YeSagiraGuards extends AbstractNpcAI public String onSpawn(L2Npc npc) { npc.setIsInvul(true); - startQuestTimer("GUARD_AGGRO" + npc.getObjectId(), 5000, npc, null); + startQuestTimer("GUARD_AGGRO", 5000, npc, null); return super.onSpawn(npc); } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java index ae6ef5fab3..9e10b3b24d 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java @@ -40,9 +40,9 @@ public final class TrainningSoldier extends AbstractNpcAI @Override public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) { - if ((npc != null) && !npc.isDead()) + if ((npc != null)) { - if (!npc.isInCombat()) + if (!npc.isInCombat() && !npc.isDead()) { for (L2Npc nearby : L2World.getInstance().getVisibleObjects(npc, L2Npc.class, 150)) { diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java index 162afb2aa7..0304f576ce 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java @@ -46,18 +46,21 @@ public final class YeSagiraGuards extends AbstractNpcAI @Override public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) { - if ((npc != null) && !npc.isDead() && !npc.isInCombat()) + if ((npc != null)) { - final List nearbyMonsters = L2World.getInstance().getVisibleObjects(npc, L2MonsterInstance.class, 1000); - if (!nearbyMonsters.isEmpty()) + if (!npc.isInCombat() && !npc.isDead()) { - final L2MonsterInstance monster = nearbyMonsters.get(getRandom(nearbyMonsters.size())); - if ((monster != null) && !monster.isDead() && !monster.isInCombat()) + final List nearbyMonsters = L2World.getInstance().getVisibleObjects(npc, L2MonsterInstance.class, 1000); + if (!nearbyMonsters.isEmpty()) { - npc.reduceCurrentHp(1, monster, null); // TODO: Find better way for attack + final L2MonsterInstance monster = nearbyMonsters.get(getRandom(nearbyMonsters.size())); + if ((monster != null) && !monster.isDead() && !monster.isInCombat()) + { + npc.reduceCurrentHp(1, monster, null); // TODO: Find better way for attack + } } } - startQuestTimer("GUARD_AGGRO" + npc.getObjectId(), 10000, npc, null); + startQuestTimer("GUARD_AGGRO", 10000, npc, null); } return super.onAdvEvent(event, npc, player); } @@ -66,7 +69,7 @@ public final class YeSagiraGuards extends AbstractNpcAI public String onSpawn(L2Npc npc) { npc.setIsInvul(true); - startQuestTimer("GUARD_AGGRO" + npc.getObjectId(), 5000, npc, null); + startQuestTimer("GUARD_AGGRO", 5000, npc, null); return super.onSpawn(npc); } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java index ae6ef5fab3..9e10b3b24d 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java @@ -40,9 +40,9 @@ public final class TrainningSoldier extends AbstractNpcAI @Override public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) { - if ((npc != null) && !npc.isDead()) + if ((npc != null)) { - if (!npc.isInCombat()) + if (!npc.isInCombat() && !npc.isDead()) { for (L2Npc nearby : L2World.getInstance().getVisibleObjects(npc, L2Npc.class, 150)) { diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java index 162afb2aa7..0304f576ce 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java @@ -46,18 +46,21 @@ public final class YeSagiraGuards extends AbstractNpcAI @Override public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) { - if ((npc != null) && !npc.isDead() && !npc.isInCombat()) + if ((npc != null)) { - final List nearbyMonsters = L2World.getInstance().getVisibleObjects(npc, L2MonsterInstance.class, 1000); - if (!nearbyMonsters.isEmpty()) + if (!npc.isInCombat() && !npc.isDead()) { - final L2MonsterInstance monster = nearbyMonsters.get(getRandom(nearbyMonsters.size())); - if ((monster != null) && !monster.isDead() && !monster.isInCombat()) + final List nearbyMonsters = L2World.getInstance().getVisibleObjects(npc, L2MonsterInstance.class, 1000); + if (!nearbyMonsters.isEmpty()) { - npc.reduceCurrentHp(1, monster, null); // TODO: Find better way for attack + final L2MonsterInstance monster = nearbyMonsters.get(getRandom(nearbyMonsters.size())); + if ((monster != null) && !monster.isDead() && !monster.isInCombat()) + { + npc.reduceCurrentHp(1, monster, null); // TODO: Find better way for attack + } } } - startQuestTimer("GUARD_AGGRO" + npc.getObjectId(), 10000, npc, null); + startQuestTimer("GUARD_AGGRO", 10000, npc, null); } return super.onAdvEvent(event, npc, player); } @@ -66,7 +69,7 @@ public final class YeSagiraGuards extends AbstractNpcAI public String onSpawn(L2Npc npc) { npc.setIsInvul(true); - startQuestTimer("GUARD_AGGRO" + npc.getObjectId(), 5000, npc, null); + startQuestTimer("GUARD_AGGRO", 5000, npc, null); return super.onSpawn(npc); } diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java index ae6ef5fab3..9e10b3b24d 100644 --- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java +++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/TrainningSoldier.java @@ -40,9 +40,9 @@ public final class TrainningSoldier extends AbstractNpcAI @Override public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) { - if ((npc != null) && !npc.isDead()) + if ((npc != null)) { - if (!npc.isInCombat()) + if (!npc.isInCombat() && !npc.isDead()) { for (L2Npc nearby : L2World.getInstance().getVisibleObjects(npc, L2Npc.class, 150)) { diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java index 162afb2aa7..0304f576ce 100644 --- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java +++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/YeSagiraGuards.java @@ -46,18 +46,21 @@ public final class YeSagiraGuards extends AbstractNpcAI @Override public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) { - if ((npc != null) && !npc.isDead() && !npc.isInCombat()) + if ((npc != null)) { - final List nearbyMonsters = L2World.getInstance().getVisibleObjects(npc, L2MonsterInstance.class, 1000); - if (!nearbyMonsters.isEmpty()) + if (!npc.isInCombat() && !npc.isDead()) { - final L2MonsterInstance monster = nearbyMonsters.get(getRandom(nearbyMonsters.size())); - if ((monster != null) && !monster.isDead() && !monster.isInCombat()) + final List nearbyMonsters = L2World.getInstance().getVisibleObjects(npc, L2MonsterInstance.class, 1000); + if (!nearbyMonsters.isEmpty()) { - npc.reduceCurrentHp(1, monster, null); // TODO: Find better way for attack + final L2MonsterInstance monster = nearbyMonsters.get(getRandom(nearbyMonsters.size())); + if ((monster != null) && !monster.isDead() && !monster.isInCombat()) + { + npc.reduceCurrentHp(1, monster, null); // TODO: Find better way for attack + } } } - startQuestTimer("GUARD_AGGRO" + npc.getObjectId(), 10000, npc, null); + startQuestTimer("GUARD_AGGRO", 10000, npc, null); } return super.onAdvEvent(event, npc, player); } @@ -66,7 +69,7 @@ public final class YeSagiraGuards extends AbstractNpcAI public String onSpawn(L2Npc npc) { npc.setIsInvul(true); - startQuestTimer("GUARD_AGGRO" + npc.getObjectId(), 5000, npc, null); + startQuestTimer("GUARD_AGGRO", 5000, npc, null); return super.onSpawn(npc); }