aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Maps/MapManager.h
diff options
context:
space:
mode:
authorNaios <naios-dev@live.de>2016-04-02 22:37:51 +0200
committerNaios <naios-dev@live.de>2016-04-11 21:40:38 +0200
commit775e0764e8ec14cfdaeb8db3852da95311004337 (patch)
treeff4b3eaac71a450e40e45f1e0469ca6e1a4cf3e6 /src/server/game/Maps/MapManager.h
parent518692b4cbc20af68248119559a248ab8565fe9a (diff)
Core/Game: Move scheduled map scripts counter methods into MapManager
* Since those have nothing to do with core scripts and are not wished inside the ScriptMgr (cherry picked from commit 59e3cf82acaea5a0e5023e087e0ca1e6a9d15d82)
Diffstat (limited to 'src/server/game/Maps/MapManager.h')
-rw-r--r--src/server/game/Maps/MapManager.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/server/game/Maps/MapManager.h b/src/server/game/Maps/MapManager.h
index e74453a1196..a7fdc37d324 100644
--- a/src/server/game/Maps/MapManager.h
+++ b/src/server/game/Maps/MapManager.h
@@ -126,6 +126,11 @@ class TC_GAME_API MapManager
template<typename Worker>
void DoForAllMapsWithMapId(uint32 mapId, Worker&& worker);
+ uint32 IncreaseScheduledScriptsCount() { return ++_scheduledScripts; }
+ uint32 DecreaseScheduledScriptCount() { return --_scheduledScripts; }
+ uint32 DecreaseScheduledScriptCount(size_t count) { return _scheduledScripts -= count; }
+ bool IsScriptScheduled() const { return _scheduledScripts > 0; }
+
private:
typedef std::unordered_map<uint32, Map*> MapMapType;
typedef std::vector<bool> InstanceIds;
@@ -150,6 +155,9 @@ class TC_GAME_API MapManager
InstanceIds _instanceIds;
uint32 _nextInstanceId;
MapUpdater m_updater;
+
+ // atomic op counter for active scripts amount
+ std::atomic<uint32> _scheduledScripts;
};
template<typename Worker>