diff options
| author | jackpoz <giacomopoz@gmail.com> | 2017-12-10 12:39:37 +0100 |
|---|---|---|
| committer | funjoker <funjoker109@gmail.com> | 2021-04-15 05:53:27 +0200 |
| commit | e17e4e6f0700c7d950e1b2654c217ec8b28ae79e (patch) | |
| tree | 8d78ebf4f2d95c6a18075840f6d02b62b4c6fcad /src/server/game/Entities/GameObject | |
| parent | 76b2d37259c8beb3cc1b698eb28fd7e068366724 (diff) | |
Core/Misc: Replace time(NULL) with GameTime::GetGameTime()
(cherry picked from commit 12701cb0c6c45eb105ad449eb9a56e76d84d691e)
Conflicts:
src/server/game/Achievements/AchievementMgr.cpp
src/server/game/AuctionHouse/AuctionHouseMgr.cpp
src/server/game/AuctionHouseBot/AuctionHouseBotBuyer.cpp
src/server/game/AuctionHouseBot/AuctionHouseBotSeller.cpp
src/server/game/Battlefield/Battlefield.cpp
src/server/game/Battlefield/Zones/BattlefieldWG.cpp
src/server/game/Battlegrounds/BattlegroundMgr.cpp
src/server/game/Calendar/CalendarMgr.h
src/server/game/DungeonFinding/LFGQueue.cpp
src/server/game/Entities/Corpse/Corpse.cpp
src/server/game/Entities/Creature/Creature.cpp
src/server/game/Entities/Item/Item.cpp
src/server/game/Entities/Pet/Pet.cpp
src/server/game/Entities/Player/Player.cpp
src/server/game/Entities/Unit/Unit.cpp
src/server/game/Globals/ObjectMgr.cpp
src/server/game/Grids/ObjectGridLoader.cpp
src/server/game/Guilds/Guild.cpp
src/server/game/Handlers/AuctionHouseHandler.cpp
src/server/game/Handlers/BattlefieldHandler.cpp
src/server/game/Handlers/CalendarHandler.cpp
src/server/game/Handlers/CharacterHandler.cpp
src/server/game/Handlers/ChatHandler.cpp
src/server/game/Handlers/LFGHandler.cpp
src/server/game/Handlers/MailHandler.cpp
src/server/game/Handlers/MiscHandler.cpp
src/server/game/Handlers/MovementHandler.cpp
src/server/game/Handlers/PetHandler.cpp
src/server/game/Handlers/QueryHandler.cpp
src/server/game/Handlers/TicketHandler.cpp
src/server/game/Instances/InstanceSaveMgr.cpp
src/server/game/Server/WorldSession.cpp
src/server/game/Server/WorldSocket.cpp
src/server/game/Spells/Auras/SpellAuras.cpp
src/server/game/Tickets/TicketMgr.cpp
src/server/game/Tickets/TicketMgr.h
src/server/game/World/World.cpp
src/server/scripts/Commands/cs_gobject.cpp
src/server/scripts/Commands/cs_instance.cpp
src/server/scripts/Commands/cs_list.cpp
src/server/scripts/Northrend/zone_wintergrasp.cpp
src/server/scripts/Spells/spell_item.cpp
Diffstat (limited to 'src/server/game/Entities/GameObject')
| -rw-r--r-- | src/server/game/Entities/GameObject/GameObject.cpp | 34 | ||||
| -rw-r--r-- | src/server/game/Entities/GameObject/GameObject.h | 17 |
2 files changed, 30 insertions, 21 deletions
diff --git a/src/server/game/Entities/GameObject/GameObject.cpp b/src/server/game/Entities/GameObject/GameObject.cpp index a91ec5c23ff..13ecb688257 100644 --- a/src/server/game/Entities/GameObject/GameObject.cpp +++ b/src/server/game/Entities/GameObject/GameObject.cpp @@ -589,7 +589,7 @@ void GameObject::Update(uint32 diff) case GAMEOBJECT_TYPE_FISHINGNODE: { // fishing code (bobber ready) - if (time(nullptr) > m_respawnTime - FISHING_BOBBER_READY_TIME) + if (GameTime::GetGameTime() > m_respawnTime - FISHING_BOBBER_READY_TIME) { // splash bobber (bobber ready now) Unit* caster = GetOwner(); @@ -623,7 +623,7 @@ void GameObject::Update(uint32 diff) { if (m_respawnTime > 0) // timer on { - time_t now = time(nullptr); + time_t now = GameTime::GetGameTime(); if (m_respawnTime <= now) // timer expired { ObjectGuid dbtableHighGuid = ObjectGuid::Create<HighGuid::GameObject>(GetMapId(), GetEntry(), m_spawnId); @@ -903,7 +903,7 @@ void GameObject::Update(uint32 diff) uint32 respawnDelay = m_respawnDelayTime; if (uint32 scalingMode = sWorld->getIntConfig(CONFIG_RESPAWN_DYNAMICMODE)) GetMap()->ApplyDynamicModeRespawnScaling(this, this->m_spawnId, respawnDelay, scalingMode); - m_respawnTime = time(nullptr) + respawnDelay; + m_respawnTime = GameTime::GetGameTime() + respawnDelay; // if option not set then object will be saved at grid unload // Otherwise just save respawn time to map object memory @@ -1139,7 +1139,7 @@ bool GameObject::LoadFromDB(ObjectGuid::LowType spawnId, Map* map, bool addToMap m_respawnTime = GetMap()->GetGORespawnTime(m_spawnId); // ready to respawn - if (m_respawnTime && m_respawnTime <= time(nullptr)) + if (m_respawnTime && m_respawnTime <= GameTime::GetGameTime()) { m_respawnTime = 0; GetMap()->RemoveRespawnTime(SPAWN_TYPE_GAMEOBJECT, m_spawnId); @@ -1246,7 +1246,7 @@ Unit* GameObject::GetOwner() const void GameObject::SaveRespawnTime(uint32 forceDelay, bool savetodb) { - if (m_goData && m_respawnTime > time(nullptr) && m_spawnedByDefault) + if (m_goData && m_respawnTime > GameTime::GetGameTime() && m_spawnedByDefault) { if (m_respawnCompatibilityMode) { @@ -1254,7 +1254,7 @@ void GameObject::SaveRespawnTime(uint32 forceDelay, bool savetodb) return; } - uint32 thisRespawnTime = forceDelay ? time(nullptr) + forceDelay : m_respawnTime; + uint32 thisRespawnTime = forceDelay ? GameTime::GetGameTime() + forceDelay : m_respawnTime; GetMap()->SaveRespawnTime(SPAWN_TYPE_GAMEOBJECT, m_spawnId, GetEntry(), thisRespawnTime, GetZoneId(), Trinity::ComputeGridCoord(GetPositionX(), GetPositionY()).GetId(), m_goData->dbData ? savetodb : false); } } @@ -1319,11 +1319,26 @@ uint8 GameObject::GetLevelForTarget(WorldObject const* target) const return 1; } +time_t GameObject::GetRespawnTimeEx() const +{ + time_t now = GameTime::GetGameTime(); + if (m_respawnTime > now) + return m_respawnTime; + else + return now; +} + +void GameObject::SetRespawnTime(int32 respawn) +{ + m_respawnTime = respawn > 0 ? GameTime::GetGameTime() + respawn : 0; + m_respawnDelayTime = respawn > 0 ? respawn : 0; +} + void GameObject::Respawn() { if (m_spawnedByDefault && m_respawnTime > 0) { - m_respawnTime = time(nullptr); + m_respawnTime = GameTime::GetGameTime(); GetMap()->RemoveRespawnTime(SPAWN_TYPE_GAMEOBJECT, m_spawnId, true); } } @@ -2454,6 +2469,11 @@ void GameObject::SetLootState(LootState state, Unit* unit) } } +void GameObject::SetLootGenerationTime() +{ + m_lootGenerationTime = GameTime::GetGameTime(); +} + void GameObject::SetGoState(GOState state) { SetUpdateFieldValue(m_values.ModifyValue(&GameObject::m_gameObjectData).ModifyValue(&UF::GameObjectData::State), state); diff --git a/src/server/game/Entities/GameObject/GameObject.h b/src/server/game/Entities/GameObject/GameObject.h index a0700a24fc5..ea4d55f963d 100644 --- a/src/server/game/Entities/GameObject/GameObject.h +++ b/src/server/game/Entities/GameObject/GameObject.h @@ -150,20 +150,9 @@ class TC_GAME_API GameObject : public WorldObject, public GridObject<GameObject> uint32 GetSpellId() const { return m_spellId;} time_t GetRespawnTime() const { return m_respawnTime; } - time_t GetRespawnTimeEx() const - { - time_t now = time(nullptr); - if (m_respawnTime > now) - return m_respawnTime; - else - return now; - } + time_t GetRespawnTimeEx() const; - void SetRespawnTime(int32 respawn) - { - m_respawnTime = respawn > 0 ? time(nullptr) + respawn : 0; - m_respawnDelayTime = respawn > 0 ? respawn : 0; - } + void SetRespawnTime(int32 respawn); void Respawn(); bool isSpawned() const { @@ -210,7 +199,7 @@ class TC_GAME_API GameObject : public WorldObject, public GridObject<GameObject> void AddLootMode(uint16 lootMode) { m_LootMode |= lootMode; } void RemoveLootMode(uint16 lootMode) { m_LootMode &= ~lootMode; } void ResetLootMode() { m_LootMode = LOOT_MODE_DEFAULT; } - void SetLootGenerationTime() { m_lootGenerationTime = time(nullptr); } + void SetLootGenerationTime(); uint32 GetLootGenerationTime() const { return m_lootGenerationTime; } void AddToSkillupList(ObjectGuid const& PlayerGuidLow) { m_SkillupList.insert(PlayerGuidLow); } |
