/* * 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 DEF_STRATHOLME_H #define DEF_STRATHOLME_H #include "CreatureAIImpl.h" #define StratholmeScriptName "instance_stratholme" #define DataHeader "STR" enum STRBossIds { BOSS_HEARTHSINGER_FORRESTEN = 0, BOSS_TIMMY_THE_CRUEL = 1, BOSS_COMMANDER_MALOR = 2, BOSS_WILLEY_HOPEBREAKER = 3, BOSS_INSTRUCTOR_GALFORD = 4, BOSS_BALNAZZAR = 5, BOSS_THE_UNFORGIVEN = 6, BOSS_BARONESS_ANASTARI = 7, BOSS_NERUB_ENKAN = 8, BOSS_MALEKI_THE_PALLID = 9, BOSS_MAGISTRATE_BARTHILAS = 10, BOSS_RAMSTEIN_THE_GORGER = 11, BOSS_RIVENDARE = 12, BOSS_POSTMASTER_MALOWN = 13, MAX_ENCOUNTER }; enum STRDataTypes { TYPE_BARON_RUN = 1, TYPE_BARONESS = 2, TYPE_NERUB = 3, TYPE_PALLID = 4, TYPE_RAMSTEIN = 5, TYPE_BARON = 6, DATA_BARON = 10, DATA_YSIDA_TRIGGER = 11, TYPE_SH_QUEST = 20, TYPE_SH_CATHELA = 21, TYPE_SH_GREGOR = 22, TYPE_SH_NEMAS = 23, TYPE_SH_VICAR = 24, TYPE_SH_AELMAR = 25 }; enum STRCreatureIds { NPC_HEARTHSINGER_FORRESTEN = 10558, NPC_COMMANDER_MALOR = 11032, NPC_INSTRUCTOR_GALFORD = 10811, NPC_THE_UNFORGIVEN = 10516, NPC_CRYSTAL = 10415, // ziggurat crystal NPC_BARON = 10440, // ziggurat crystal NPC_YSIDA_TRIGGER = 16100, // ziggurat crystal NPC_RAMSTEIN = 10439, NPC_ABOM_BILE = 10416, NPC_ABOM_VENOM = 10417, NPC_BLACK_GUARD = 10394, NPC_YSIDA = 16031, // Scarlet side creatures NPC_CRIMSON_GUARDSMAN = 10418, NPC_CRIMSON_CONJUROR = 10419, NPC_CRIMSON_INITATE = 10420, NPC_CRIMSON_GALLANT = 10424, NPC_TIMMY_THE_CRUEL = 10808 }; enum STRGameobjectIds { GO_DOOR_HALAZZI = 186303, GO_SERVICE_ENTRANCE = 175368, GO_GAUNTLET_GATE1 = 175357, GO_ZIGGURAT1 = 175380, // baroness GO_ZIGGURAT2 = 175379, // nerub'enkan GO_ZIGGURAT3 = 175381, // maleki GO_ZIGGURAT4 = 175405, // rammstein GO_ZIGGURAT5 = 175796, // baron GO_PORT_GAUNTLET = 175374, // port from gauntlet to slaugther GO_PORT_SLAUGTHER = 175373, // port at slaugther GO_PORT_ELDERS = 175377, // port at elders square GO_YSIDA_CAGE = 181071 }; enum STRQuestIds { QUEST_DEAD_MAN_PLEA = 8945 }; enum STRSpellIds { SPELL_BARON_ULTIMATUM = 27861, SPELL_PERM_FEIGN_DEATH = 29266, SPELL_YSIDA_SAVED = 31912, SPELL_YSIDA_CREDIT_EFFECT = 31913 }; enum STRMisc { //! amount of crusade monsters required to be killed in order for timmy the cruel to spawn TIMMY_THE_CRUEL_CRUSADERS_REQUIRED = 15, }; template inline AI* GetStratholmeAI(T* obj) { return GetInstanceAI(obj, StratholmeScriptName); } #define RegisterStratholmeCreatureAI(ai_name) RegisterCreatureAIWithFactory(ai_name, GetStratholmeAI) #endif