Помогите

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Помогите

Сообщение merai 21 янв 2020, 03:26

Делаю игру на unity 2d . Как сделать яд , что бы персонажу получал урон т.е. -1 раз в 2 секунда . 3-4 раза.
merai
UNец
 
Сообщения: 3
Зарегистрирован: 08 янв 2020, 02:49

Re: Помогите

Сообщение mastersmit 21 янв 2020, 04:00

Через корутину можно, например:

Синтаксис:
Используется csharp
int health; // здоровье непися/игрока

// damage - наносимый урон, interval - с каким интервалом, count - сколько раз
IEnumerator Poison(int damage, float interval, int count) {
     var step = 0;
     while (step < count) {
          health -= damage;
          step++;
          yield return new WaitForSeconds(interval);
     }
     yield break;
}


Когда надо применить этот "яд" пишем:
Синтаксис:
Используется csharp
 
StartCoroutine(Poison(5, 2f, 4));


В данном случае от значения health будет отниматься по 5 каждые 2 секунды 4 раза.
Последний раз редактировалось mastersmit 21 янв 2020, 04:06, всего редактировалось 1 раз.
Аватара пользователя
mastersmit
Старожил
 
Сообщения: 558
Зарегистрирован: 12 май 2014, 14:05
Откуда: Приморский край

Re: Помогите

Сообщение 1max1 21 янв 2020, 04:05

непися

Сначала подумал что там пробел пропущен, потом загуглил, оказывается это NPC :))
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Помогите

Сообщение mastersmit 21 янв 2020, 04:14

1max1 писал(а):
непися

Сначала подумал что там пробел пропущен, потом загуглил, оказывается это NPC :))

Лень было переключаться на английскую раскладку =) и так код писал с телефона, а на нем это мучение :ymdevil:
Аватара пользователя
mastersmit
Старожил
 
Сообщения: 558
Зарегистрирован: 12 май 2014, 14:05
Откуда: Приморский край


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 25