mirror of
https://bitbucket.org/Ioncannon/project-meteor-server.git
synced 2025-05-20 08:26:59 -04:00
start of ai based on kjLotus's code on dsp
This commit is contained in:
43
FFXIVClassic Map Server/actors/chara/ai/state/AttackState.cs
Normal file
43
FFXIVClassic Map Server/actors/chara/ai/state/AttackState.cs
Normal file
@@ -0,0 +1,43 @@
|
||||
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 AttackState : State
|
||||
{
|
||||
public AttackState(Character owner, Character target) :
|
||||
base(owner, target)
|
||||
{
|
||||
this.startTime = DateTime.Now;
|
||||
}
|
||||
|
||||
public override void OnStart()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public override void Update(ref DateTime time)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public override void OnInterrupt()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public override void OnComplete()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public override void TryInterrupt()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
48
FFXIVClassic Map Server/actors/chara/ai/state/State.cs
Normal file
48
FFXIVClassic Map Server/actors/chara/ai/state/State.cs
Normal file
@@ -0,0 +1,48 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using FFXIVClassic_Map_Server.Actors;
|
||||
using FFXIVClassic.Common;
|
||||
|
||||
namespace FFXIVClassic_Map_Server.actors.chara.ai.state
|
||||
{
|
||||
class State
|
||||
{
|
||||
protected Character owner;
|
||||
protected Character target;
|
||||
|
||||
protected bool canInterrupt;
|
||||
protected bool interrupt;
|
||||
|
||||
protected DateTime startTime;
|
||||
|
||||
protected BasePacket errorPacket;
|
||||
|
||||
public State(Character owner, Character target)
|
||||
{
|
||||
this.owner = owner;
|
||||
this.target = target;
|
||||
this.canInterrupt = true;
|
||||
this.interrupt = false;
|
||||
}
|
||||
|
||||
public virtual void Update(ref DateTime time) { }
|
||||
public virtual void OnStart() { }
|
||||
public virtual void OnInterrupt() { }
|
||||
public virtual void OnComplete() { }
|
||||
|
||||
public virtual void TryInterrupt() { }
|
||||
|
||||
public bool CanInterrupt()
|
||||
{
|
||||
return canInterrupt;
|
||||
}
|
||||
|
||||
public void SetInterrupted(bool interrupt)
|
||||
{
|
||||
this.interrupt = interrupt;
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user