public override System.Type Tick() { if (proximity.target != null) { behavior.previousState = typeof(ShipFiringState); if (proximity.target == targeting.target) { Debug.Log("Turn to Circling"); return(typeof(ShipCirclingState)); } Debug.Log("Turn to Evading"); return(typeof(ShipEvadingState)); } if (!behavior.targeting.targetLocked) { Debug.Log("Turn to Tracking"); return(typeof(ShipTrackingState)); } if (behavior.targeting.target == null) { Debug.Log("Turn to Standby"); return(typeof(ShipStandbyState)); } movement.trackTarget(targeting.target); movement.move(); primaryweapon.fire(); return(null); }
public override System.Type Tick() { if (targeting.target == null) { Debug.Log("Turn to Standby"); return(typeof(TurretStandbyState)); } if (targeting.targetLocked) { Debug.Log("Turn to Firing"); return(typeof(TurretFiringState)); } movement.trackTarget(targeting.target); return(null); }