From f6bd29e597b9e26a632673ce116bd5876860afed Mon Sep 17 00:00:00 2001 From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com> Date: Fri, 22 Jan 2016 09:26:33 +0000 Subject: [PATCH] Reworked TurekOrcs AI. Contributed by Stayway. --- .../data/scripts/ai/group_template/TurekOrcs.java | 15 +++++++++------ trunk/dist/game/data/stats/npcs/23400-23499.xml | 4 ++-- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/trunk/dist/game/data/scripts/ai/group_template/TurekOrcs.java b/trunk/dist/game/data/scripts/ai/group_template/TurekOrcs.java index 982a37cb6a..82b80561cd 100644 --- a/trunk/dist/game/data/scripts/ai/group_template/TurekOrcs.java +++ b/trunk/dist/game/data/scripts/ai/group_template/TurekOrcs.java @@ -36,17 +36,21 @@ import ai.npc.AbstractNpcAI; */ public final class TurekOrcs extends AbstractNpcAI { - // Monster to spwan + // Monster to spawn private static final int CHERTUBA_ILLUSION = 23422; + private static final int CHERTUBA_MIRAGE = 23421; // NPCs private static final int[] MOBS = { 20494, // Turek War Hound - 20495, // Turek Orc Warlord + 20495, // Turek Orc Prefect + 20496, // Turek Orc Archer 20497, // Turek Orc Skirmisher 20498, // Turek Orc Supplier 20499, // Turek Orc Footman 20500, // Turek Orc Sentinel + 20501, // Turek Orc Priest + 20546, // Turek Orc Elder }; private TurekOrcs() @@ -55,7 +59,7 @@ public final class TurekOrcs extends AbstractNpcAI addAttackId(MOBS); addEventReceivedId(MOBS); addMoveFinishedId(MOBS); - addKillId(20497, 20499); + addKillId(20495, 20496, 20497, 20499, 20500, 20501, 20546); } @Override @@ -112,8 +116,8 @@ public final class TurekOrcs extends AbstractNpcAI @Override public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) { - final L2Npc illusion = addSpawn(CHERTUBA_ILLUSION, npc.getLocation(), false, 300000); // 5 minute despawn time - ((L2MonsterInstance) illusion).addDamage(killer, 1, null); + final L2Npc newSpawn = addSpawn(getRandomBoolean() ? CHERTUBA_MIRAGE : CHERTUBA_ILLUSION, npc.getLocation(), false, 300000); // 5 minute despawn time + ((L2MonsterInstance) newSpawn).addDamage(killer, 1, null); showOnScreenMsg(killer, NpcStringId.A_POWERFUL_MONSTER_HAS_COME_TO_FACE_YOU, ExShowScreenMessage.TOP_CENTER, 4500); return super.onKill(npc, killer, isSummon); } @@ -141,7 +145,6 @@ public final class TurekOrcs extends AbstractNpcAI npc.disableCoreAI(false); npc.getVariables().remove("state"); } - } public static void main(String[] args) diff --git a/trunk/dist/game/data/stats/npcs/23400-23499.xml b/trunk/dist/game/data/stats/npcs/23400-23499.xml index 2ea5b1f164..9aedfd6f86 100644 --- a/trunk/dist/game/data/stats/npcs/23400-23499.xml +++ b/trunk/dist/game/data/stats/npcs/23400-23499.xml @@ -626,7 +626,7 @@ - + HUMANOID MALE @@ -641,7 +641,7 @@ - +