| 118 | |
| 119 | void OpenDoor(uint64 DoorGUID, bool open) |
| 120 | { |
| 121 | if(((InstanceMap*)instance)->GetPlayers().size()) |
| 122 | if(Player* first = ((InstanceMap*)instance)->GetPlayers().front()) |
| 123 | if(GameObject *Door = GameObject::GetGameObject(*first, DoorGUID)) |
| 124 | Door->SetUInt32Value(GAMEOBJECT_STATE, open ? 0 : 1); |
| 125 | } |
| 126 | |
| 127 | void CloseDoor(uint64 DoorGUID, bool close) |
| 128 | { |
| 129 | if(((InstanceMap*)instance)->GetPlayers().size()) |
| 130 | if(Player* first = ((InstanceMap*)instance)->GetPlayers().front()) |
| 131 | if(GameObject *Door = GameObject::GetGameObject(*first, DoorGUID)) |
| 132 | Door->SetUInt32Value(GAMEOBJECT_STATE, close ? 1 : 0); |
| 133 | } |
| 134 | |
| 135 | |
122 | | NajentusGate = go->GetGUID(); |
123 | | break; |
124 | | case 185882: // Main Temple Doors - right past Supermoose (Supremus) |
125 | | MainTempleDoors = go->GetGUID(); |
126 | | break; |
127 | | case 185905: // Gate leading to Temple Summit |
| 161 | NajentusGate = go->GetGUID();break; |
| 162 | case 185882: // Main Temple Doors - right past Supermoose (Supremus) |
| 163 | MainTempleDoors = go->GetGUID();break; |
| 164 | case 185478: |
| 165 | ShadeOfAkamaDoor = go->GetGUID();break; |
| 166 | case 185480: |
| 167 | CommonDoor = go->GetGUID();break; |
| 168 | case 186153: |
| 169 | TeronDoor = go->GetGUID();break; |
| 170 | case 185892: |
| 171 | GuurtogDoor = go->GetGUID();break; |
| 172 | case 185479: |
| 173 | TempleDoor = go->GetGUID();break; |
| 174 | case 185482: |
| 175 | MotherDoor = go->GetGUID();break; |
| 176 | case 185481: |
| 177 | CouncilDoor = go->GetGUID();break; |
| 178 | case 186152://used by council |
| 179 | SimpleDoor = go->GetGUID();break; |
| 180 | case 185905: // Gate leading to Temple Summit |
185 | | } |
| 239 | BossKilled++; |
| 240 | } |
| 241 | CheckInstanceStatus(); |
| 242 | } |
| 243 | |
| 244 | void CheckInstanceStatus() |
| 245 | { |
| 246 | if(BossKilled >= 6) |
| 247 | OpenDoor(TempleDoor, true); |
| 248 | if(Encounters[0] == DONE) |
| 249 | OpenDoor(NajentusGate, true); |
| 250 | if(Encounters[2] == IN_PROGRESS) |
| 251 | CloseDoor(ShadeOfAkamaDoor, true); |
| 252 | else OpenDoor(ShadeOfAkamaDoor, true); |
| 253 | if(Encounters[3] == IN_PROGRESS) |
| 254 | { |
| 255 | CloseDoor(TeronDoor, true); |
| 256 | CloseDoor(CommonDoor, true); |
| 257 | }else{ |
| 258 | OpenDoor(TeronDoor, true); |
| 259 | OpenDoor(CommonDoor, true); |
| 260 | } |
| 261 | if(Encounters[4] == DONE) |
| 262 | OpenDoor(GuurtogDoor, true); |
| 263 | if(Encounters[6] == DONE) |
| 264 | OpenDoor(MotherDoor, true); |
| 265 | if(Encounters[7] == IN_PROGRESS) |
| 266 | { |
| 267 | CloseDoor(CouncilDoor, true); |
| 268 | CloseDoor(SimpleDoor, true); |
| 269 | }else{ |
| 270 | OpenDoor(CouncilDoor, true); |
| 271 | OpenDoor(SimpleDoor, true); |
| 272 | } |
| 273 | } |