Пример #1
0
 public void StartStagger()
 {
     OnAttackInterrupt();
     animator.SetState(PigmanAnimatorState.Stagger);
     phase           = PigmanAttackPhase.Stagger;
     staggerTimeLeft = RandomRange.FromVector(data.staggerTime);
 }
Пример #2
0
 public void StartParry()
 {
     OnAttackInterrupt();
     animator.SetState(PigmanAnimatorState.Parry);
     phase         = PigmanAttackPhase.Parry;
     parryTimeLeft = RandomRange.FromVector(data.parryTime);
     AudioSingleton.PlaySound(AudioSingleton.Instance.clips.parry);
 }
Пример #3
0
 public void StateExit()
 {
     animationEvents.OnAttackEnd -= OnAttackEnd;
     if (phase != PigmanAttackPhase.Prepare)
     {
         // reset prepare timer :/
         phase = PigmanAttackPhase.None;
     }
 }
Пример #4
0
 private Bt PrepareForAttackUpdate()
 {
     if (timeToAttackLeft <= 0)
     {
         phase = PigmanAttackPhase.Attack;
         animator.SetState(PigmanAnimatorState.Attack);
     }
     else
     {
         timeToAttackLeft -= Time.deltaTime;
     }
     return(Bt.Running);
 }
Пример #5
0
 private void PrepareForAttack()
 {
     timeToAttackLeft = RandomRange.FromVector(data.prepareTimeToAttack);
     animator.SetState(PigmanAnimatorState.Idle);
     phase = PigmanAttackPhase.Prepare;
 }