Implement Core.TickCount

Convert movement, actions (lift/use), combat, and spells to use Core.TickCount and avoid DateTime caveats (performance, system time dependency, etc)
Refactor DateTime.Now to DateTime.UtcNow
Add LOS check for Iron Maiden addon
This commit is contained in:
Mark Sturgill 2013-10-06 03:21:18 -07:00
parent f99eefb288
commit d2c670f5c3
241 changed files with 842 additions and 831 deletions

View file

@ -216,7 +216,7 @@ namespace Server.Regions
{
AggressorInfo info = m.Aggressed[i];
if ( info.Defender.Player && (DateTime.Now - info.LastCombatTime) < CombatHeatDelay )
if ( info.Defender.Player && (DateTime.UtcNow - info.LastCombatTime) < CombatHeatDelay )
return base.GetLogoutDelay( m );
}
@ -249,7 +249,7 @@ namespace Server.Regions
{
from.SendLocalizedMessage( 500295 ); // you are too far away to do that.
}
else if ( DateTime.Now <= m_House.BuiltOn.AddHours ( 1 ) )
else if ( DateTime.UtcNow <= m_House.BuiltOn.AddHours ( 1 ) )
{
from.SendLocalizedMessage( 1080178 ); // You must wait one hour between each house demolition.
}

View file

@ -144,7 +144,7 @@ namespace Server.Regions
{
TimeSpan time = RandomTime();
m_SpawnTimer = Timer.DelayCall( time, new TimerCallback( TimerCallback ) );
m_NextSpawn = DateTime.Now + time;
m_NextSpawn = DateTime.UtcNow + time;
}
}
else if ( m_SpawnTimer != null )
@ -264,7 +264,7 @@ namespace Server.Regions
if ( m_SpawnTimer != null )
m_SpawnTimer.Stop();
TimeSpan delay = m_NextSpawn - DateTime.Now;
TimeSpan delay = m_NextSpawn - DateTime.UtcNow;
m_SpawnTimer = Timer.DelayCall( delay > TimeSpan.Zero ? delay : TimeSpan.Zero, new TimerCallback( TimerCallback ) );
}
}