aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Maps/MapInstanced.h
diff options
context:
space:
mode:
authormegamage <none@none.none>2011-11-23 09:34:08 -0500
committermegamage <none@none.none>2011-11-23 09:34:08 -0500
commit298c162c86130d59c6c60f2fedc7a9b2af034a8d (patch)
treea9d678c04646a98aaf715d64252ab56411a1f0fd /src/server/game/Maps/MapInstanced.h
parent1b3017472be902ddfb900230ea8efc07132927a1 (diff)
Do not allow an instance map to be created twice if it already exists. Fix #4018.
Diffstat (limited to 'src/server/game/Maps/MapInstanced.h')
-rwxr-xr-xsrc/server/game/Maps/MapInstanced.h15
1 files changed, 6 insertions, 9 deletions
diff --git a/src/server/game/Maps/MapInstanced.h b/src/server/game/Maps/MapInstanced.h
index af303ed0e9e..9b714cb7fb3 100755
--- a/src/server/game/Maps/MapInstanced.h
+++ b/src/server/game/Maps/MapInstanced.h
@@ -39,8 +39,12 @@ class MapInstanced : public Map
void UnloadAll();
bool CanEnter(Player* player);
- Map* CreateInstance(const uint32 mapId, Player* player);
- Map* FindMap(uint32 InstanceId) const { return _FindMap(InstanceId); }
+ Map* CreateInstanceForPlayer(const uint32 mapId, Player* player);
+ Map* FindInstanceMap(uint32 instanceId) const
+ {
+ InstancedMaps::const_iterator i = m_InstancedMaps.find(instanceId);
+ return(i == m_InstancedMaps.end() ? NULL : i->second);
+ }
bool DestroyInstance(InstancedMaps::iterator &itr);
void AddGridMapReference(const GridCoord &p)
@@ -60,18 +64,11 @@ class MapInstanced : public Map
virtual void InitVisibilityDistance();
private:
-
InstanceMap* CreateInstance(uint32 InstanceId, InstanceSave* save, Difficulty difficulty);
BattlegroundMap* CreateBattleground(uint32 InstanceId, Battleground* bg);
InstancedMaps m_InstancedMaps;
- Map* _FindMap(uint32 InstanceId) const
- {
- InstancedMaps::const_iterator i = m_InstancedMaps.find(InstanceId);
- return(i == m_InstancedMaps.end() ? NULL : i->second);
- }
-
uint16 GridMapReference[MAX_NUMBER_OF_GRIDS][MAX_NUMBER_OF_GRIDS];
};
#endif