diff options
author | maximius <none@none> | 2009-10-17 15:35:07 -0700 |
---|---|---|
committer | maximius <none@none> | 2009-10-17 15:35:07 -0700 |
commit | 26b5e033ffde3d161382fc9addbfa99738379641 (patch) | |
tree | a344f369ca32945f787a02dee35c3dbe342bed7e /src/game/InstanceData.h | |
parent | f21f47005dcb6b76e1abc9f35fbcd03eed191bff (diff) |
*Massive cleanup (\n\n -> \n, *\n -> \n, cleanup for(...) to for (...), and some other cleanups by hand)
*Fix a possible crash in Spell::DoAllEffectOnTarget
--HG--
branch : trunk
Diffstat (limited to 'src/game/InstanceData.h')
-rw-r--r-- | src/game/InstanceData.h | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/src/game/InstanceData.h b/src/game/InstanceData.h index 010a3d44d42..29bae24436b 100644 --- a/src/game/InstanceData.h +++ b/src/game/InstanceData.h @@ -17,23 +17,18 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ - #ifndef TRINITY_INSTANCE_DATA_H #define TRINITY_INSTANCE_DATA_H - #include "ZoneScript.h" //#include "GameObject.h" //#include "Map.h" - class Map; class Unit; class Player; class GameObject; class Creature; - typedef std::set<GameObject*> DoorSet; typedef std::set<Creature*> MinionSet; - enum EncounterState { NOT_STARTED = 0, @@ -43,14 +38,12 @@ enum EncounterState SPECIAL = 4, TO_BE_DECIDED = 5, }; - enum DoorType { DOOR_TYPE_ROOM = 0, DOOR_TYPE_PASSAGE, MAX_DOOR_TYPES, }; - enum BoundaryType { BOUNDARY_NONE = 0, @@ -67,21 +60,17 @@ enum BoundaryType BOUNDARY_MAX_Y = BOUNDARY_W, BOUNDARY_MIN_Y = BOUNDARY_E, }; - typedef std::map<BoundaryType, float> BossBoundaryMap; - struct DoorData { uint32 entry, bossId; DoorType type; uint32 boundary; }; - struct MinionData { uint32 entry, bossId; }; - struct BossInfo { BossInfo() : state(TO_BE_DECIDED) {} @@ -90,7 +79,6 @@ struct BossInfo MinionSet minion; BossBoundaryMap boundary; }; - struct DoorInfo { explicit DoorInfo(BossInfo *_bossInfo, DoorType _type, BoundaryType _boundary) @@ -99,70 +87,50 @@ struct DoorInfo DoorType type; BoundaryType boundary; }; - struct MinionInfo { explicit MinionInfo(BossInfo *_bossInfo) : bossInfo(_bossInfo) {} BossInfo *bossInfo; }; - typedef std::multimap<uint32 /*entry*/, DoorInfo> DoorInfoMap; typedef std::map<uint32 /*entry*/, MinionInfo> MinionInfoMap; - class TRINITY_DLL_SPEC InstanceData : public ZoneScript { public: - explicit InstanceData(Map *map) : instance(map) {} virtual ~InstanceData() {} - Map *instance; - //On creation, NOT load. virtual void Initialize() {} - //On load virtual void Load(const char * data) { LoadBossState(data); } - //When save is needed, this function generates the data virtual std::string GetSaveData() { return GetBossSaveData(); } - void SaveToDB(); - virtual void Update(uint32 diff) {} - //Used by the map's CanEnter function. //This is to prevent players from entering during boss encounters. virtual bool IsEncounterInProgress() const; - //Called when a player successfully enters the instance. virtual void OnPlayerEnter(Player *) {} - //Handle open / close objects //use HandleGameObject(NULL,boolen,GO); in OnObjectCreate in instance scripts //use HandleGameObject(GUID,boolen,NULL); in any other script void HandleGameObject(uint64 GUID, bool open, GameObject *go = NULL); - //change active state of doors or buttons void DoUseDoorOrButton(uint64 uiGuid, uint32 uiWithRestoreTime = 0, bool bUseAlternativeState = false); - //Respawns a GO having negative spawntimesecs in gameobject-table void DoRespawnGameObject(uint64 uiGuid, uint32 uiTimeToDespawn = MINUTE); - //sends world state update to all players in instance void DoUpdateWorldState(uint32 uiStateId, uint32 uiStateData); - /* Not used anywhere yet, not sure if they're needed: // Send Notify to all players in instance void DoSendNotifyToInstance(const char *format,...); - // Complete Achievement for all players in instance void DoCompleteAchievement(uint32 achievement); */ - // Remove Auras due to Spell on all players in instance void DoRemoveAurasDueToSpellOnPlayers(uint32 spell); - virtual bool SetBossState(uint32 id, EncounterState state); EncounterState GetBossState(uint32 id) const { return id < bosses.size() ? bosses[id].state : TO_BE_DECIDED; } const BossBoundaryMap * GetBossBoundary(uint32 id) const { return id < bosses.size() ? &bosses[id].boundary : NULL; } @@ -170,13 +138,10 @@ class TRINITY_DLL_SPEC InstanceData : public ZoneScript void SetBossNumber(uint32 number) { bosses.resize(number); } void LoadDoorData(const DoorData *data); void LoadMinionData(const MinionData *data); - void AddDoor(GameObject *door, bool add); void AddMinion(Creature *minion, bool add); - void UpdateDoorState(GameObject *door); void UpdateMinionState(Creature *minion, EncounterState state); - std::string LoadBossState(const char * data); std::string GetBossSaveData(); private: |