public override void RunStateUpdate()
        {
            CalculateOrbitalVelocity();
            CalculateSpeed();
            movementController.SetMovement(shipVelocity);

            SwitchToFollowState();
        }
        public override void RunStateUpdate()
        {
            CalculateDirection();
            CalculateSpeed();
            movementController.SetMovement(shipDirection.normalized * shipSpeed);

            SwitchToOrbitalMovement();
        }
Exemple #3
0
        public override void BeginState()
        {
            mainCamera    = Camera.main;
            timer         = new SimpleTimer(2f, Time.deltaTime);
            shipTransform = transform;

            movementController = this.GetComponent <IMovementController>();
            weaponController   = this.GetComponent <IWeaponController>();
            targetingSystem    = this.GetComponent <IEnemyTargetingSystem>();
            stateManager       = this.GetComponent <IStateManager>();

            movementController.SetMovement(Vector2.zero);
            targetingSystem.SelectNearestTarget();
        }