/* * This file is part of the TrinityCore Project. See AUTHORS file for Copyright information * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2 of the License, or (at your * option) any later version. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * more details. * * You should have received a copy of the GNU General Public License along * with this program. If not, see . */ #ifndef BLACK_TEMPLE_H_ #define BLACK_TEMPLE_H_ #include "CreatureAIImpl.h" #define BTScriptName "instance_black_temple" #define DataHeader "BT" uint32 const EncounterCount = 9; enum BTDataTypes { // Encounter States DATA_HIGH_WARLORD_NAJENTUS = 0, DATA_SUPREMUS = 1, DATA_SHADE_OF_AKAMA = 2, DATA_TERON_GOREFIEND = 3, DATA_GURTOGG_BLOODBOIL = 4, DATA_RELIQUARY_OF_SOULS = 5, DATA_MOTHER_SHAHRAZ = 6, DATA_ILLIDARI_COUNCIL = 7, DATA_ILLIDAN_STORMRAGE = 8, // Additional Data DATA_AKAMA_SHADE = 9, DATA_AKAMA = 10, DATA_MAIEV = 11, DATA_GO_ILLIDAN_GATE = 12, DATA_BLACK_TEMPLE_TRIGGER = 13, DATA_GATHIOS_THE_SHATTERER = 14, DATA_HIGH_NETHERMANCER_ZEREVOR = 15, DATA_LADY_MALANDE = 16, DATA_VERAS_DARKSHADOW = 17, DATA_BLOOD_ELF_COUNCIL_VOICE = 18, DATA_GO_DEN_OF_MORTAL_DOOR = 19, DATA_ESSENCE_OF_SUFFERING = 20, DATA_ESSENCE_OF_DESIRE = 21, DATA_ESSENCE_OF_ANGER = 22, DATA_ILLIDAN_MUSIC_CONTROLLER = 23, DATA_AKAMA_ILLIDAN_INTRO = 24, DATA_RELIQUARY_COMBAT_TRIGGER = 25 }; enum TriggerEmotes { EMOTE_HIGH_WARLORD_NAJENTUS_DIED = 0, EMOTE_DEN_OF_MORTAL_DOOR_OPEN = 1 }; enum BTCreatureIds { //Bosses NPC_HIGH_WARLORD_NAJENTUS = 22887, NPC_SUPREMUS = 22898, NPC_SHADE_OF_AKAMA = 22841, NPC_TERON_GOREFIEND = 22871, NPC_GURTOGG_BLOODBOIL = 22948, NPC_RELIQUARY_OF_SOULS = 22856, NPC_MOTHER_SHAHRAZ = 22947, NPC_ILLIDARI_COUNCIL = 23426, NPC_ILLIDAN_STORMRAGE = 22917, //Misc NPC_GATHIOS_THE_SHATTERER = 22949, NPC_HIGH_NETHERMANCER_ZEREVOR = 22950, NPC_LADY_MALANDE = 22951, NPC_VERAS_DARKSHADOW = 22952, NPC_BLOOD_ELF_COUNCIL_VOICE = 23499, NPC_AKAMA = 23089, // This is the Akama that starts the Illidan encounter. NPC_AKAMA_SHADE = 23191, // This is the Akama that starts the Shade of Akama encounter. NPC_SUPREMUS_VOLCANO = 23085, NPC_BLACK_TEMPLE_TRIGGER = 22984, NPC_RELIQUARY_WORLD_TRIGGER = 23472, NPC_ENSLAVED_SOUL = 23469, NPC_ASHTONGUE_STALKER = 23374, NPC_ASHTONGUE_BATTLELORD = 22844, NPC_ASHTONGUE_MYSTIC = 22845, NPC_ASHTONGUE_PRIMALIST = 22847, NPC_ASHTONGUE_STORMCALLER = 22846, NPC_ASHTONGUE_FERAL_SPIRIT = 22849, NPC_STORM_FURY = 22848, NPC_SPIRIT_OF_UDALO = 23410, NPC_SPIRIT_OF_OLUM = 23411, NPC_FLAME_OF_AZZINOTH = 22997, NPC_BLADE_OF_AZZINOTH = 22996, NPC_MAIEV_SHADOWSONG = 23197, NPC_ILLIDAN_DB_TARGET = 23070, NPC_ILLIDARI_ELITE = 23226, NPC_GLAIVE_TARGET = 23448, NPC_GLAIVE_WORLD_TRIGGER = 22515, NPC_DEMON_FIRE = 23069, NPC_PARASITIC_SHADOWFIEND = 23498, NPC_BLAZE = 23259, NPC_FLAME_CRASH = 23336, NPC_RELIQUARY_COMBAT_TRIGGER = 23417 }; enum BTGameObjectIds { GO_NAJENTUS_GATE = 185483, GO_NAJENTUS_SPINE = 185584, GO_SUPREMUS_GATE = 185882, GO_SHADE_OF_AKAMA_DOOR = 185478, GO_TERON_DOOR_1 = 185480, GO_TERON_DOOR_2 = 186153, GO_GURTOGG_DOOR = 185892, GO_DEN_OF_MORTAL_DOOR = 185479, GO_MOTHER_SHAHRAZ_DOOR = 185482, GO_COUNCIL_DOOR_1 = 185481, GO_COUNCIL_DOOR_2 = 186152, GO_ILLIDAN_GATE = 185905, GO_ILLIDAN_DOOR_R = 186261, GO_ILLIDAN_DOOR_L = 186262, GO_ILLIDAN_CAGE_TRAP = 185916, GO_ILLIDAN_MUSIC_CONTROLLER = 185966 }; enum BlackTempleMisc { AKAMA_INTRO = 1, AKAMA_FIGHT = 2, ACTION_ACTIVE_AKAMA_INTRO = 3, ACTION_OPEN_DOOR = 4 }; template inline AI* GetBlackTempleAI(T* obj) { return GetInstanceAI(obj, BTScriptName); } #define RegisterBlackTempleCreatureAI(ai_name) RegisterCreatureAIWithFactory(ai_name, GetBlackTempleAI) #endif // BLACK_TEMPLE_H_