public Avoider(Texture2D a_Texture, Vector2 a_Position, MovableEntity a_CurrentTarget) : base(a_Texture, a_Position) { currentTarget = a_CurrentTarget; m_StartingPos = a_Position; m_Colour = Color.Gray; }
public ChaseHideEnemy(Texture2D a_Texture, Vector2 a_Position, MovableEntity a_Target) : base(a_Texture, a_Position) { m_Colour = Color.Azure; currentBehaviour = null; currentTarget = a_Target; }
public Pursue(MovableEntity a_Owner, MovableEntity a_Target) { behaviourType = BehaviourType.PURSUE; owner = a_Owner; target = a_Target; }
public abstract void Execute(MovableEntity a_Entity);
public override void Execute(MovableEntity a_Entity) { a_Entity.Shoot(); }
public override void Execute(MovableEntity a_Entity) { a_Entity.MoveDown(); }
public override void Execute(MovableEntity a_Entity) { a_Entity.MoveRight(); }
public Flee(MovableEntity a_Owner, Vector2 a_Target) { behaviourType = BehaviourType.FLEE; target = a_Target; owner = a_Owner; }
public Wander(MovableEntity a_Owner) { owner = a_Owner; target = owner.Position; behaviourType = BehaviourType.WANDER; }
public Evade(MovableEntity a_Owner, MovableEntity a_Target) { behaviourType = BehaviourType.EVADE; target = a_Target; owner = a_Owner; }
public Seek(MovableEntity a_Owner, Vector2 a_Target) { behaviourType = BehaviourType.SEEK; target = a_Target; owner = a_Owner; }