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

@ -325,7 +325,7 @@ namespace Server.Mobiles
m_PayTimer = new PayTimer( this, delay );
m_PayTimer.Start();
m_NextPayTime = DateTime.Now + delay;
m_NextPayTime = DateTime.UtcNow + delay;
}
public PlayerVendor( Serial serial ) : base( serial )
@ -397,7 +397,7 @@ namespace Server.Mobiles
string description = reader.ReadString();
DateTime created = version < 1 ? DateTime.Now : reader.ReadDateTime();
DateTime created = version < 1 ? DateTime.UtcNow : reader.ReadDateTime();
if ( item != null )
{
@ -423,7 +423,7 @@ namespace Server.Mobiles
Timer.DelayCall( TimeSpan.Zero, new TimerCallback( FixDresswear ) );
}
m_NextPayTime = DateTime.Now + PayTimer.GetInterval();
m_NextPayTime = DateTime.UtcNow + PayTimer.GetInterval();
if ( newVendorSystemActivated )
{
@ -435,7 +435,7 @@ namespace Server.Mobiles
if ( version < 2 && RawStr == 75 && RawDex == 75 && RawInt == 75 )
InitStats( 100, 100, 25 );
TimeSpan delay = m_NextPayTime - DateTime.Now;
TimeSpan delay = m_NextPayTime - DateTime.UtcNow;
m_PayTimer = new PayTimer( this, delay > TimeSpan.Zero ? delay : TimeSpan.Zero );
m_PayTimer.Start();
@ -784,7 +784,7 @@ namespace Server.Mobiles
private VendorItem SetVendorItem( Item item, int price, string description )
{
return SetVendorItem( item, price, description, DateTime.Now );
return SetVendorItem( item, price, description, DateTime.UtcNow );
}
private VendorItem SetVendorItem( Item item, int price, string description, DateTime created )
@ -1109,7 +1109,7 @@ namespace Server.Mobiles
{
vendor.SayTo( from, 503202 ); // This item is not for sale.
}
else if ( vi.Created + TimeSpan.FromMinutes( 1.0 ) > DateTime.Now )
else if ( vi.Created + TimeSpan.FromMinutes( 1.0 ) > DateTime.UtcNow )
{
from.SendMessage( "You cannot buy this item right now. Please wait one minute and try again." );
}
@ -1388,7 +1388,7 @@ namespace Server.Mobiles
protected override void OnTick()
{
m_Vendor.m_NextPayTime = DateTime.Now + this.Interval;
m_Vendor.m_NextPayTime = DateTime.UtcNow + this.Interval;
int pay;
int totalGold;