fix(core): Caches DateTime.NowUtc (#548)

- [X] Caches DateTime.NowUtc on the game loop (not other threads)
- [X] Replaces all locations where it makes sense
- [X] Adds Min/Max for `IComparable` (TimeSpan, DateTimes, etc)

Closes #261
This commit is contained in:
Kamron Batman 2021-03-13 01:32:04 -08:00 • committed by GitHub
parent 5de6edbeb8
commit 6c4308bce6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
208 changed files with 660 additions and 793 deletions

View file

@ -66,7 +66,7 @@ namespace Server.SkillHandlers
}
}
if (ends && info.m_Ending && info.m_EndTime < DateTime.UtcNow)
if (ends && info.m_Ending && info.m_EndTime < Core.Now)
{
info.m_Timer?.Stop();
@ -78,12 +78,12 @@ namespace Server.SkillHandlers
if (ends && !info.m_Ending)
{
info.m_Ending = true;
info.m_EndTime = DateTime.UtcNow + TimeSpan.FromSeconds(15);
info.m_EndTime = Core.Now + TimeSpan.FromSeconds(15);
}
else if (!ends)
{
info.m_Ending = false;
info.m_EndTime = DateTime.UtcNow;
info.m_EndTime = Core.Now;
}
targ.FixedEffect(0x376A, 1, 32);
@ -104,7 +104,7 @@ namespace Server.SkillHandlers
{
m_From = from;
m_Creature = creature;
m_EndTime = DateTime.UtcNow;
m_EndTime = Core.Now;
m_Ending = false;
m_Effect = effect;
m_Mods = mods;