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

@ -155,7 +155,7 @@ namespace Server.Spells.Spellweaving
{
to.SendLocalizedMessage( 1072828 ); // Your arcane focus is renewed.
focus.LifeSpan = duration;
focus.CreationTime = DateTime.Now;
focus.CreationTime = DateTime.UtcNow;
focus.StrengthBonus = strengthBonus;
focus.InvalidateProperties();
focus.SendTimeRemainingMessage( to );

View file

@ -114,7 +114,7 @@ namespace Server.Spells.Spellweaving
public override void DoFizzle()
{
Caster.PlaySound( 0x1D6 );
Caster.NextSpellTime = DateTime.Now;
Caster.NextSpellTime = Core.TickCount;
}
public override void DoHurtFizzle()

View file

@ -64,7 +64,7 @@ namespace Server.Items
public virtual void CheckExpiry()
{
if( (m_CreationTime + m_LifeSpan) < DateTime.Now )
if( (m_CreationTime + m_LifeSpan) < DateTime.UtcNow )
Expire( RootParent as Mobile );
else
InvalidateProperties();
@ -74,7 +74,7 @@ namespace Server.Items
public TransientItem( int itemID, TimeSpan lifeSpan )
: base( itemID )
{
m_CreationTime = DateTime.Now;
m_CreationTime = DateTime.UtcNow;
m_LifeSpan = lifeSpan;
m_Timer = Timer.DelayCall( TimeSpan.FromSeconds( 5 ), TimeSpan.FromSeconds( 5 ), new TimerCallback( CheckExpiry ) );
@ -89,7 +89,7 @@ namespace Server.Items
{
base.GetProperties( list );
TimeSpan remaining = ((m_CreationTime + m_LifeSpan) - DateTime.Now);
TimeSpan remaining = ((m_CreationTime + m_LifeSpan) - DateTime.UtcNow);
list.Add( 1072517, ((int)remaining.TotalSeconds).ToString() ); // Lifespan: ~1_val~ seconds
}