diff options
Diffstat (limited to 'src/game/InstanceSaveMgr.cpp')
| -rw-r--r-- | src/game/InstanceSaveMgr.cpp | 34 | 
1 files changed, 15 insertions, 19 deletions
diff --git a/src/game/InstanceSaveMgr.cpp b/src/game/InstanceSaveMgr.cpp index ba34f949a5f..d4232a71838 100644 --- a/src/game/InstanceSaveMgr.cpp +++ b/src/game/InstanceSaveMgr.cpp @@ -1,7 +1,7 @@  /* - * Copyright (C) 2005-2008 MaNGOS <http://www.mangosproject.org/> + * Copyright (C) 2005-2009 MaNGOS <http://getmangos.com/>   * - * Copyright (C) 2008 Trinity <http://www.trinitycore.org/> + * Copyright (C) 2008-2009 Trinity <http://www.trinitycore.org/>   *   *   * This program is free software; you can redistribute it and/or modify @@ -19,13 +19,11 @@   * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA   */ -#include "InstanceSaveMgr.h"  #include "Common.h"  #include "Database/SQLStorage.h"  #include "Player.h"  #include "GridNotifiers.h" -#include "WorldSession.h"  #include "Log.h"  #include "GridStates.h"  #include "CellImpl.h" @@ -37,7 +35,6 @@  #include "GridNotifiersImpl.h"  #include "Config/ConfigEnv.h"  #include "Transports.h" -#include "ObjectAccessor.h"  #include "ObjectMgr.h"  #include "World.h"  #include "Group.h" @@ -142,9 +139,8 @@ void InstanceSaveManager::RemoveInstanceSave(uint32 InstanceId)      }  } -InstanceSave::InstanceSave(uint16 MapId, uint32 InstanceId, uint8 difficulty, -                           time_t resetTime, bool canReset) -: m_mapid(MapId), m_instanceid(InstanceId), m_resetTime(resetTime), +InstanceSave::InstanceSave(uint16 MapId, uint32 InstanceId, uint8 difficulty, time_t resetTime, bool canReset) +: m_resetTime(resetTime), m_instanceid(InstanceId), m_mapid(MapId),    m_difficulty(difficulty), m_canReset(canReset)  {  } @@ -270,7 +266,7 @@ void InstanceSaveManager::CleanupInstances()      // creature_respawn and gameobject_respawn are in another database      // first, obtain total instance set -    std::set< uint32 > InstanceSet; +    std::set<uint32> InstanceSet;      QueryResult *result = CharacterDatabase.Query("SELECT id FROM instance");      if( result )      { @@ -322,7 +318,7 @@ void InstanceSaveManager::PackInstances()      // TODO: this can be done a LOT more efficiently      // obtain set of all associations -    std::set< uint32 > InstanceSet; +    std::set<uint32> InstanceSet;      // all valid ids are in the instance table      // any associations to ids not in this table are assumed to be @@ -344,7 +340,7 @@ void InstanceSaveManager::PackInstances()      uint32 InstanceNumber = 1;      // we do assume std::set is sorted properly on integer value -    for (std::set< uint32 >::iterator i = InstanceSet.begin(); i != InstanceSet.end(); ++i) +    for (std::set<uint32>::iterator i = InstanceSet.begin(); i != InstanceSet.end(); ++i)      {          if (*i != InstanceNumber)          { @@ -361,8 +357,8 @@ void InstanceSaveManager::PackInstances()          bar.step();      } -    sLog.outString();      sLog.outString( ">> Instance numbers remapped, next instance id is %u", InstanceNumber ); +    sLog.outString();  }  void InstanceSaveManager::LoadResetTimes() @@ -375,14 +371,14 @@ void InstanceSaveManager::LoadResetTimes()      // get the current reset times for normal instances (these may need to be updated)      // these are only kept in memory for InstanceSaves that are loaded later      // resettime = 0 in the DB for raid/heroic instances so those are skipped -    typedef std::map<uint32, std::pair<uint32, uint64> > ResetTimeMapType; +    typedef std::map<uint32, std::pair<uint32, time_t> > ResetTimeMapType;      ResetTimeMapType InstResetTime;      QueryResult *result = CharacterDatabase.Query("SELECT id, map, resettime FROM instance WHERE resettime > 0");      if( result )      {          do          { -            if(uint64 resettime = (*result)[2].GetUInt64()) +            if(time_t resettime = time_t((*result)[2].GetUInt64()))              {                  uint32 id = (*result)[0].GetUInt32();                  uint32 mapid = (*result)[1].GetUInt32(); @@ -400,11 +396,11 @@ void InstanceSaveManager::LoadResetTimes()              {                  Field *fields = result->Fetch();                  uint32 instance = fields[1].GetUInt32(); -                uint64 resettime = fields[0].GetUInt64() + 2 * HOUR; +                time_t resettime = time_t(fields[0].GetUInt64() + 2 * HOUR);                  ResetTimeMapType::iterator itr = InstResetTime.find(instance);                  if(itr != InstResetTime.end() && itr->second.second != resettime)                  { -                    CharacterDatabase.DirectPExecute("UPDATE instance SET resettime = '"I64FMTD"' WHERE id = '%u'", resettime, instance); +                    CharacterDatabase.DirectPExecute("UPDATE instance SET resettime = '"I64FMTD"' WHERE id = '%u'", uint64(resettime), instance);                      itr->second.second = resettime;                  }              } @@ -454,7 +450,7 @@ void InstanceSaveManager::LoadResetTimes()      // add the global reset times to the priority queue      for(uint32 i = 0; i < sInstanceTemplate.MaxEntry; i++)      { -        InstanceTemplate* temp = (InstanceTemplate*)objmgr.GetInstanceTemplate(i); +        InstanceTemplate const* temp = objmgr.GetInstanceTemplate(i);          if(!temp) continue;          // only raid/heroic maps have a global reset time          const MapEntry* entry = sMapStore.LookupEntry(temp->map); @@ -583,7 +579,7 @@ void InstanceSaveManager::_ResetOrWarnAll(uint32 mapid, bool warn, uint32 timeLe  {      // global reset for all instances of the given map      // note: this isn't fast but it's meant to be executed very rarely -    Map *map = (MapInstanced*)MapManager::Instance().GetBaseMap(mapid); +    Map const *map = MapManager::Instance().GetBaseMap(mapid);      if(!map->Instanceable())          return;      uint64 now = (uint64)time(NULL); @@ -591,7 +587,7 @@ void InstanceSaveManager::_ResetOrWarnAll(uint32 mapid, bool warn, uint32 timeLe      if(!warn)      {          // this is called one minute before the reset time -        InstanceTemplate* temp = (InstanceTemplate*)objmgr.GetInstanceTemplate(mapid); +        InstanceTemplate const* temp = objmgr.GetInstanceTemplate(mapid);          if(!temp || !temp->reset_delay)          {              sLog.outError("InstanceSaveManager::ResetOrWarnAll: no instance template or reset delay for map %d", mapid);  | 
