public override void OnStateExit(State to_state) { OwnerMB.StopCoroutine(AcquireTargetLock()); OwnerMB.StopCoroutine(Fire()); ((UFO)Owner).ShutDownLaser(); _has_fired = false; }
public override void OnStateEnter(State from_state) { ((UFO)Owner).Speed = CHARGING_SPEED; ((UFO)Owner)._charging_flare_sprite.enabled = true; ((UFO)Owner)._charging_light.enabled = true; ((UFO)Owner)._audio.pitch = UFO.CHARGING_PITCH; _time_started_charging = Time.time; _has_fired = false; #if DEVELOPMENT_BUILD if (CHARGING_TIME < TARGET_LOCK_TIME) { throw new UnityException("TARGET_LOCK_TIME must be less than CHARGING_TIME"); } #endif // Immediately acquire target lock, leading to firing OwnerMB.StartCoroutine(AcquireTargetLock()); }
/**************************************/ public override void OnStateEnter(State from_state) { ((UFO)Owner).Speed = PASSIVE_SPEED; }