83 static constexpr std::array<std::string_view, 4> KeeperStringId = {{
"StoneKeeper1",
"StoneKeeper2",
"StoneKeeper3",
"StoneKeeper4" }};
84 auto stringId = std::ranges::find_if(KeeperStringId, [creature](std::string_view stringId) {
return creature->
HasStringId(stringId); });
85 if (stringId != KeeperStringId.end())
191 if (minion->isDead())
203 if (!keeper->IsAlive())
std::set< ObjectGuid > GuidSet
uint32 const EncounterCount
ObjectGuid const & GetGUID() const
bool HasStringId(std::string_view id) const
void SetFlag(GameObjectFlags flags)
void SetBossNumber(uint32 number)
virtual bool SetBossState(uint32 id, EncounterState state)
virtual void OnCreatureCreate(Creature *creature) override
Creature * GetCreature(uint32 type)
void HandleGameObject(ObjectGuid guid, bool open, GameObject *go=nullptr)
virtual void OnCreatureRemove(Creature *creature) override
void LoadObjectData(std::span< ObjectData const > creatureData, std::span< ObjectData const > gameObjectData)
void SetHeaders(std::string_view dataHeaders)
void LoadDungeonEncounterData(std::span< DungeonEncounterData const > encounters)
virtual void OnGameObjectCreate(GameObject *go) override
void LoadDoorData(std::span< DoorData const > data)
GameObject * GetGameObject(uint32 type)
bool SpawnGroupSpawn(uint32 groupId, bool ignoreRespawn=false, bool force=false, std::vector< WorldObject * > *spawnedObjects=nullptr)
Creature * GetCreature(ObjectGuid const &guid)
static ObjectGuid const Empty
virtual void OnUnitDeath(Unit *unit)
InstanceScript * GetInstanceScript(InstanceMap *map) const override
static constexpr ObjectData creatureData[]
static constexpr DungeonEncounterData Encounters[]
void AddSC_instance_uldaman()
static constexpr DoorData doorData[]
static constexpr ObjectData gameObjectData[]
uint32 GetData(uint32 type) const override
void OnUnitDeath(Unit *unit) override
void ProcessEvent(WorldObject *, uint32 eventId, WorldObject *) override
instance_uldaman_InstanceMapScript(InstanceMap *map)
void OnCreatureCreate(Creature *creature) override
GuidSet ArchaedasMinionsGuidSet
void OnGameObjectCreate(GameObject *go) override
std::array< ObjectGuid, 4 > StoneKeeperGuid
void SetData(uint32 type, uint32 data) override
bool SetBossState(uint32 bossId, EncounterState state) override
void OnCreatureRemove(Creature *creature) override
@ ACTION_ARCHAEDAS_AWAKEN
@ ACTION_KEEPER_ACTIVATED
@ DATA_GALGANN_FIREHAMMER
@ DATA_ANCIENT_STONE_KEEPER
#define UldamanScriptName
@ NPC_ANCIENT_STONE_KEEPER
@ GO_TEMPLE_DOOR_ARCHAEDAS
@ GO_TEMPLE_DOOR_TO_ARCHAEDAS
@ GO_TEMPLE_DOOR_TO_KEEPERS