Esempio n. 1
0
            public override void Update()
            {
                if (dodgeDistance < targetDistance)
                {
                    Vector2 dodgeVector =
                        IsometricUtility.ToIsometricVector2(warrior.RunTimeData.Direction)
                        * warrior.Property.DodgeSpeed * Time.deltaTime;

                    dodgeDistance += dodgeVector.magnitude;

                    warrior.MovementBody.MovePosition(
                        warrior.MovementBody.position + dodgeVector);
                }

                if (warrior.animationEnd)
                {
                    if (chargeState == 2)
                    {
                        actionManager.SetAction(new WarriorHeavyAttackRecovery());
                    }
                    else
                    {
                        actionManager.SetAction(new WarriorIdel());
                    }
                }
            }
Esempio n. 2
0
 public override void Start()
 {
     nowDistance        = 0;
     knockBackDirection = IsometricUtility.ToIsometricVector2(
         spider.MovementBody.position - damage.HitFrom).normalized;
     spider.CharacterAnimator.SetBool("IsHurt", true);
     spider.HurtSound.Play();
 }
Esempio n. 3
0
 public override void Start()
 {
     nowDistance        = 0;
     knockBackDirection = IsometricUtility.ToIsometricVector2(
         wound.HitFrom - orcCaptain.MovementBody.position).normalized;
     orcCaptain.CharacterAnimator.SetBool("IsHurt", true);
     orcCaptain.HurtSound.Play();
 }
Esempio n. 4
0
            public override void Update()
            {
                IsometricUtility.GetVerticalAndHorizontal(
                    spider.RunTimeData.Direction, out var vertical, out var horizontal);
                spider.CharacterAnimator.SetFloat("Vertical", vertical);
                spider.CharacterAnimator.SetFloat("Horizontal", horizontal);

                spider.MovementBody.MovePosition(spider.MovementBody.position +
                                                 IsometricUtility.ToIsometricVector2(spider.RunTimeData.Direction)
                                                 * spider.Property.MoveSpeed * Time.deltaTime);
            }
Esempio n. 5
0
            public override void Update()
            {
                Vector2 dodgeVector =
                    IsometricUtility.ToIsometricVector2(warrior.RunTimeData.Direction)
                    * warrior.Property.DodgeSpeed * Time.deltaTime;

                dodgeDistance += dodgeVector.magnitude;

                warrior.MovementBody.MovePosition(
                    warrior.MovementBody.position + dodgeVector);

                if (dodgeDistance >= targetDistance)
                {
                    actionManager.SetAction(new WarriorHeavyAttack1(isCharge));
                }
            }