diff options
author | ModoX <moardox@gmail.com> | 2023-11-06 00:11:42 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-06 00:11:42 +0100 |
commit | 0e2f04172864e3cff2b5559ac89ded23ade5f92e (patch) | |
tree | 7b1a3600441c45eaba143da3dfdfd807449fb498 | |
parent | caa4cfb5695deabd0bb9059f01435f3c8027aff7 (diff) |
Core/InstanceScript: Refactored door types to reflect its behavior (#29406)
42 files changed, 275 insertions, 273 deletions
diff --git a/src/server/game/Instances/InstanceScript.cpp b/src/server/game/Instances/InstanceScript.cpp index f407ad4ec45..47d85fb55e9 100644 --- a/src/server/game/Instances/InstanceScript.cpp +++ b/src/server/game/Instances/InstanceScript.cpp @@ -183,7 +183,7 @@ void InstanceScript::LoadDoorData(DoorData const* data) while (data->entry) { if (data->bossId < bosses.size()) - doors.insert(std::make_pair(data->entry, DoorInfo(&bosses[data->bossId], data->type))); + doors.insert(std::make_pair(data->entry, DoorInfo(&bosses[data->bossId], data->Behavior))); ++data; } @@ -228,17 +228,20 @@ void InstanceScript::UpdateDoorState(GameObject* door) for (; range.first != range.second && open; ++range.first) { DoorInfo const& info = range.first->second; - switch (info.type) + switch (info.Behavior) { - case DOOR_TYPE_ROOM: + case EncounterDoorBehavior::OpenWhenNotInProgress: open = (info.bossInfo->state != IN_PROGRESS); break; - case DOOR_TYPE_PASSAGE: + case EncounterDoorBehavior::OpenWhenDone: open = (info.bossInfo->state == DONE); break; - case DOOR_TYPE_SPAWN_HOLE: + case EncounterDoorBehavior::OpenWhenInProgress: open = (info.bossInfo->state == IN_PROGRESS); break; + case EncounterDoorBehavior::OpenWhenNotDone: + open = (info.bossInfo->state != DONE); + break; default: break; } @@ -347,11 +350,9 @@ void InstanceScript::AddDoor(GameObject* door, bool add) DoorInfo const& data = range.first->second; if (add) - { - data.bossInfo->door[data.type].insert(door->GetGUID()); - } + data.bossInfo->door[AsUnderlyingType(data.Behavior)].insert(door->GetGUID()); else - data.bossInfo->door[data.type].erase(door->GetGUID()); + data.bossInfo->door[AsUnderlyingType(data.Behavior)].erase(door->GetGUID()); } if (add) @@ -454,9 +455,9 @@ bool InstanceScript::SetBossState(uint32 id, EncounterState state) instance->UpdateInstanceLock({ dungeonEncounter, id, state }); } - for (uint32 type = 0; type < MAX_DOOR_TYPES; ++type) - for (GuidSet::iterator i = bossInfo->door[type].begin(); i != bossInfo->door[type].end(); ++i) - if (GameObject* door = instance->GetGameObject(*i)) + for (GuidSet const& doorSet : bossInfo->door) + for (ObjectGuid const& doorGUID : doorSet) + if (GameObject* door = instance->GetGameObject(doorGUID)) UpdateDoorState(door); GuidSet minions = bossInfo->minion; // Copy to prevent iterator invalidation (minion might be unsummoned in UpdateMinionState) diff --git a/src/server/game/Instances/InstanceScript.h b/src/server/game/Instances/InstanceScript.h index d62233768a8..2235fc1c6f9 100644 --- a/src/server/game/Instances/InstanceScript.h +++ b/src/server/game/Instances/InstanceScript.h @@ -77,12 +77,13 @@ enum EncounterState TO_BE_DECIDED = 5 }; -enum DoorType +enum class EncounterDoorBehavior : uint8 { - DOOR_TYPE_ROOM = 0, // Door can open if encounter is not in progress - DOOR_TYPE_PASSAGE = 1, // Door can open if encounter is done - DOOR_TYPE_SPAWN_HOLE = 2, // Door can open if encounter is in progress, typically used for spawning places - MAX_DOOR_TYPES + OpenWhenNotInProgress = 0, // open if encounter is not in progress + OpenWhenDone = 1, // open if encounter is done + OpenWhenInProgress = 2, // open if encounter is in progress, typically used for spawning places + OpenWhenNotDone = 3, // open if encounter is not done + Max }; static constexpr uint32 MAX_DUNGEON_ENCOUNTERS_PER_BOSS = 4; @@ -96,7 +97,7 @@ struct DungeonEncounterData struct DoorData { uint32 entry, bossId; - DoorType type; + EncounterDoorBehavior Behavior; }; struct BossBoundaryEntry @@ -139,7 +140,7 @@ struct BossInfo DungeonEncounterEntry const* GetDungeonEncounterForDifficulty(Difficulty difficulty) const; EncounterState state; - GuidSet door[MAX_DOOR_TYPES]; + std::array<GuidSet, static_cast<uint8>(EncounterDoorBehavior::Max)> door; GuidSet minion; CreatureBoundary boundary; std::array<DungeonEncounterEntry const*, MAX_DUNGEON_ENCOUNTERS_PER_BOSS> DungeonEncounters; @@ -147,10 +148,10 @@ struct BossInfo struct DoorInfo { - explicit DoorInfo(BossInfo* _bossInfo, DoorType _type) - : bossInfo(_bossInfo), type(_type) { } + explicit DoorInfo(BossInfo* _bossInfo, EncounterDoorBehavior _behavior) + : bossInfo(_bossInfo), Behavior(_behavior) { } BossInfo* bossInfo; - DoorType type; + EncounterDoorBehavior Behavior; }; struct MinionInfo diff --git a/src/server/scripts/Argus/AntorusTheBurningThrone/instance_antorus_the_burning_throne.cpp b/src/server/scripts/Argus/AntorusTheBurningThrone/instance_antorus_the_burning_throne.cpp index ef6acfa964b..d9a3d5aba50 100644 --- a/src/server/scripts/Argus/AntorusTheBurningThrone/instance_antorus_the_burning_throne.cpp +++ b/src/server/scripts/Argus/AntorusTheBurningThrone/instance_antorus_the_burning_throne.cpp @@ -32,9 +32,9 @@ ObjectData const creatureData[] = DoorData const doorData[] = { - { GO_COLLISION, DATA_GAROTHI_WORLDBREAKER, DOOR_TYPE_PASSAGE }, - { GO_ROCK, DATA_GAROTHI_WORLDBREAKER, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_COLLISION, DATA_GAROTHI_WORLDBREAKER, EncounterDoorBehavior::OpenWhenDone }, + { GO_ROCK, DATA_GAROTHI_WORLDBREAKER, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/BrokenIsles/TrialOfValor/instance_trial_of_valor.cpp b/src/server/scripts/BrokenIsles/TrialOfValor/instance_trial_of_valor.cpp index 5ff254f78cf..9a9552b3dc4 100644 --- a/src/server/scripts/BrokenIsles/TrialOfValor/instance_trial_of_valor.cpp +++ b/src/server/scripts/BrokenIsles/TrialOfValor/instance_trial_of_valor.cpp @@ -35,9 +35,9 @@ ObjectData const creatureData[] = DoorData const doorData[] = { - { GO_GUARM_BOSS_DOOR_ENTRANCE, DATA_GUARM, DOOR_TYPE_ROOM }, - { GO_GUARM_BOSS_DOOR_EXIT, DATA_GUARM, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_GUARM_BOSS_DOOR_ENTRANCE, DATA_GUARM, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_GUARM_BOSS_DOOR_EXIT, DATA_GUARM, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/DragonIsles/AberrusTheShadowedCrucible/instance_aberrus_the_shadowed_crucible.cpp b/src/server/scripts/DragonIsles/AberrusTheShadowedCrucible/instance_aberrus_the_shadowed_crucible.cpp index c20149c8e94..d6e21bd63c8 100644 --- a/src/server/scripts/DragonIsles/AberrusTheShadowedCrucible/instance_aberrus_the_shadowed_crucible.cpp +++ b/src/server/scripts/DragonIsles/AberrusTheShadowedCrucible/instance_aberrus_the_shadowed_crucible.cpp @@ -36,8 +36,8 @@ ObjectData const creatureData[] = DoorData const doorData[] = { - { GO_KAZZARA_DOOR, DATA_KAZZARA_THE_HELLFORGED, DOOR_TYPE_ROOM }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_KAZZARA_DOOR, DATA_KAZZARA_THE_HELLFORGED, EncounterDoorBehavior::OpenWhenNotInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; ObjectData const objectData[] = diff --git a/src/server/scripts/DragonIsles/AzureVault/instance_azure_vault.cpp b/src/server/scripts/DragonIsles/AzureVault/instance_azure_vault.cpp index 6054beddf52..46e6faebb01 100644 --- a/src/server/scripts/DragonIsles/AzureVault/instance_azure_vault.cpp +++ b/src/server/scripts/DragonIsles/AzureVault/instance_azure_vault.cpp @@ -36,9 +36,9 @@ ObjectData const creatureData[] = DoorData const doorData[] = { - { GO_ARCANE_VAULTS_DOOR_LEYMOR_ENTRANCE, DATA_LEYMOR, DOOR_TYPE_ROOM }, - { GO_ARCANE_VAULTS_DOOR_LEYMOR_EXIT, DATA_LEYMOR, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_ARCANE_VAULTS_DOOR_LEYMOR_ENTRANCE, DATA_LEYMOR, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ARCANE_VAULTS_DOOR_LEYMOR_EXIT, DATA_LEYMOR, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/DragonIsles/RubyLifePools/instance_ruby_life_pools.cpp b/src/server/scripts/DragonIsles/RubyLifePools/instance_ruby_life_pools.cpp index adac601b261..3db0dd199b6 100644 --- a/src/server/scripts/DragonIsles/RubyLifePools/instance_ruby_life_pools.cpp +++ b/src/server/scripts/DragonIsles/RubyLifePools/instance_ruby_life_pools.cpp @@ -29,8 +29,8 @@ ObjectData const creatureData[] = DoorData const doorData[] = { - { GO_FIRE_WALL, DATA_KOKIA_BLAZEHOOF, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_FIRE_WALL, DATA_KOKIA_BLAZEHOOF, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/EasternKingdoms/BaradinHold/instance_baradin_hold.cpp b/src/server/scripts/EasternKingdoms/BaradinHold/instance_baradin_hold.cpp index 0cd60964a3a..376dd3a3de7 100644 --- a/src/server/scripts/EasternKingdoms/BaradinHold/instance_baradin_hold.cpp +++ b/src/server/scripts/EasternKingdoms/BaradinHold/instance_baradin_hold.cpp @@ -24,10 +24,10 @@ DoorData const doorData[] = { - { GO_ARGALOTH_DOOR, DATA_ARGALOTH, DOOR_TYPE_ROOM }, - { GO_OCCUTHAR_DOOR, DATA_OCCUTHAR, DOOR_TYPE_ROOM }, - { GO_ALIZABAL_DOOR, DATA_ALIZABAL, DOOR_TYPE_ROOM }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_ARGALOTH_DOOR, DATA_ARGALOTH, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_OCCUTHAR_DOOR, DATA_OCCUTHAR, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ALIZABAL_DOOR, DATA_ALIZABAL, EncounterDoorBehavior::OpenWhenNotInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp index f3d05a4c87f..bcd5b350d4d 100644 --- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp +++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp @@ -30,13 +30,13 @@ uint32 const DragonspireMobs[3] = { NPC_BLACKHAND_DREADWEAVER, NPC_BLACKHAND_SUM DoorData const doorData[] = { - { GO_DOORS, DATA_PYROGAURD_EMBERSEER, DOOR_TYPE_ROOM }, - { GO_EMBERSEER_OUT, DATA_PYROGAURD_EMBERSEER, DOOR_TYPE_PASSAGE }, - { GO_DRAKKISATH_DOOR_1, DATA_GENERAL_DRAKKISATH, DOOR_TYPE_PASSAGE }, - { GO_DRAKKISATH_DOOR_2, DATA_GENERAL_DRAKKISATH, DOOR_TYPE_PASSAGE }, - { GO_PORTCULLIS_ACTIVE, DATA_WARCHIEF_REND_BLACKHAND, DOOR_TYPE_PASSAGE }, - { GO_PORTCULLIS_TOBOSSROOMS, DATA_WARCHIEF_REND_BLACKHAND, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } + { GO_DOORS, DATA_PYROGAURD_EMBERSEER, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_EMBERSEER_OUT, DATA_PYROGAURD_EMBERSEER, EncounterDoorBehavior::OpenWhenDone }, + { GO_DRAKKISATH_DOOR_1, DATA_GENERAL_DRAKKISATH, EncounterDoorBehavior::OpenWhenDone }, + { GO_DRAKKISATH_DOOR_2, DATA_GENERAL_DRAKKISATH, EncounterDoorBehavior::OpenWhenDone }, + { GO_PORTCULLIS_ACTIVE, DATA_WARCHIEF_REND_BLACKHAND, EncounterDoorBehavior::OpenWhenDone }, + { GO_PORTCULLIS_TOBOSSROOMS, DATA_WARCHIEF_REND_BLACKHAND, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } }; static constexpr DungeonEncounterData Encounters[] = diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp index 87cea25c739..d715e690083 100644 --- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp +++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp @@ -27,15 +27,15 @@ DoorData const doorData[] = { - { GO_PORTCULLIS_RAZORGORE, DATA_RAZORGORE_THE_UNTAMED, DOOR_TYPE_PASSAGE }, - { GO_PORTCULLIS_VAELASTRASZ, DATA_VAELASTRAZ_THE_CORRUPT, DOOR_TYPE_PASSAGE }, - { GO_PORTCULLIS_BROODLORD, DATA_BROODLORD_LASHLAYER, DOOR_TYPE_PASSAGE }, - { GO_PORTCULLIS_THREEDRAGONS, DATA_FIREMAW, DOOR_TYPE_PASSAGE }, - { GO_PORTCULLIS_THREEDRAGONS, DATA_EBONROC, DOOR_TYPE_PASSAGE }, - { GO_PORTCULLIS_THREEDRAGONS, DATA_FLAMEGOR, DOOR_TYPE_PASSAGE }, - { GO_PORTCULLIS_CHROMAGGUS, DATA_CHROMAGGUS, DOOR_TYPE_PASSAGE }, - { GO_PORTCULLIS_NEFARIAN, DATA_NEFARIAN, DOOR_TYPE_ROOM }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_PORTCULLIS_RAZORGORE, DATA_RAZORGORE_THE_UNTAMED, EncounterDoorBehavior::OpenWhenDone }, + { GO_PORTCULLIS_VAELASTRASZ, DATA_VAELASTRAZ_THE_CORRUPT, EncounterDoorBehavior::OpenWhenDone }, + { GO_PORTCULLIS_BROODLORD, DATA_BROODLORD_LASHLAYER, EncounterDoorBehavior::OpenWhenDone }, + { GO_PORTCULLIS_THREEDRAGONS, DATA_FIREMAW, EncounterDoorBehavior::OpenWhenDone }, + { GO_PORTCULLIS_THREEDRAGONS, DATA_EBONROC, EncounterDoorBehavior::OpenWhenDone }, + { GO_PORTCULLIS_THREEDRAGONS, DATA_FLAMEGOR, EncounterDoorBehavior::OpenWhenDone }, + { GO_PORTCULLIS_CHROMAGGUS, DATA_CHROMAGGUS, EncounterDoorBehavior::OpenWhenDone }, + { GO_PORTCULLIS_NEFARIAN, DATA_NEFARIAN, EncounterDoorBehavior::OpenWhenNotInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; ObjectData const creatureData[] = diff --git a/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp b/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp index e6cb81becd6..dcecb904c58 100644 --- a/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp +++ b/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp @@ -52,12 +52,12 @@ ObjectData const gameObjectData[] = DoorData const doorData[] = { - { GO_SUNWELL_RAID_GATE_2 , DATA_SELIN_FIREHEART, DOOR_TYPE_PASSAGE }, - { GO_ASSEMBLY_CHAMBER_DOOR, DATA_SELIN_FIREHEART, DOOR_TYPE_ROOM }, - { GO_SUNWELL_RAID_GATE_5, DATA_VEXALLUS, DOOR_TYPE_PASSAGE }, - { GO_SUNWELL_RAID_GATE_4, DATA_PRIESTESS_DELRISSA, DOOR_TYPE_PASSAGE }, - { GO_ASYLUM_DOOR, DATA_KAELTHAS_SUNSTRIDER, DOOR_TYPE_ROOM }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_SUNWELL_RAID_GATE_2 , DATA_SELIN_FIREHEART, EncounterDoorBehavior::OpenWhenDone }, + { GO_ASSEMBLY_CHAMBER_DOOR, DATA_SELIN_FIREHEART, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_SUNWELL_RAID_GATE_5, DATA_VEXALLUS, EncounterDoorBehavior::OpenWhenDone }, + { GO_SUNWELL_RAID_GATE_4, DATA_PRIESTESS_DELRISSA, EncounterDoorBehavior::OpenWhenDone }, + { GO_ASYLUM_DOOR, DATA_KAELTHAS_SUNSTRIDER, EncounterDoorBehavior::OpenWhenNotInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/instance_sunwell_plateau.cpp b/src/server/scripts/EasternKingdoms/SunwellPlateau/instance_sunwell_plateau.cpp index a24c813c01f..00b58494922 100644 --- a/src/server/scripts/EasternKingdoms/SunwellPlateau/instance_sunwell_plateau.cpp +++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/instance_sunwell_plateau.cpp @@ -34,13 +34,13 @@ DoorData const doorData[] = { - { GO_FIRE_BARRIER, DATA_FELMYST, DOOR_TYPE_PASSAGE }, - { GO_MURUS_GATE_1, DATA_MURU, DOOR_TYPE_ROOM }, - { GO_MURUS_GATE_2, DATA_MURU, DOOR_TYPE_PASSAGE }, - { GO_BOSS_COLLISION_1, DATA_KALECGOS, DOOR_TYPE_ROOM }, - { GO_BOSS_COLLISION_2, DATA_KALECGOS, DOOR_TYPE_ROOM }, - { GO_FORCE_FIELD, DATA_KALECGOS, DOOR_TYPE_ROOM }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_FIRE_BARRIER, DATA_FELMYST, EncounterDoorBehavior::OpenWhenDone }, + { GO_MURUS_GATE_1, DATA_MURU, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_MURUS_GATE_2, DATA_MURU, EncounterDoorBehavior::OpenWhenDone }, + { GO_BOSS_COLLISION_1, DATA_KALECGOS, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_BOSS_COLLISION_2, DATA_KALECGOS, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_FORCE_FIELD, DATA_KALECGOS, EncounterDoorBehavior::OpenWhenNotInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; ObjectData const creatureData[] = diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp index c91de05ea3c..53088f64ac0 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp @@ -22,12 +22,12 @@ DoorData const doorData[] = { - { GO_VENOXIS_COIL, DATA_VENOXIS, DOOR_TYPE_ROOM }, - { GO_ARENA_DOOR_1, DATA_MANDOKIR, DOOR_TYPE_ROOM }, - { GO_FORCEFIELD, DATA_KILNARA, DOOR_TYPE_ROOM }, - { GO_ZANZIL_DOOR, DATA_ZANZIL, DOOR_TYPE_ROOM }, - //{ GO_THE_CACHE_OF_MADNESS_DOOR, DATA_xxxxxxx, DOOR_TYPE_ROOM }, - { 0, 0, DOOR_TYPE_ROOM } + { GO_VENOXIS_COIL, DATA_VENOXIS, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ARENA_DOOR_1, DATA_MANDOKIR, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_FORCEFIELD, DATA_KILNARA, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ZANZIL_DOOR, DATA_ZANZIL, EncounterDoorBehavior::OpenWhenNotInProgress }, + //{ GO_THE_CACHE_OF_MADNESS_DOOR, DATA_xxxxxxx, EncounterStateForOpenDoor::NotInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/instance_culling_of_stratholme.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/instance_culling_of_stratholme.cpp index 15fecf2e221..a869ea201e6 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/instance_culling_of_stratholme.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/instance_culling_of_stratholme.cpp @@ -123,9 +123,9 @@ enum COSMisc DoorData const doorData[] = { - { GO_MALGANIS_GATE_2, DATA_MAL_GANIS, DOOR_TYPE_ROOM }, - { GO_EXIT_GATE, DATA_MAL_GANIS, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_MALGANIS_GATE_2, DATA_MAL_GANIS, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_EXIT_GATE, DATA_MAL_GANIS, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp b/src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp index c63a6f98f68..f77d814f3df 100644 --- a/src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp +++ b/src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp @@ -25,19 +25,19 @@ DoorData const doorData[] = { - {GO_ANHUURS_DOOR, DATA_TEMPLE_GUARDIAN_ANHUUR, DOOR_TYPE_PASSAGE }, - {GO_ANHUURS_BRIDGE, DATA_TEMPLE_GUARDIAN_ANHUUR, DOOR_TYPE_PASSAGE }, - {GO_DOODAD_ULDUM_ELEVATOR_COL01, DATA_TEMPLE_GUARDIAN_ANHUUR, DOOR_TYPE_PASSAGE }, - {GO_VAULT_OF_LIGHTS_DOOR, DATA_VAULT_OF_LIGHTS, DOOR_TYPE_PASSAGE }, - {GO_DOODAD_ULDUM_LIGHTMACHINE_02, DATA_EARTH_WARDEN, DOOR_TYPE_PASSAGE }, - {GO_DOODAD_ULDUM_LASERBEAMS01, DATA_EARTH_WARDEN, DOOR_TYPE_PASSAGE }, - {GO_DOODAD_ULDUM_LIGHTMACHINE_01, DATA_FIRE_WARDEN, DOOR_TYPE_PASSAGE }, - {GO_DOODAD_ULDUM_LASERBEAMS_01, DATA_FIRE_WARDEN, DOOR_TYPE_PASSAGE }, - {GO_DOODAD_ULDUM_LIGHTMACHINE_03, DATA_WATER_WARDEN, DOOR_TYPE_PASSAGE }, - {GO_DOODAD_ULDUM_LASERBEAMS_03, DATA_WATER_WARDEN, DOOR_TYPE_PASSAGE }, - {GO_DOODAD_ULDUM_LIGHTMACHINE_04, DATA_AIR_WARDEN, DOOR_TYPE_PASSAGE }, - {GO_DOODAD_ULDUM_LASERBEAMS_02, DATA_AIR_WARDEN, DOOR_TYPE_PASSAGE }, - {0, 0, DOOR_TYPE_ROOM } + {GO_ANHUURS_DOOR, DATA_TEMPLE_GUARDIAN_ANHUUR, EncounterDoorBehavior::OpenWhenDone }, + {GO_ANHUURS_BRIDGE, DATA_TEMPLE_GUARDIAN_ANHUUR, EncounterDoorBehavior::OpenWhenDone }, + {GO_DOODAD_ULDUM_ELEVATOR_COL01, DATA_TEMPLE_GUARDIAN_ANHUUR, EncounterDoorBehavior::OpenWhenDone }, + {GO_VAULT_OF_LIGHTS_DOOR, DATA_VAULT_OF_LIGHTS, EncounterDoorBehavior::OpenWhenDone }, + {GO_DOODAD_ULDUM_LIGHTMACHINE_02, DATA_EARTH_WARDEN, EncounterDoorBehavior::OpenWhenDone }, + {GO_DOODAD_ULDUM_LASERBEAMS01, DATA_EARTH_WARDEN, EncounterDoorBehavior::OpenWhenDone }, + {GO_DOODAD_ULDUM_LIGHTMACHINE_01, DATA_FIRE_WARDEN, EncounterDoorBehavior::OpenWhenDone }, + {GO_DOODAD_ULDUM_LASERBEAMS_01, DATA_FIRE_WARDEN, EncounterDoorBehavior::OpenWhenDone }, + {GO_DOODAD_ULDUM_LIGHTMACHINE_03, DATA_WATER_WARDEN, EncounterDoorBehavior::OpenWhenDone }, + {GO_DOODAD_ULDUM_LASERBEAMS_03, DATA_WATER_WARDEN, EncounterDoorBehavior::OpenWhenDone }, + {GO_DOODAD_ULDUM_LIGHTMACHINE_04, DATA_AIR_WARDEN, EncounterDoorBehavior::OpenWhenDone }, + {GO_DOODAD_ULDUM_LASERBEAMS_02, DATA_AIR_WARDEN, EncounterDoorBehavior::OpenWhenDone }, + {0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/instance_temple_of_ahnqiraj.cpp b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/instance_temple_of_ahnqiraj.cpp index f0553f53057..4235794e81d 100644 --- a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/instance_temple_of_ahnqiraj.cpp +++ b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/instance_temple_of_ahnqiraj.cpp @@ -39,11 +39,11 @@ ObjectData const creatureData[] = DoorData const doorData[] = { - { AQ40_DOOR_1, DATA_SARTURA, DOOR_TYPE_PASSAGE }, - { AQ40_DOOR_1, DATA_HUHURAN, DOOR_TYPE_PASSAGE }, - { AQ40_DOOR_2, DATA_TWIN_EMPERORS, DOOR_TYPE_PASSAGE }, - { AQ40_DOOR_3, DATA_SKERAM, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { AQ40_DOOR_1, DATA_SARTURA, EncounterDoorBehavior::OpenWhenDone }, + { AQ40_DOOR_1, DATA_HUHURAN, EncounterDoorBehavior::OpenWhenDone }, + { AQ40_DOOR_2, DATA_TWIN_EMPERORS, EncounterDoorBehavior::OpenWhenDone }, + { AQ40_DOOR_3, DATA_SKERAM, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/instance_ahnkahet.cpp b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/instance_ahnkahet.cpp index 32223e99e61..ab1d0bd819c 100644 --- a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/instance_ahnkahet.cpp +++ b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/instance_ahnkahet.cpp @@ -24,8 +24,8 @@ DoorData const doorData[] = { - { GO_PRINCE_TALDARAM_GATE, DATA_PRINCE_TALDARAM, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_PRINCE_TALDARAM_GATE, DATA_PRINCE_TALDARAM, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; ObjectData const creatureData[] = diff --git a/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/instance_azjol_nerub.cpp b/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/instance_azjol_nerub.cpp index fed8856f4e8..60412d56e59 100644 --- a/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/instance_azjol_nerub.cpp +++ b/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/instance_azjol_nerub.cpp @@ -24,11 +24,11 @@ DoorData const doorData[] = { - { GO_KRIKTHIR_DOOR, DATA_KRIKTHIR, DOOR_TYPE_PASSAGE }, - { GO_ANUBARAK_DOOR_1, DATA_ANUBARAK, DOOR_TYPE_ROOM }, - { GO_ANUBARAK_DOOR_2, DATA_ANUBARAK, DOOR_TYPE_ROOM }, - { GO_ANUBARAK_DOOR_3, DATA_ANUBARAK, DOOR_TYPE_ROOM }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_KRIKTHIR_DOOR, DATA_KRIKTHIR, EncounterDoorBehavior::OpenWhenDone }, + { GO_ANUBARAK_DOOR_1, DATA_ANUBARAK, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ANUBARAK_DOOR_2, DATA_ANUBARAK, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ANUBARAK_DOOR_3, DATA_ANUBARAK, EncounterDoorBehavior::OpenWhenNotInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; ObjectData const creatureData[] = diff --git a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp index dcbc4014546..b633761d1cd 100644 --- a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp +++ b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp @@ -346,7 +346,7 @@ class boss_halion : public CreatureScript events.ScheduleEvent(EVENT_BREATH, randtime(Seconds(16), Seconds(25))); break; case EVENT_ACTIVATE_FIREWALL: - // Flame ring is activated 5 seconds after starting encounter, DOOR_TYPE_ROOM is only instant. + // Flame ring is activated 5 seconds after starting encounter, EncounterStateForOpenDoor::NotInProgress is only instant. for (uint8 i = DATA_FLAME_RING; i <= DATA_TWILIGHT_FLAME_RING; ++i) if (GameObject* flameRing = instance->GetGameObject(i)) instance->HandleGameObject(ObjectGuid::Empty, false, flameRing); diff --git a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/instance_ruby_sanctum.cpp b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/instance_ruby_sanctum.cpp index 87c6da489d5..3359883e1e0 100644 --- a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/instance_ruby_sanctum.cpp +++ b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/instance_ruby_sanctum.cpp @@ -34,13 +34,13 @@ BossBoundaryData const boundaries = DoorData const doorData[] = { - { GO_FIRE_FIELD, DATA_BALTHARUS_THE_WARBORN, DOOR_TYPE_PASSAGE }, - { GO_FLAME_WALLS, DATA_BALTHARUS_THE_WARBORN, DOOR_TYPE_PASSAGE }, - { GO_FLAME_WALLS, DATA_SAVIANA_RAGEFIRE, DOOR_TYPE_PASSAGE }, - { GO_FLAME_WALLS, DATA_GENERAL_ZARITHRIAN, DOOR_TYPE_ROOM }, - { GO_FLAME_RING, DATA_HALION, DOOR_TYPE_ROOM }, - { GO_TWILIGHT_FLAME_RING, DATA_HALION, DOOR_TYPE_ROOM }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_FIRE_FIELD, DATA_BALTHARUS_THE_WARBORN, EncounterDoorBehavior::OpenWhenDone }, + { GO_FLAME_WALLS, DATA_BALTHARUS_THE_WARBORN, EncounterDoorBehavior::OpenWhenDone }, + { GO_FLAME_WALLS, DATA_SAVIANA_RAGEFIRE, EncounterDoorBehavior::OpenWhenDone }, + { GO_FLAME_WALLS, DATA_GENERAL_ZARITHRIAN, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_FLAME_RING, DATA_HALION, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_TWILIGHT_FLAME_RING, DATA_HALION, EncounterDoorBehavior::OpenWhenNotInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; ObjectData const creatureData[] = diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp index a138de652d5..3e5c547d3e3 100644 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp @@ -83,13 +83,13 @@ ObjectData const gameObjectData[] = DoorData const doorData[] = { - { GO_EAST_PORTCULLIS, DATA_NORTHREND_BEASTS, DOOR_TYPE_ROOM }, - { GO_EAST_PORTCULLIS, DATA_JARAXXUS, DOOR_TYPE_ROOM }, - { GO_EAST_PORTCULLIS, DATA_FACTION_CRUSADERS, DOOR_TYPE_ROOM }, - { GO_EAST_PORTCULLIS, DATA_TWIN_VALKIRIES, DOOR_TYPE_ROOM }, - { GO_EAST_PORTCULLIS, DATA_LICH_KING, DOOR_TYPE_ROOM }, - { GO_WEB_DOOR, DATA_ANUBARAK, DOOR_TYPE_ROOM }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_EAST_PORTCULLIS, DATA_NORTHREND_BEASTS, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_EAST_PORTCULLIS, DATA_JARAXXUS, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_EAST_PORTCULLIS, DATA_FACTION_CRUSADERS, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_EAST_PORTCULLIS, DATA_TWIN_VALKIRIES, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_EAST_PORTCULLIS, DATA_LICH_KING, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_WEB_DOOR, DATA_ANUBARAK, EncounterDoorBehavior::OpenWhenNotInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/instance_pit_of_saron.cpp b/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/instance_pit_of_saron.cpp index 6a80e90f134..953a34d44f9 100644 --- a/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/instance_pit_of_saron.cpp +++ b/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/instance_pit_of_saron.cpp @@ -30,10 +30,10 @@ Position const EventLeaderPos2 = {1054.368f, 107.14620f, 628.4467f, 0.0f}; DoorData const Doors[] = { - { GO_ICE_WALL, DATA_GARFROST, DOOR_TYPE_PASSAGE }, - { GO_ICE_WALL, DATA_ICK, DOOR_TYPE_PASSAGE }, - { GO_HALLS_OF_REFLECTION_PORTCULLIS, DATA_TYRANNUS, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_ICE_WALL, DATA_GARFROST, EncounterDoorBehavior::OpenWhenDone }, + { GO_ICE_WALL, DATA_ICK, EncounterDoorBehavior::OpenWhenDone }, + { GO_HALLS_OF_REFLECTION_PORTCULLIS, DATA_TYRANNUS, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/Northrend/Gundrak/instance_gundrak.cpp b/src/server/scripts/Northrend/Gundrak/instance_gundrak.cpp index ca427278948..62de55abb1b 100644 --- a/src/server/scripts/Northrend/Gundrak/instance_gundrak.cpp +++ b/src/server/scripts/Northrend/Gundrak/instance_gundrak.cpp @@ -26,12 +26,12 @@ DoorData const doorData[] = { - { GO_GAL_DARAH_DOOR_1, DATA_GAL_DARAH, DOOR_TYPE_PASSAGE }, - { GO_GAL_DARAH_DOOR_2, DATA_GAL_DARAH, DOOR_TYPE_PASSAGE }, - { GO_GAL_DARAH_DOOR_3, DATA_GAL_DARAH, DOOR_TYPE_ROOM }, - { GO_ECK_THE_FEROCIOUS_DOOR, DATA_MOORABI, DOOR_TYPE_PASSAGE }, - { GO_ECK_THE_FEROCIOUS_DOOR_BEHIND, DATA_ECK_THE_FEROCIOUS, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_GAL_DARAH_DOOR_1, DATA_GAL_DARAH, EncounterDoorBehavior::OpenWhenDone }, + { GO_GAL_DARAH_DOOR_2, DATA_GAL_DARAH, EncounterDoorBehavior::OpenWhenDone }, + { GO_GAL_DARAH_DOOR_3, DATA_GAL_DARAH, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ECK_THE_FEROCIOUS_DOOR, DATA_MOORABI, EncounterDoorBehavior::OpenWhenDone }, + { GO_ECK_THE_FEROCIOUS_DOOR_BEHIND, DATA_ECK_THE_FEROCIOUS, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; ObjectData const creatureData[] = diff --git a/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp b/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp index caf5bc00f5e..85fe2885a00 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp @@ -76,32 +76,32 @@ BossBoundaryData const boundaries = DoorData const doorData[] = { - { GO_LORD_MARROWGAR_S_ENTRANCE, DATA_LORD_MARROWGAR, DOOR_TYPE_ROOM }, - { GO_ICEWALL, DATA_LORD_MARROWGAR, DOOR_TYPE_PASSAGE }, - { GO_DOODAD_ICECROWN_ICEWALL02, DATA_LORD_MARROWGAR, DOOR_TYPE_PASSAGE }, - { GO_ORATORY_OF_THE_DAMNED_ENTRANCE, DATA_LADY_DEATHWHISPER, DOOR_TYPE_ROOM }, - { GO_SAURFANG_S_DOOR, DATA_DEATHBRINGER_SAURFANG, DOOR_TYPE_PASSAGE }, - { GO_ORANGE_PLAGUE_MONSTER_ENTRANCE, DATA_FESTERGUT, DOOR_TYPE_ROOM }, - { GO_GREEN_PLAGUE_MONSTER_ENTRANCE, DATA_ROTFACE, DOOR_TYPE_ROOM }, - { GO_SCIENTIST_ENTRANCE, DATA_PROFESSOR_PUTRICIDE, DOOR_TYPE_ROOM }, - { GO_CRIMSON_HALL_DOOR, DATA_BLOOD_PRINCE_COUNCIL, DOOR_TYPE_ROOM }, - { GO_BLOOD_ELF_COUNCIL_DOOR, DATA_BLOOD_PRINCE_COUNCIL, DOOR_TYPE_PASSAGE }, - { GO_BLOOD_ELF_COUNCIL_DOOR_RIGHT, DATA_BLOOD_PRINCE_COUNCIL, DOOR_TYPE_PASSAGE }, - { GO_DOODAD_ICECROWN_BLOODPRINCE_DOOR_01, DATA_BLOOD_QUEEN_LANA_THEL, DOOR_TYPE_ROOM }, - { GO_DOODAD_ICECROWN_GRATE_01, DATA_BLOOD_QUEEN_LANA_THEL, DOOR_TYPE_PASSAGE }, - { GO_GREEN_DRAGON_BOSS_ENTRANCE, DATA_SISTER_SVALNA, DOOR_TYPE_PASSAGE }, - { GO_GREEN_DRAGON_BOSS_ENTRANCE, DATA_VALITHRIA_DREAMWALKER, DOOR_TYPE_ROOM }, - { GO_GREEN_DRAGON_BOSS_EXIT, DATA_VALITHRIA_DREAMWALKER, DOOR_TYPE_PASSAGE }, - { GO_DOODAD_ICECROWN_ROOSTPORTCULLIS_01, DATA_VALITHRIA_DREAMWALKER, DOOR_TYPE_SPAWN_HOLE }, - { GO_DOODAD_ICECROWN_ROOSTPORTCULLIS_02, DATA_VALITHRIA_DREAMWALKER, DOOR_TYPE_SPAWN_HOLE }, - { GO_DOODAD_ICECROWN_ROOSTPORTCULLIS_03, DATA_VALITHRIA_DREAMWALKER, DOOR_TYPE_SPAWN_HOLE }, - { GO_DOODAD_ICECROWN_ROOSTPORTCULLIS_04, DATA_VALITHRIA_DREAMWALKER, DOOR_TYPE_SPAWN_HOLE }, - { GO_SINDRAGOSA_ENTRANCE_DOOR, DATA_SINDRAGOSA, DOOR_TYPE_ROOM }, - { GO_SINDRAGOSA_SHORTCUT_ENTRANCE_DOOR, DATA_SINDRAGOSA, DOOR_TYPE_PASSAGE }, - { GO_SINDRAGOSA_SHORTCUT_EXIT_DOOR, DATA_SINDRAGOSA, DOOR_TYPE_PASSAGE }, - { GO_ICE_WALL, DATA_SINDRAGOSA, DOOR_TYPE_ROOM }, - { GO_ICE_WALL, DATA_SINDRAGOSA, DOOR_TYPE_ROOM }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_LORD_MARROWGAR_S_ENTRANCE, DATA_LORD_MARROWGAR, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ICEWALL, DATA_LORD_MARROWGAR, EncounterDoorBehavior::OpenWhenDone }, + { GO_DOODAD_ICECROWN_ICEWALL02, DATA_LORD_MARROWGAR, EncounterDoorBehavior::OpenWhenDone }, + { GO_ORATORY_OF_THE_DAMNED_ENTRANCE, DATA_LADY_DEATHWHISPER, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_SAURFANG_S_DOOR, DATA_DEATHBRINGER_SAURFANG, EncounterDoorBehavior::OpenWhenDone }, + { GO_ORANGE_PLAGUE_MONSTER_ENTRANCE, DATA_FESTERGUT, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_GREEN_PLAGUE_MONSTER_ENTRANCE, DATA_ROTFACE, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_SCIENTIST_ENTRANCE, DATA_PROFESSOR_PUTRICIDE, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_CRIMSON_HALL_DOOR, DATA_BLOOD_PRINCE_COUNCIL, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_BLOOD_ELF_COUNCIL_DOOR, DATA_BLOOD_PRINCE_COUNCIL, EncounterDoorBehavior::OpenWhenDone }, + { GO_BLOOD_ELF_COUNCIL_DOOR_RIGHT, DATA_BLOOD_PRINCE_COUNCIL, EncounterDoorBehavior::OpenWhenDone }, + { GO_DOODAD_ICECROWN_BLOODPRINCE_DOOR_01, DATA_BLOOD_QUEEN_LANA_THEL, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_DOODAD_ICECROWN_GRATE_01, DATA_BLOOD_QUEEN_LANA_THEL, EncounterDoorBehavior::OpenWhenDone }, + { GO_GREEN_DRAGON_BOSS_ENTRANCE, DATA_SISTER_SVALNA, EncounterDoorBehavior::OpenWhenDone }, + { GO_GREEN_DRAGON_BOSS_ENTRANCE, DATA_VALITHRIA_DREAMWALKER, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_GREEN_DRAGON_BOSS_EXIT, DATA_VALITHRIA_DREAMWALKER, EncounterDoorBehavior::OpenWhenDone }, + { GO_DOODAD_ICECROWN_ROOSTPORTCULLIS_01, DATA_VALITHRIA_DREAMWALKER, EncounterDoorBehavior::OpenWhenInProgress }, + { GO_DOODAD_ICECROWN_ROOSTPORTCULLIS_02, DATA_VALITHRIA_DREAMWALKER, EncounterDoorBehavior::OpenWhenInProgress }, + { GO_DOODAD_ICECROWN_ROOSTPORTCULLIS_03, DATA_VALITHRIA_DREAMWALKER, EncounterDoorBehavior::OpenWhenInProgress }, + { GO_DOODAD_ICECROWN_ROOSTPORTCULLIS_04, DATA_VALITHRIA_DREAMWALKER, EncounterDoorBehavior::OpenWhenInProgress }, + { GO_SINDRAGOSA_ENTRANCE_DOOR, DATA_SINDRAGOSA, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_SINDRAGOSA_SHORTCUT_ENTRANCE_DOOR, DATA_SINDRAGOSA, EncounterDoorBehavior::OpenWhenDone }, + { GO_SINDRAGOSA_SHORTCUT_EXIT_DOOR, DATA_SINDRAGOSA, EncounterDoorBehavior::OpenWhenDone }, + { GO_ICE_WALL, DATA_SINDRAGOSA, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ICE_WALL, DATA_SINDRAGOSA, EncounterDoorBehavior::OpenWhenNotInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp b/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp index c9a4765c99d..23ae446055f 100644 --- a/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp +++ b/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp @@ -61,40 +61,40 @@ BossBoundaryData const boundaries = DoorData const doorData[] = { - { GO_ROOM_ANUBREKHAN, BOSS_ANUBREKHAN, DOOR_TYPE_ROOM }, - { GO_PASSAGE_ANUBREKHAN, BOSS_ANUBREKHAN, DOOR_TYPE_PASSAGE }, - { GO_PASSAGE_FAERLINA, BOSS_FAERLINA, DOOR_TYPE_PASSAGE }, - { GO_ROOM_MAEXXNA, BOSS_FAERLINA, DOOR_TYPE_PASSAGE }, - { GO_ROOM_MAEXXNA, BOSS_MAEXXNA, DOOR_TYPE_ROOM }, - { GO_ROOM_NOTH, BOSS_NOTH, DOOR_TYPE_ROOM }, - { GO_PASSAGE_NOTH, BOSS_NOTH, DOOR_TYPE_PASSAGE }, - { GO_ROOM_HEIGAN, BOSS_NOTH, DOOR_TYPE_PASSAGE }, - { GO_ROOM_HEIGAN, BOSS_HEIGAN, DOOR_TYPE_ROOM }, - { GO_PASSAGE_HEIGAN, BOSS_HEIGAN, DOOR_TYPE_PASSAGE }, - { GO_ROOM_LOATHEB, BOSS_HEIGAN, DOOR_TYPE_PASSAGE }, - { GO_ROOM_LOATHEB, BOSS_LOATHEB, DOOR_TYPE_ROOM }, - { GO_ROOM_GROBBULUS, BOSS_PATCHWERK, DOOR_TYPE_PASSAGE }, - { GO_ROOM_GROBBULUS, BOSS_GROBBULUS, DOOR_TYPE_ROOM }, - { GO_PASSAGE_GLUTH, BOSS_GLUTH, DOOR_TYPE_PASSAGE }, - { GO_ROOM_THADDIUS, BOSS_GLUTH, DOOR_TYPE_PASSAGE }, - { GO_ROOM_THADDIUS, BOSS_THADDIUS, DOOR_TYPE_ROOM }, - { GO_ROOM_GOTHIK, BOSS_RAZUVIOUS, DOOR_TYPE_PASSAGE }, - { GO_ROOM_GOTHIK, BOSS_GOTHIK, DOOR_TYPE_ROOM }, - { GO_PASSAGE_GOTHIK, BOSS_GOTHIK, DOOR_TYPE_PASSAGE }, - { GO_ROOM_HORSEMEN, BOSS_GOTHIK, DOOR_TYPE_PASSAGE }, - { GO_GOTHIK_GATE, BOSS_GOTHIK, DOOR_TYPE_ROOM }, - { GO_ROOM_HORSEMEN, BOSS_HORSEMEN, DOOR_TYPE_ROOM }, - { GO_PASSAGE_SAPPHIRON, BOSS_SAPPHIRON, DOOR_TYPE_PASSAGE }, - { GO_ROOM_KELTHUZAD, BOSS_KELTHUZAD, DOOR_TYPE_ROOM }, - { GO_ARAC_EYE_RAMP, BOSS_MAEXXNA, DOOR_TYPE_PASSAGE }, - { GO_ARAC_EYE_RAMP_BOSS, BOSS_MAEXXNA, DOOR_TYPE_PASSAGE }, - { GO_PLAG_EYE_RAMP, BOSS_LOATHEB, DOOR_TYPE_PASSAGE }, - { GO_PLAG_EYE_RAMP_BOSS, BOSS_LOATHEB, DOOR_TYPE_PASSAGE }, - { GO_MILI_EYE_RAMP, BOSS_HORSEMEN, DOOR_TYPE_PASSAGE }, - { GO_MILI_EYE_RAMP_BOSS, BOSS_HORSEMEN, DOOR_TYPE_PASSAGE }, - { GO_CONS_EYE_RAMP, BOSS_THADDIUS, DOOR_TYPE_PASSAGE }, - { GO_CONS_EYE_RAMP_BOSS, BOSS_THADDIUS, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } + { GO_ROOM_ANUBREKHAN, BOSS_ANUBREKHAN, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_PASSAGE_ANUBREKHAN, BOSS_ANUBREKHAN, EncounterDoorBehavior::OpenWhenDone }, + { GO_PASSAGE_FAERLINA, BOSS_FAERLINA, EncounterDoorBehavior::OpenWhenDone }, + { GO_ROOM_MAEXXNA, BOSS_FAERLINA, EncounterDoorBehavior::OpenWhenDone }, + { GO_ROOM_MAEXXNA, BOSS_MAEXXNA, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ROOM_NOTH, BOSS_NOTH, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_PASSAGE_NOTH, BOSS_NOTH, EncounterDoorBehavior::OpenWhenDone }, + { GO_ROOM_HEIGAN, BOSS_NOTH, EncounterDoorBehavior::OpenWhenDone }, + { GO_ROOM_HEIGAN, BOSS_HEIGAN, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_PASSAGE_HEIGAN, BOSS_HEIGAN, EncounterDoorBehavior::OpenWhenDone }, + { GO_ROOM_LOATHEB, BOSS_HEIGAN, EncounterDoorBehavior::OpenWhenDone }, + { GO_ROOM_LOATHEB, BOSS_LOATHEB, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ROOM_GROBBULUS, BOSS_PATCHWERK, EncounterDoorBehavior::OpenWhenDone }, + { GO_ROOM_GROBBULUS, BOSS_GROBBULUS, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_PASSAGE_GLUTH, BOSS_GLUTH, EncounterDoorBehavior::OpenWhenDone }, + { GO_ROOM_THADDIUS, BOSS_GLUTH, EncounterDoorBehavior::OpenWhenDone }, + { GO_ROOM_THADDIUS, BOSS_THADDIUS, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ROOM_GOTHIK, BOSS_RAZUVIOUS, EncounterDoorBehavior::OpenWhenDone }, + { GO_ROOM_GOTHIK, BOSS_GOTHIK, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_PASSAGE_GOTHIK, BOSS_GOTHIK, EncounterDoorBehavior::OpenWhenDone }, + { GO_ROOM_HORSEMEN, BOSS_GOTHIK, EncounterDoorBehavior::OpenWhenDone }, + { GO_GOTHIK_GATE, BOSS_GOTHIK, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ROOM_HORSEMEN, BOSS_HORSEMEN, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_PASSAGE_SAPPHIRON, BOSS_SAPPHIRON, EncounterDoorBehavior::OpenWhenDone }, + { GO_ROOM_KELTHUZAD, BOSS_KELTHUZAD, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ARAC_EYE_RAMP, BOSS_MAEXXNA, EncounterDoorBehavior::OpenWhenDone }, + { GO_ARAC_EYE_RAMP_BOSS, BOSS_MAEXXNA, EncounterDoorBehavior::OpenWhenDone }, + { GO_PLAG_EYE_RAMP, BOSS_LOATHEB, EncounterDoorBehavior::OpenWhenDone }, + { GO_PLAG_EYE_RAMP_BOSS, BOSS_LOATHEB, EncounterDoorBehavior::OpenWhenDone }, + { GO_MILI_EYE_RAMP, BOSS_HORSEMEN, EncounterDoorBehavior::OpenWhenDone }, + { GO_MILI_EYE_RAMP_BOSS, BOSS_HORSEMEN, EncounterDoorBehavior::OpenWhenDone }, + { GO_CONS_EYE_RAMP, BOSS_THADDIUS, EncounterDoorBehavior::OpenWhenDone }, + { GO_CONS_EYE_RAMP_BOSS, BOSS_THADDIUS, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } }; ObjectData const objectData[] = diff --git a/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp b/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp index b4fb75349b5..be5ee3aef61 100644 --- a/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp +++ b/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp @@ -29,8 +29,8 @@ DoorData const doorData[] = { - { GO_DRAGON_CAGE_DOOR, DATA_DRAKOS, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } + { GO_DRAGON_CAGE_DOOR, DATA_DRAKOS, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/Northrend/Ulduar/HallsOfLightning/instance_halls_of_lightning.cpp b/src/server/scripts/Northrend/Ulduar/HallsOfLightning/instance_halls_of_lightning.cpp index db9350204ab..9e2f637cea8 100644 --- a/src/server/scripts/Northrend/Ulduar/HallsOfLightning/instance_halls_of_lightning.cpp +++ b/src/server/scripts/Northrend/Ulduar/HallsOfLightning/instance_halls_of_lightning.cpp @@ -25,10 +25,10 @@ DoorData const doorData[] = { - { GO_VOLKHAN_DOOR, DATA_VOLKHAN, DOOR_TYPE_PASSAGE }, - { GO_IONAR_DOOR, DATA_IONAR, DOOR_TYPE_PASSAGE }, - { GO_LOKEN_DOOR, DATA_LOKEN, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_VOLKHAN_DOOR, DATA_VOLKHAN, EncounterDoorBehavior::OpenWhenDone }, + { GO_IONAR_DOOR, DATA_IONAR, EncounterDoorBehavior::OpenWhenDone }, + { GO_LOKEN_DOOR, DATA_LOKEN, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; ObjectData const creatureData[] = diff --git a/src/server/scripts/Northrend/Ulduar/HallsOfStone/instance_halls_of_stone.cpp b/src/server/scripts/Northrend/Ulduar/HallsOfStone/instance_halls_of_stone.cpp index e11787a3bd0..580772a9fb2 100644 --- a/src/server/scripts/Northrend/Ulduar/HallsOfStone/instance_halls_of_stone.cpp +++ b/src/server/scripts/Northrend/Ulduar/HallsOfStone/instance_halls_of_stone.cpp @@ -24,8 +24,8 @@ DoorData const doorData[] = { - { GO_SJONNIR_DOOR, DATA_TRIBUNAL_OF_AGES, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_SJONNIR_DOOR, DATA_TRIBUNAL_OF_AGES, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; ObjectData const creatureData[] = diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp index f18855a2708..f869abdfbc9 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp @@ -47,29 +47,29 @@ static BossBoundaryData const boundaries = static DoorData const doorData[] = { - { GO_LEVIATHAN_DOOR, DATA_FLAME_LEVIATHAN, DOOR_TYPE_ROOM }, - { GO_XT_002_DOOR, DATA_XT002, DOOR_TYPE_ROOM }, - { GO_IRON_COUNCIL_DOOR, DATA_ASSEMBLY_OF_IRON, DOOR_TYPE_ROOM }, - { GO_ARCHIVUM_DOOR, DATA_ASSEMBLY_OF_IRON, DOOR_TYPE_PASSAGE }, - { GO_HODIR_ENTRANCE, DATA_HODIR, DOOR_TYPE_ROOM }, - { GO_HODIR_DOOR, DATA_HODIR, DOOR_TYPE_PASSAGE }, - { GO_HODIR_ICE_DOOR, DATA_HODIR, DOOR_TYPE_PASSAGE }, - { GO_MIMIRON_DOOR_1, DATA_MIMIRON, DOOR_TYPE_ROOM }, - { GO_MIMIRON_DOOR_2, DATA_MIMIRON, DOOR_TYPE_ROOM }, - { GO_MIMIRON_DOOR_3, DATA_MIMIRON, DOOR_TYPE_ROOM }, - { GO_THORIM_ENCOUNTER_DOOR, DATA_THORIM, DOOR_TYPE_ROOM }, - { GO_ANCIENT_GATE_OF_THE_KEEPERS, DATA_HODIR, DOOR_TYPE_PASSAGE }, - { GO_ANCIENT_GATE_OF_THE_KEEPERS, DATA_MIMIRON, DOOR_TYPE_PASSAGE }, - { GO_ANCIENT_GATE_OF_THE_KEEPERS, DATA_THORIM, DOOR_TYPE_PASSAGE }, - { GO_ANCIENT_GATE_OF_THE_KEEPERS, DATA_FREYA, DOOR_TYPE_PASSAGE }, - { GO_VEZAX_DOOR, DATA_VEZAX, DOOR_TYPE_PASSAGE }, - { GO_YOGG_SARON_DOOR, DATA_YOGG_SARON, DOOR_TYPE_ROOM }, - { GO_DOODAD_UL_SIGILDOOR_03, DATA_ALGALON, DOOR_TYPE_ROOM }, - { GO_DOODAD_UL_UNIVERSEFLOOR_01, DATA_ALGALON, DOOR_TYPE_ROOM }, - { GO_DOODAD_UL_UNIVERSEFLOOR_02, DATA_ALGALON, DOOR_TYPE_SPAWN_HOLE }, - { GO_DOODAD_UL_UNIVERSEGLOBE01, DATA_ALGALON, DOOR_TYPE_SPAWN_HOLE }, - { GO_DOODAD_UL_ULDUAR_TRAPDOOR_03, DATA_ALGALON, DOOR_TYPE_SPAWN_HOLE }, - { 0, 0, DOOR_TYPE_ROOM }, + { GO_LEVIATHAN_DOOR, DATA_FLAME_LEVIATHAN, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_XT_002_DOOR, DATA_XT002, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_IRON_COUNCIL_DOOR, DATA_ASSEMBLY_OF_IRON, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ARCHIVUM_DOOR, DATA_ASSEMBLY_OF_IRON, EncounterDoorBehavior::OpenWhenDone }, + { GO_HODIR_ENTRANCE, DATA_HODIR, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_HODIR_DOOR, DATA_HODIR, EncounterDoorBehavior::OpenWhenDone }, + { GO_HODIR_ICE_DOOR, DATA_HODIR, EncounterDoorBehavior::OpenWhenDone }, + { GO_MIMIRON_DOOR_1, DATA_MIMIRON, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_MIMIRON_DOOR_2, DATA_MIMIRON, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_MIMIRON_DOOR_3, DATA_MIMIRON, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_THORIM_ENCOUNTER_DOOR, DATA_THORIM, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ANCIENT_GATE_OF_THE_KEEPERS, DATA_HODIR, EncounterDoorBehavior::OpenWhenDone }, + { GO_ANCIENT_GATE_OF_THE_KEEPERS, DATA_MIMIRON, EncounterDoorBehavior::OpenWhenDone }, + { GO_ANCIENT_GATE_OF_THE_KEEPERS, DATA_THORIM, EncounterDoorBehavior::OpenWhenDone }, + { GO_ANCIENT_GATE_OF_THE_KEEPERS, DATA_FREYA, EncounterDoorBehavior::OpenWhenDone }, + { GO_VEZAX_DOOR, DATA_VEZAX, EncounterDoorBehavior::OpenWhenDone }, + { GO_YOGG_SARON_DOOR, DATA_YOGG_SARON, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_DOODAD_UL_SIGILDOOR_03, DATA_ALGALON, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_DOODAD_UL_UNIVERSEFLOOR_01, DATA_ALGALON, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_DOODAD_UL_UNIVERSEFLOOR_02, DATA_ALGALON, EncounterDoorBehavior::OpenWhenInProgress }, + { GO_DOODAD_UL_UNIVERSEGLOBE01, DATA_ALGALON, EncounterDoorBehavior::OpenWhenInProgress }, + { GO_DOODAD_UL_ULDUAR_TRAPDOOR_03, DATA_ALGALON, EncounterDoorBehavior::OpenWhenInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress }, }; MinionData const minionData[] = @@ -960,8 +960,8 @@ class instance_ulduar : public InstanceMapScript void UpdateDoorState(GameObject* door) override { - // Leviathan doors are set to DOOR_TYPE_ROOM except the one it uses to enter the room - // which has to be set to DOOR_TYPE_PASSAGE + // Leviathan doors are set to EncounterStateForOpenDoor::NotInProgress except the one it uses to enter the room + // which has to be set to EncounterStateForOpenDoor::Done if (door->GetEntry() == GO_LEVIATHAN_DOOR && door->GetPositionX() > 400.f) door->SetGoState(GetBossState(DATA_FLAME_LEVIATHAN) == DONE ? GO_STATE_ACTIVE : GO_STATE_READY); else @@ -975,9 +975,9 @@ class instance_ulduar : public InstanceMapScript if (door->GetEntry() == GO_LEVIATHAN_DOOR && door->GetPositionX() > 400.f) { if (add) - GetBossInfo(DATA_FLAME_LEVIATHAN)->door[DOOR_TYPE_PASSAGE].insert(door->GetGUID()); + GetBossInfo(DATA_FLAME_LEVIATHAN)->door[uint32(EncounterDoorBehavior::OpenWhenDone)].insert(door->GetGUID()); else - GetBossInfo(DATA_FLAME_LEVIATHAN)->door[DOOR_TYPE_PASSAGE].erase(door->GetGUID()); + GetBossInfo(DATA_FLAME_LEVIATHAN)->door[uint32(EncounterDoorBehavior::OpenWhenDone)].erase(door->GetGUID()); if (add) UpdateDoorState(door); diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/instance_utgarde_keep.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/instance_utgarde_keep.cpp index dfac043dac9..897d6af52cf 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/instance_utgarde_keep.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/instance_utgarde_keep.cpp @@ -23,9 +23,9 @@ DoorData const doorData[] = { - { GO_GIANT_PORTCULLIS_1, DATA_INGVAR, DOOR_TYPE_PASSAGE }, - { GO_GIANT_PORTCULLIS_2, DATA_INGVAR, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_GIANT_PORTCULLIS_1, DATA_INGVAR, EncounterDoorBehavior::OpenWhenDone }, + { GO_GIANT_PORTCULLIS_2, DATA_INGVAR, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; MinionData const minionData[] = diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/instance_utgarde_pinnacle.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/instance_utgarde_pinnacle.cpp index e4a9eaf249a..4c585d59832 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/instance_utgarde_pinnacle.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/instance_utgarde_pinnacle.cpp @@ -28,9 +28,9 @@ BossBoundaryData const boundaries = DoorData const doorData[] = { - { GO_SKADI_THE_RUTHLESS_DOOR, DATA_SKADI_THE_RUTHLESS, DOOR_TYPE_PASSAGE }, - { GO_KING_YMIRON_DOOR, DATA_KING_YMIRON, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_SKADI_THE_RUTHLESS_DOOR, DATA_SKADI_THE_RUTHLESS, EncounterDoorBehavior::OpenWhenDone }, + { GO_KING_YMIRON_DOOR, DATA_KING_YMIRON, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; ObjectData const creatureData[] = diff --git a/src/server/scripts/Outland/Auchindoun/SethekkHalls/instance_sethekk_halls.cpp b/src/server/scripts/Outland/Auchindoun/SethekkHalls/instance_sethekk_halls.cpp index 0036bb89192..8a871222316 100644 --- a/src/server/scripts/Outland/Auchindoun/SethekkHalls/instance_sethekk_halls.cpp +++ b/src/server/scripts/Outland/Auchindoun/SethekkHalls/instance_sethekk_halls.cpp @@ -23,8 +23,8 @@ DoorData const doorData[] = { - { GO_IKISS_DOOR, DATA_TALON_KING_IKISS, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_IKISS_DOOR, DATA_TALON_KING_IKISS, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; ObjectData const gameObjectData[] = diff --git a/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/instance_shadow_labyrinth.cpp b/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/instance_shadow_labyrinth.cpp index d3062853c3c..1ce12776d47 100644 --- a/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/instance_shadow_labyrinth.cpp +++ b/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/instance_shadow_labyrinth.cpp @@ -25,9 +25,9 @@ DoorData const doorData[] = { - { GO_REFECTORY_DOOR, DATA_BLACKHEART_THE_INCITER, DOOR_TYPE_PASSAGE }, - { GO_SCREAMING_HALL_DOOR, DATA_GRANDMASTER_VORPIL, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_REFECTORY_DOOR, DATA_BLACKHEART_THE_INCITER, EncounterDoorBehavior::OpenWhenDone }, + { GO_SCREAMING_HALL_DOOR, DATA_GRANDMASTER_VORPIL, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp b/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp index 0a21e0753a0..8f5a89f261b 100644 --- a/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp +++ b/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp @@ -26,19 +26,19 @@ DoorData const doorData[] = { - { GO_NAJENTUS_GATE, DATA_HIGH_WARLORD_NAJENTUS, DOOR_TYPE_PASSAGE }, - { GO_NAJENTUS_GATE, DATA_SUPREMUS, DOOR_TYPE_ROOM }, - { GO_SUPREMUS_GATE, DATA_SUPREMUS, DOOR_TYPE_PASSAGE }, - { GO_SHADE_OF_AKAMA_DOOR, DATA_SHADE_OF_AKAMA, DOOR_TYPE_ROOM }, - { GO_TERON_DOOR_1, DATA_TERON_GOREFIEND, DOOR_TYPE_ROOM }, - { GO_TERON_DOOR_2, DATA_TERON_GOREFIEND, DOOR_TYPE_ROOM }, - { GO_GURTOGG_DOOR, DATA_GURTOGG_BLOODBOIL, DOOR_TYPE_PASSAGE }, - { GO_MOTHER_SHAHRAZ_DOOR, DATA_MOTHER_SHAHRAZ, DOOR_TYPE_PASSAGE }, - { GO_COUNCIL_DOOR_1, DATA_ILLIDARI_COUNCIL, DOOR_TYPE_ROOM }, - { GO_COUNCIL_DOOR_2, DATA_ILLIDARI_COUNCIL, DOOR_TYPE_ROOM }, - { GO_ILLIDAN_DOOR_R, DATA_ILLIDAN_STORMRAGE, DOOR_TYPE_ROOM }, - { GO_ILLIDAN_DOOR_L, DATA_ILLIDAN_STORMRAGE, DOOR_TYPE_ROOM }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_NAJENTUS_GATE, DATA_HIGH_WARLORD_NAJENTUS, EncounterDoorBehavior::OpenWhenDone }, + { GO_NAJENTUS_GATE, DATA_SUPREMUS, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_SUPREMUS_GATE, DATA_SUPREMUS, EncounterDoorBehavior::OpenWhenDone }, + { GO_SHADE_OF_AKAMA_DOOR, DATA_SHADE_OF_AKAMA, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_TERON_DOOR_1, DATA_TERON_GOREFIEND, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_TERON_DOOR_2, DATA_TERON_GOREFIEND, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_GURTOGG_DOOR, DATA_GURTOGG_BLOODBOIL, EncounterDoorBehavior::OpenWhenDone }, + { GO_MOTHER_SHAHRAZ_DOOR, DATA_MOTHER_SHAHRAZ, EncounterDoorBehavior::OpenWhenDone }, + { GO_COUNCIL_DOOR_1, DATA_ILLIDARI_COUNCIL, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_COUNCIL_DOOR_2, DATA_ILLIDARI_COUNCIL, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ILLIDAN_DOOR_R, DATA_ILLIDAN_STORMRAGE, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_ILLIDAN_DOOR_L, DATA_ILLIDAN_STORMRAGE, EncounterDoorBehavior::OpenWhenNotInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; BossBoundaryData const boundaries = diff --git a/src/server/scripts/Outland/GruulsLair/instance_gruuls_lair.cpp b/src/server/scripts/Outland/GruulsLair/instance_gruuls_lair.cpp index b69dd7c7653..a49af27f8ad 100644 --- a/src/server/scripts/Outland/GruulsLair/instance_gruuls_lair.cpp +++ b/src/server/scripts/Outland/GruulsLair/instance_gruuls_lair.cpp @@ -22,9 +22,9 @@ DoorData const doorData[] = { - { GO_MAULGAR_DOOR, DATA_MAULGAR, DOOR_TYPE_PASSAGE }, - { GO_GRUUL_DOOR, DATA_GRUUL, DOOR_TYPE_ROOM }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_MAULGAR_DOOR, DATA_MAULGAR, EncounterDoorBehavior::OpenWhenDone }, + { GO_GRUUL_DOOR, DATA_GRUUL, EncounterDoorBehavior::OpenWhenNotInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; MinionData const minionData[] = diff --git a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp index 549e17d8beb..db2fe84bb7c 100644 --- a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp @@ -24,13 +24,13 @@ DoorData const doorData[] = { - { GO_PRISON_DOOR_01, DATA_KELIDAN_THE_BREAKER, DOOR_TYPE_PASSAGE }, - { GO_PRISON_DOOR_02, DATA_THE_MAKER, DOOR_TYPE_ROOM }, - { GO_PRISON_DOOR_03, DATA_THE_MAKER, DOOR_TYPE_PASSAGE }, - { GO_PRISON_DOOR_04, DATA_BROGGOK, DOOR_TYPE_PASSAGE }, - { GO_PRISON_DOOR_05, DATA_BROGGOK, DOOR_TYPE_ROOM }, - { GO_SUMMON_DOOR, DATA_KELIDAN_THE_BREAKER, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_PRISON_DOOR_01, DATA_KELIDAN_THE_BREAKER, EncounterDoorBehavior::OpenWhenDone }, + { GO_PRISON_DOOR_02, DATA_THE_MAKER, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_PRISON_DOOR_03, DATA_THE_MAKER, EncounterDoorBehavior::OpenWhenDone }, + { GO_PRISON_DOOR_04, DATA_BROGGOK, EncounterDoorBehavior::OpenWhenDone }, + { GO_PRISON_DOOR_05, DATA_BROGGOK, EncounterDoorBehavior::OpenWhenNotInProgress }, + { GO_SUMMON_DOOR, DATA_KELIDAN_THE_BREAKER, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; ObjectData const creatureData[] = diff --git a/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/instance_magtheridons_lair.cpp b/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/instance_magtheridons_lair.cpp index e0c1bc322b0..04c6059daca 100644 --- a/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/instance_magtheridons_lair.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/instance_magtheridons_lair.cpp @@ -30,8 +30,8 @@ BossBoundaryData const boundaries = DoorData const doorData[] = { - { GO_MAGTHERIDON_DOOR, DATA_MAGTHERIDON, DOOR_TYPE_ROOM }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_MAGTHERIDON_DOOR, DATA_MAGTHERIDON, EncounterDoorBehavior::OpenWhenNotInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; ObjectData const creatureData[] = diff --git a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/instance_shattered_halls.cpp b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/instance_shattered_halls.cpp index 38ebad415d4..5dbf231406a 100644 --- a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/instance_shattered_halls.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/instance_shattered_halls.cpp @@ -33,9 +33,9 @@ EndScriptData */ DoorData const doorData[] = { - { GO_GRAND_WARLOCK_CHAMBER_DOOR_1, DATA_NETHEKURSE, DOOR_TYPE_PASSAGE }, - { GO_GRAND_WARLOCK_CHAMBER_DOOR_2, DATA_NETHEKURSE, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } + { GO_GRAND_WARLOCK_CHAMBER_DOOR_1, DATA_NETHEKURSE, EncounterDoorBehavior::OpenWhenDone }, + { GO_GRAND_WARLOCK_CHAMBER_DOOR_2, DATA_NETHEKURSE, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/Outland/TempestKeep/Eye/instance_the_eye.cpp b/src/server/scripts/Outland/TempestKeep/Eye/instance_the_eye.cpp index 3f332f96e11..18c6ff9be49 100644 --- a/src/server/scripts/Outland/TempestKeep/Eye/instance_the_eye.cpp +++ b/src/server/scripts/Outland/TempestKeep/Eye/instance_the_eye.cpp @@ -29,9 +29,9 @@ DoorData const doorData[] = { - { GO_ARCANE_DOOR_LEFT, DATA_KAELTHAS, DOOR_TYPE_ROOM/*, BOUNDARY_SW */ }, - { GO_ARCANE_DOOR_RIGHT, DATA_KAELTHAS, DOOR_TYPE_ROOM/*, BOUNDARY_SE */ }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_ARCANE_DOOR_LEFT, DATA_KAELTHAS, EncounterDoorBehavior::OpenWhenNotInProgress/*, BOUNDARY_SW */ }, + { GO_ARCANE_DOOR_RIGHT, DATA_KAELTHAS, EncounterDoorBehavior::OpenWhenNotInProgress/*, BOUNDARY_SE */ }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; ObjectData const creatureData[] = diff --git a/src/server/scripts/Outland/TempestKeep/Mechanar/instance_mechanar.cpp b/src/server/scripts/Outland/TempestKeep/Mechanar/instance_mechanar.cpp index 9fd1208aa9e..08ed65c9bbe 100644 --- a/src/server/scripts/Outland/TempestKeep/Mechanar/instance_mechanar.cpp +++ b/src/server/scripts/Outland/TempestKeep/Mechanar/instance_mechanar.cpp @@ -21,10 +21,10 @@ static DoorData const doorData[] = { - { GO_DOOR_MOARG_1, DATA_GATEWATCHER_IRON_HAND, DOOR_TYPE_PASSAGE }, - { GO_DOOR_MOARG_2, DATA_GATEWATCHER_GYROKILL, DOOR_TYPE_PASSAGE }, - { GO_DOOR_NETHERMANCER, DATA_NETHERMANCER_SEPRETHREA, DOOR_TYPE_ROOM }, - { 0, 0, DOOR_TYPE_ROOM } + { GO_DOOR_MOARG_1, DATA_GATEWATCHER_IRON_HAND, EncounterDoorBehavior::OpenWhenDone }, + { GO_DOOR_MOARG_2, DATA_GATEWATCHER_GYROKILL, EncounterDoorBehavior::OpenWhenDone }, + { GO_DOOR_NETHERMANCER, DATA_NETHERMANCER_SEPRETHREA, EncounterDoorBehavior::OpenWhenNotInProgress }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/Outland/TempestKeep/arcatraz/instance_arcatraz.cpp b/src/server/scripts/Outland/TempestKeep/arcatraz/instance_arcatraz.cpp index adeaec19ca2..753401e34e2 100644 --- a/src/server/scripts/Outland/TempestKeep/arcatraz/instance_arcatraz.cpp +++ b/src/server/scripts/Outland/TempestKeep/arcatraz/instance_arcatraz.cpp @@ -24,9 +24,9 @@ DoorData const doorData[] = { - { GO_CONTAINMENT_CORE_SECURITY_FIELD_ALPHA, DATA_SOCCOTHRATES, DOOR_TYPE_PASSAGE }, - { GO_CONTAINMENT_CORE_SECURITY_FIELD_BETA, DATA_DALLIAH, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_CONTAINMENT_CORE_SECURITY_FIELD_ALPHA, DATA_SOCCOTHRATES, EncounterDoorBehavior::OpenWhenDone }, + { GO_CONTAINMENT_CORE_SECURITY_FIELD_BETA, DATA_DALLIAH, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; DungeonEncounterData const encounters[] = diff --git a/src/server/scripts/Zandalar/Underrot/instance_underrot.cpp b/src/server/scripts/Zandalar/Underrot/instance_underrot.cpp index f2a6ec616bc..12261013e50 100644 --- a/src/server/scripts/Zandalar/Underrot/instance_underrot.cpp +++ b/src/server/scripts/Zandalar/Underrot/instance_underrot.cpp @@ -37,8 +37,8 @@ ObjectData const creatureData[] = DoorData const doorData[] = { - { GO_WALL_DOOR_SHORTCUT_ENTRANCE, DATA_SPORECALLER_ZANCHA, DOOR_TYPE_PASSAGE }, - { 0, 0, DOOR_TYPE_ROOM } // END + { GO_WALL_DOOR_SHORTCUT_ENTRANCE, DATA_SPORECALLER_ZANCHA, EncounterDoorBehavior::OpenWhenDone }, + { 0, 0, EncounterDoorBehavior::OpenWhenNotInProgress } // END }; DungeonEncounterData const encounters[] = |