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

@ -30,12 +30,11 @@ namespace Server.Commands
try
{
Output = new StreamWriter(Path.Combine(directory, $"{DateTime.UtcNow.ToLongDateString()}.log"), true);
Output = new StreamWriter(Path.Combine(directory, $"{Core.Now.ToLongDateString()}.log"), true);
Output.AutoFlush = true;
Output.WriteLine("##############################");
Output.WriteLine("Log started on {0}", DateTime.UtcNow);
Output.WriteLine("Log started on {0}", Core.Now);
Output.WriteLine();
}
catch
@ -71,7 +70,7 @@ namespace Server.Commands
try
{
Output.WriteLine("{0}: {1}: {2}", DateTime.UtcNow, from.NetState, text);
Output.WriteLine("{0}: {1}: {2}", Core.Now, from.NetState, text);
var path = Core.BaseDirectory;
@ -83,7 +82,7 @@ namespace Server.Commands
path = Path.Combine(path, $"{name}.log");
using var sw = new StreamWriter(path, true);
sw.WriteLine("{0}: {1}: {2}", DateTime.UtcNow, from.NetState, text);
sw.WriteLine("{0}: {1}: {2}", Core.Now, from.NetState, text);
}
catch
{