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

@ -61,9 +61,9 @@ namespace Server.Mobiles
{
if (!from.Alive && (from is PlayerMobile))
{
if (!from.Frozen && (DateTime.Now >= m_NextResurrect) && InRange(from, 4) && !InRange(oldLocation, 4) && InLOS(from))
if (!from.Frozen && (DateTime.UtcNow >= m_NextResurrect) && InRange(from, 4) && !InRange(oldLocation, 4) && InLOS(from))
{
m_NextResurrect = DateTime.Now + ResurrectDelay;
m_NextResurrect = DateTime.UtcNow + ResurrectDelay;
if (!from.Criminal && (from.Kills < 5) && (from.Karma > 0))
{
if (from.Map != null && from.Map.CanFit(from.Location, 16, false, false))

View file

@ -51,7 +51,7 @@ namespace Server.Mobiles
public override void OnThink()
{
if ( m_Owner != null && ( DateTime.Now >= m_ExpireTime || m_Owner.Deleted || Map != m_Owner.Map || !InRange( m_Owner, 16 ) ) )
if ( m_Owner != null && ( DateTime.UtcNow >= m_ExpireTime || m_Owner.Deleted || Map != m_Owner.Map || !InRange( m_Owner, 16 ) ) )
{
PlaySound( GetIdleSound() );
Delete();
@ -65,7 +65,7 @@ namespace Server.Mobiles
public PlagueSpawn( Mobile owner ) : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
{
m_Owner = owner;
m_ExpireTime = DateTime.Now + TimeSpan.FromMinutes( 1.0 );
m_ExpireTime = DateTime.UtcNow + TimeSpan.FromMinutes( 1.0 );
Name = "a plague spawn";
Hue = Utility.Random( 0x11, 15 );

View file

@ -56,10 +56,10 @@ namespace Server.Mobiles
if ( combatant == null || combatant.Deleted || combatant.Map != Map || !InRange( combatant, 12 ) || !CanBeHarmful( combatant ) || !InLOS( combatant ) )
return;
if ( DateTime.Now >= m_NextAttack )
if ( DateTime.UtcNow >= m_NextAttack )
{
SandAttack( combatant );
m_NextAttack = DateTime.Now + TimeSpan.FromSeconds( 10.0 + (10.0 * Utility.RandomDouble()) );
m_NextAttack = DateTime.UtcNow + TimeSpan.FromSeconds( 10.0 + (10.0 * Utility.RandomDouble()) );
}
}