Member 14135033 Ответов: 1

Я делаю это неправильно, таймер=3, если таймер =0, сделайте что-нибудь!


Я изо всех сил пытаюсь заставить это работать, неужели я думаю об этом неправильно!

А)противник получает попадание пули, прекращает свою ходьбу, воспроизводит анимацию, запускает таймер

^^^^^^^^^^^^^^^^^^^^^^^
Все это происходит, но враг всегда находится в своем цикле анимации.



Б) если таймер = 0 , воспроизведите анимацию ходьбы, поставьте скорость перемещения обратно на 1

любая помощь будет очень признательна!

Что я уже пробовал:

private float electrickcuted = 2.0f;



if (other.gameObject.CompareTag("bullet")) 
       
       {
          
    SkelAnim.state.SetAnimation(0,electrick,true);
    
    moveScript.WalkSpeed = 0f;

    TakeDamgeEnemy (15f);

    electrickcuted -= Time.deltaTime;
      
        }
    
 if (electrickcuted <= 0.0f)
    
    {

    SkelAnim.state.SetAnimation(0,walk,true);
    
    moveScript.WalkSpeed = 1f;

        }
    }

}

Member 14135033

Спасибо тебе @RickZeeland

CHill60

Вы отладили это, чтобы следить за тем, что происходит? Насколько велико время.deltaTime? Потому что, если это больше, чем стоимость electrickuted вы капля в секунду, если заблокировать и перезагрузите анимации

Member 14135033

Мне удалось решить ее с помощью булевых чисел.

1 Ответов

Рейтинг:
2

Member 14135033

private void ElectrickAttack()
{
      if(electrickcuted < 0f)
      {
            Electrickcuted = false;

            SkelAnim.state.SetAnimation(0,walk,true);
     
            moveScript.WalkSpeed = 1f;   

            electrickcuted = 2f;

      }
      else
      {
            electrickcuted -= Time.deltaTime;
      }
}


CHill60

Я лично не люблю полагаться на капиталы, чтобы определить разницу между ними. Electrickcuted и electrickcuted Это один из тех случаев, когда включение типа в название было бы быть полезным например bElectrickcuted и fElectrickcuted
Вы фактически решили проблему, инвертировав оператор if-вы вообще не используете свое новое логическое значение. Я также заинтригован тем, где вы объявляете все эти переменные - я надеюсь, что они являются частными свойствами класса.
И только потому, что я педантична .. там написано "убит током" :-)