Artkeep
Members-
Posts
16 -
Joined
-
Last visited
Never -
Donations
0.00 GBP
Artkeep's Achievements
Member (2/3)
0
Reputation
-
I've had problems with incorrect data, now everything works
-
Compare these do you have data?
-
The same problem, fault maps, have any ideas?
-
UP !!!! Solution is for Linux?
-
diff --git a/src/game/InstanceSaveMgr.cpp b/src/game/InstanceSaveMgr.cpp index 289ea07..e67e0a8 100644 --- a/src/game/InstanceSaveMgr.cpp +++ b/src/game/InstanceSaveMgr.cpp @@ -501,9 +501,10 @@ void InstanceSaveManager::LoadResetTimes() // schedule the global reset/warning uint8 type = 1; static int tim[4] = {3600, 900, 300, 60}; - for(; type < 4; type++) + for(type; type < 4; type++) if(t - tim[type-1] > now) break; + ScheduleReset(true, t - tim[type-1], InstResetEvent(type, mapid, difficulty, -1)); for(ResetTimeMapDiffInstances::const_iterator in_itr = mapDiffResetInstances.lower_bound(map_diff_pair); in_itr != mapDiffResetInstances.upper_bound(map_diff_pair); ++in_itr) @@ -610,6 +611,7 @@ void InstanceSaveManager::_ResetOrWarnAll(uint32 mapid, Difficulty difficulty, b return; time_t now = time(NULL); + time_t today = (now / DAY) * DAY; if (!warn) { @@ -638,11 +640,16 @@ void InstanceSaveManager::_ResetOrWarnAll(uint32 mapid, Difficulty difficulty, b // calculate the next reset time uint32 diff = sWorld.getConfig(CONFIG_UINT32_INSTANCE_RESET_TIME_HOUR) * HOUR; - uint32 period = mapDiff->resetTime * DAY; + uint32 period = uint32(mapDiff->resetTime / DAY * sWorld.getConfig(CONFIG_FLOAT_RATE_INSTANCE_RESET_TIME)) * DAY; + if (period < DAY) + period = DAY; time_t next_reset = ((now + timeLeft + MINUTE) / DAY * DAY) + period + diff; + SetResetTimeFor(mapid, difficulty, next_reset); + ScheduleReset(true, time_t(next_reset-3600), InstResetEvent(1, mapid, difficulty, -1)); // update it in the DB CharacterDatabase.PExecute("UPDATE instance_reset SET resettime = '"UI64FMTD"' WHERE mapid = '%d' AND difficulty = '%d'", (uint64)next_reset, mapid, difficulty); - } + SetResetTimeFor(mapid,difficulty,(uint64)next_reset); + ScheduleReset(true, next_reset-3600, InstResetEvent(1, mapid, difficulty, -1)); } // note: this isn't fast but it's meant to be executed very rarely Map const *map = sMapMgr.CreateBaseMap(mapid); // _not_ include difficulty Compiles.This fix works only Win, on Unix bug remains
-
This bug is Unix only. Help!
-
And if 9435?
-
decision? http://github.com/mangos/mangos/commit/cf4bec609ed00a8f2edfb4b3e1fd699c2d029980
-
code fix i'm not test diff --git a/src/game/InstanceSaveMgr.cpp b/src/game/InstanceSaveMgr.cpp index 81aca01..f408079 100644 --- a/src/game/InstanceSaveMgr.cpp +++ b/src/game/InstanceSaveMgr.cpp @@ -475,7 +475,9 @@ void InstanceSaveManager::LoadResetTimes() continue; // the reset_delay must be at least one day - uint32 period = (mapDiff->resetTime / DAY * sWorld.getRate(RATE_INSTANCE_RESET_TIME)) * DAY; + uint32 period = ((mapDiff->resetTime * sWorld.getRate(RATE_INSTANCE_RESET_TIME))/DAY) * DAY; + if (period < DAY) + period = DAY; time_t t = GetResetTimeFor(mapid,difficulty); if(!t) @@ -503,6 +505,8 @@ void InstanceSaveManager::LoadResetTimes() if(t - tim[type-1] > now) break; + ScheduleReset(true, t - tim[type-1], InstResetEvent(type, mapid, difficulty, -1)); + for(ResetTimeMapDiffInstances::const_iterator in_itr = mapDiffResetInstances.lower_bound(map_diff_pair); in_itr != mapDiffResetInstances.upper_bound(map_diff_pair); ++in_itr) { @@ -636,8 +640,14 @@ void InstanceSaveManager::_ResetOrWarnAll(uint32 mapid, Difficulty difficulty, b // calculate the next reset time uint32 diff = sWorld.getConfig(CONFIG_INSTANCE_RESET_TIME_HOUR) * HOUR; - uint32 period = mapDiff->resetTime * DAY; + uint32 period = ((mapDiff->resetTime * sWorld.getRate(RATE_INSTANCE_RESET_TIME))/DAY) * DAY; + if (period < DAY) + period = DAY; uint64 next_reset = ((now + timeLeft + MINUTE) / DAY * DAY) + period + diff; + + SetResetTimeFor(mapid, difficulty, next_reset); + ScheduleReset(true, time_t(next_reset-3600), InstResetEvent(1, mapid, difficulty, -1)); + // update it in the DB CharacterDatabase.PExecute("UPDATE instance_reset SET resettime = '"UI64FMTD"' WHERE mapid = '%d' AND difficulty = '%d'", next_reset, mapid, difficulty); }
-
confirm 9424 Ytdb 535 SD1586 Debianx64
-
Error not compiled.
-
Please make Diff patch for 3.2.2. my mistakes
-
ooo good thx No Edit realmlist.wtf automatically
Contact Us
To contact us
click here
You can also email us at [email protected]
Privacy Policy | Terms & Conditions
You can also email us at [email protected]
Privacy Policy | Terms & Conditions
Copyright © getMaNGOS. All rights Reserved.
This website is in no way associated with or endorsed by Blizzard Entertainment®
This website is in no way associated with or endorsed by Blizzard Entertainment®