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:
parent
f99eefb288
commit
d2c670f5c3
241 changed files with 842 additions and 831 deletions
|
|
@ -62,13 +62,13 @@ namespace Server.Engines.MLQuests.Objectives
|
|||
m_Instance = instance;
|
||||
|
||||
if ( obj.IsTimed )
|
||||
m_EndTime = DateTime.Now + obj.Duration;
|
||||
m_EndTime = DateTime.UtcNow + obj.Duration;
|
||||
}
|
||||
|
||||
public virtual void WriteToGump( Gump g, ref int y )
|
||||
{
|
||||
if ( IsTimed )
|
||||
WriteTimeRemaining( g, ref y, ( m_EndTime > DateTime.Now ) ? ( m_EndTime - DateTime.Now ) : TimeSpan.Zero );
|
||||
WriteTimeRemaining( g, ref y, ( m_EndTime > DateTime.UtcNow ) ? ( m_EndTime - DateTime.UtcNow ) : TimeSpan.Zero );
|
||||
}
|
||||
|
||||
public static void WriteTimeRemaining( Gump g, ref int y, TimeSpan timeRemaining )
|
||||
|
|
|
|||
|
|
@ -52,11 +52,11 @@ namespace Server.Engines.MLQuests.Objectives
|
|||
|
||||
DateTime nextEscort = pm.LastEscortTime + BaseEscortable.EscortDelay;
|
||||
|
||||
if ( nextEscort > DateTime.Now )
|
||||
if ( nextEscort > DateTime.UtcNow )
|
||||
{
|
||||
if ( message )
|
||||
{
|
||||
int minutes = (int)Math.Ceiling( ( nextEscort - DateTime.Now ).TotalMinutes );
|
||||
int minutes = (int)Math.Ceiling( ( nextEscort - DateTime.UtcNow ).TotalMinutes );
|
||||
|
||||
if ( minutes == 1 )
|
||||
MLQuestSystem.Tell( quester, pm, "You must rest 1 minute before we set out on this journey." );
|
||||
|
|
@ -111,7 +111,7 @@ namespace Server.Engines.MLQuests.Objectives
|
|||
m_Objective = objective;
|
||||
m_HasCompleted = false;
|
||||
m_Timer = Timer.DelayCall( TimeSpan.FromSeconds( 5 ), TimeSpan.FromSeconds( 5 ), new TimerCallback( CheckDestination ) );
|
||||
m_LastSeenEscorter = DateTime.Now;
|
||||
m_LastSeenEscorter = DateTime.UtcNow;
|
||||
m_Escort = instance.Quester as BaseCreature;
|
||||
|
||||
if ( MLQuestSystem.Debug && m_Escort == null && instance.Quester != null )
|
||||
|
|
@ -158,12 +158,12 @@ namespace Server.Engines.MLQuests.Objectives
|
|||
}
|
||||
else if ( pm.Map != m_Escort.Map || !pm.InRange( m_Escort, 30 ) ) // TODO: verify range
|
||||
{
|
||||
if ( m_LastSeenEscorter + BaseEscortable.AbandonDelay <= DateTime.Now )
|
||||
if ( m_LastSeenEscorter + BaseEscortable.AbandonDelay <= DateTime.UtcNow )
|
||||
Abandon();
|
||||
}
|
||||
else
|
||||
{
|
||||
m_LastSeenEscorter = DateTime.Now;
|
||||
m_LastSeenEscorter = DateTime.UtcNow;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -212,7 +212,7 @@ namespace Server.Engines.MLQuests.Objectives
|
|||
MLQuestInstance instance = Instance;
|
||||
PlayerMobile pm = instance.Player;
|
||||
|
||||
pm.LastEscortTime = DateTime.Now;
|
||||
pm.LastEscortTime = DateTime.UtcNow;
|
||||
|
||||
if ( m_Escort != null )
|
||||
BeginFollow( m_Escort, pm );
|
||||
|
|
|
|||
|
|
@ -155,7 +155,7 @@ namespace Server.Engines.MLQuests.Objectives
|
|||
PlayerMobile pm = Instance.Player;
|
||||
|
||||
pm.AcceleratedSkill = m_Objective.Skill;
|
||||
pm.AcceleratedStart = DateTime.Now + TimeSpan.FromMinutes( 15 ); // TODO: Is there a max duration?
|
||||
pm.AcceleratedStart = DateTime.UtcNow + TimeSpan.FromMinutes( 15 ); // TODO: Is there a max duration?
|
||||
}
|
||||
|
||||
public override void OnQuestCancelled()
|
||||
|
|
@ -165,7 +165,7 @@ namespace Server.Engines.MLQuests.Objectives
|
|||
|
||||
PlayerMobile pm = Instance.Player;
|
||||
|
||||
pm.AcceleratedStart = DateTime.Now;
|
||||
pm.AcceleratedStart = DateTime.UtcNow;
|
||||
pm.PlaySound( 0x100 );
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue