Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / [UNITY] Плагин "рабочего дня" (3 стр)

[UNITY] Плагин "рабочего дня" (3 стр)

Поделиться

Страницы: 1 2 3

tacПостоялецwww19 июля 201721:08#30
ну и далее, управление разными событиями, вызов с периодичностью по таймеру

  public class BehaviourEntity : MonoBehaviour
  {
    public delegate float ChangeWait();
    public List<ChangeWait> CoroutineList = new List<ChangeWait>();
    public IEnumerator ChangeMain(int argIndex)
    {
      while (true)
      {
        float locWait = CoroutineList[argIndex]();
        yield return new WaitForSeconds(locWait);
      }
    }
  }

пример использования

        CoroutineList.Add(HealthState.ChangeCerebration);
        CoroutineList.Add(HealthState.ChangeСirculatory);
        CoroutineList.Add(HealthState.ChangeRespiratory);
        CoroutineList.Add(HealthState.ChangeDigestive);
        CoroutineList.Add(HealthState.ChangeImmune);

// тут конечно можно довести до чистоты и сделать метод StartAllChangeMain, в котором пройтись циклом
        StartCoroutine(ChangeMain(0));
        StartCoroutine(ChangeMain(1));
        StartCoroutine(ChangeMain(2));
        StartCoroutine(ChangeMain(3));
        StartCoroutine(ChangeMain(4));

public float ChangeCerebration()
{
...
}

...


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

Правка: 19 июля 2017 21:14

foadysfahПостоялецwww2 авг. 201722:56#31
Отлично, не читал, но осуждаю, так держать.

Правка: 2 авг. 2017 23:06

Страницы: 1 2 3

/ Форум / Программирование игр / Игровая логика и ИИ

2001—2017 © GameDev.ru — Разработка игр