diff options
Diffstat (limited to 'src/server/scripts')
3 files changed, 19 insertions, 2 deletions
diff --git a/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/azjol_nerub.h b/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/azjol_nerub.h index 134c7407d17..047f49abb0b 100644 --- a/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/azjol_nerub.h +++ b/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/azjol_nerub.h @@ -36,7 +36,8 @@ enum ANDataTypes DATA_WATCHER_NARJIL, DATA_WATCHER_GASHRA, DATA_WATCHER_SILTHIK, - DATA_ANUBARAK_WALL + DATA_ANUBARAK_WALL, + DATA_ANUBARAK_WALL_2 }; enum ANCreatureIds diff --git a/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/boss_anubarak.cpp b/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/boss_anubarak.cpp index 1708d97b2b4..d957d8be60d 100644 --- a/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/boss_anubarak.cpp +++ b/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/boss_anubarak.cpp @@ -136,6 +136,8 @@ public: if (GameObject* door = instance->GetGameObject(DATA_ANUBARAK_WALL)) door->SetGoState(GO_STATE_ACTIVE); // open door for now + if (GameObject* door2 = instance->GetGameObject(DATA_ANUBARAK_WALL_2)) + door2->SetGoState(GO_STATE_ACTIVE); Talk(SAY_AGGRO); instance->DoStartCriteriaTimer(CRITERIA_TIMED_TYPE_EVENT, ACHIEV_GOTTA_GO_START_EVENT); @@ -188,6 +190,8 @@ public: case EVENT_CLOSE_DOOR: if (GameObject* door = instance->GetGameObject(DATA_ANUBARAK_WALL)) door->SetGoState(GO_STATE_READY); + if (GameObject* door2 = instance->GetGameObject(DATA_ANUBARAK_WALL_2)) + door2->SetGoState(GO_STATE_READY); break; case EVENT_POUND: DoCastVictim(SPELL_POUND); 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 2a62c39b7d8..2586234d859 100644 --- a/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/instance_azjol_nerub.cpp +++ b/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/instance_azjol_nerub.cpp @@ -45,7 +45,8 @@ ObjectData const creatureData[] = ObjectData const gameobjectData[] = { - { GO_ANUBARAK_DOOR_3, DATA_ANUBARAK_WALL }, + { GO_ANUBARAK_DOOR_1, DATA_ANUBARAK_WALL }, + { GO_ANUBARAK_DOOR_3, DATA_ANUBARAK_WALL_2 }, { 0, 0 } // END }; @@ -81,6 +82,17 @@ class instance_azjol_nerub : public InstanceMapScript if (Creature* gatewatcher = GetCreature(DATA_KRIKTHIR_THE_GATEWATCHER)) gatewatcher->AI()->DoAction(-ACTION_GATEWATCHER_GREET); } + + bool CheckRequiredBosses(uint32 bossId, Player const* player) const override + { + if (_SkipCheckRequiredBosses(player)) + return true; + + if (bossId > DATA_KRIKTHIR && GetBossState(DATA_KRIKTHIR) != DONE) + return false; + + return true; + } }; InstanceScript* GetInstanceScript(InstanceMap* map) const override |
