aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Instances/InstanceScript.h
diff options
context:
space:
mode:
authorjackpoz <giacomopoz@gmail.com>2015-03-21 23:57:49 +0100
committerjackpoz <giacomopoz@gmail.com>2015-03-21 23:57:49 +0100
commitd888e4c7ad5ce48eb1f550b3e142dad16c026d0c (patch)
treecd5abe6d78e0242fb098793ae83fa85eaacded07 /src/server/game/Instances/InstanceScript.h
parent922be41916e10117d35821cb863bffe5dc20144f (diff)
Scripts/Ulduar: Fix some Flame Leviathan issues
Fix some Flame Leviathan issues: - Fix boss evading all the time due to bad Doors check - Opened "Lightning Door" to other bosses only after boss dies - Eject players from the vehicles when boss dies, make them untargetable and despawn them after 5 minutes (adjust the time to the blizzlike time of choice)
Diffstat (limited to 'src/server/game/Instances/InstanceScript.h')
-rw-r--r--src/server/game/Instances/InstanceScript.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/server/game/Instances/InstanceScript.h b/src/server/game/Instances/InstanceScript.h
index 3089a4193c9..41a9e9d0be1 100644
--- a/src/server/game/Instances/InstanceScript.h
+++ b/src/server/game/Instances/InstanceScript.h
@@ -254,12 +254,16 @@ class InstanceScript : public ZoneScript
void AddObject(GameObject* obj, bool add);
void AddObject(WorldObject* obj, uint32 type, bool add);
- void AddDoor(GameObject* door, bool add);
+ virtual void AddDoor(GameObject* door, bool add);
void AddMinion(Creature* minion, bool add);
- void UpdateDoorState(GameObject* door);
+ virtual void UpdateDoorState(GameObject* door);
void UpdateMinionState(Creature* minion, EncounterState state);
+ // Exposes private data that should never be modified unless exceptional cases.
+ // Pay very much attention at how the returned BossInfo data is modified to avoid issues.
+ BossInfo* GetBossInfo(uint32 id);
+
// Instance Load and Save
bool ReadSaveDataHeaders(std::istringstream& data);
void ReadSaveDataBossStates(std::istringstream& data);