project-meteor-server/FFXIVClassic Map Server/actors/chara/ai/state/InactiveState.cs
Tahir Akhlaq da621dfc0e added pool/spawn/genus mod loading
- moved ai helper classes to own folder
2017-09-12 01:24:02 +01:00

43 lines
1.1 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using FFXIVClassic_Map_Server.Actors;
namespace FFXIVClassic_Map_Server.actors.chara.ai.state
{
class InactiveState : State
{
private DateTime endTime;
private uint durationMs;
public InactiveState(Character owner, uint durationMs, bool canChangeState) :
base(owner, null)
{
if (!canChangeState)
owner.aiContainer.InterruptStates();
this.durationMs = durationMs;
endTime = DateTime.Now.AddMilliseconds(durationMs);
}
public override bool Update(DateTime tick)
{
if (durationMs == 0)
{
if (owner.IsDead())
return true;
if (!owner.statusEffects.HasStatusEffectsByFlag(StatusEffectFlags.PreventAction))
return true;
}
if (durationMs != 0 && tick > endTime)
{
return true;
}
return false;
}
}
}