diff --git a/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_priestess_delrissa.cpp b/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_priestess_delrissa.cpp index 72ee8b461..aeb35cbf3 100644 --- a/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_priestess_delrissa.cpp +++ b/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_priestess_delrissa.cpp @@ -89,14 +89,16 @@ struct boss_priestess_delrissa : public BossAI void InitializeAI() override { ScriptedAI::InitializeAI(); - std::list helpersList; - for (uint8 i = 0; i < MAX_HELPERS_COUNT; ++i) - helpersList.push_back(helpersEntries[i]); - Acore::Containers::RandomResize(helpersList, MAX_ACTIVE_HELPERS); - uint8 j = 0; - for (std::list::const_iterator itr = helpersList.begin(); itr != helpersList.end(); ++itr, ++j) - me->SummonCreature(*itr, helpersLocations[j], TEMPSUMMON_MANUAL_DESPAWN, 0); + if (instance->GetBossState(DATA_DELRISSA) != DONE) + { + std::vector helpersList(std::begin(helpersEntries), std::end(helpersEntries)); + Acore::Containers::RandomResize(helpersList, MAX_ACTIVE_HELPERS); + + uint8 j = 0; + for (uint32 entry : helpersList) + me->SummonCreature(entry, helpersLocations[j++], TEMPSUMMON_MANUAL_DESPAWN, 0); + } } void JustSummoned(Creature* summon) override diff --git a/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp b/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp index 6b6d656fa..e59ef59c7 100644 --- a/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp +++ b/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp @@ -52,6 +52,11 @@ DoorData const doorData[] = { 0, 0, DOOR_TYPE_ROOM } // END }; +BossBoundaryData const boundaries = +{ + { DATA_KAELTHAS, new RectangleBoundary(118.64f, 178.63f, 125.69f, 210.70f) } +}; + Position const KalecgosSpawnPos = { 164.3747f, -397.1197f, 2.151798f, 1.66219f }; class instance_magisters_terrace : public InstanceMapScript @@ -65,6 +70,7 @@ public: { SetHeaders(DataHeader); SetBossNumber(MAX_ENCOUNTER); + LoadBossBoundaries(boundaries); SetPersistentDataCount(MAX_PERSISTENT_DATA); LoadObjectData(creatureData, gameobjectData); LoadDoorData(doorData);