Exemple #1
0
    /// <summary>
    /// Создание кастомного таймера
    /// </summary>
    /// <param name="customTimer">Объект таймера</param>
    /// <param name="args">Аргументы для его инициализции</param>
    /// <returns>Объект таймера</returns>
    public static ITimer StartNewTimer(ITimer customTimer, params System.Object[] args)
    {
        TimerSkin skin = storage.AddComponent <TimerSkin>();

        skin.Initialize(customTimer, args);
        return(skin.GetTimer());
    }
Exemple #2
0
    /// <summary>
    /// Создает новый таймер, который отсчитывает заданное время, затем вызывает метод.
    /// Второй метод вызывается каждый кадр, пока таймер работает
    /// </summary>
    /// <param name="name">Имя таймера</param>
    /// <param name="duration">Задержка таймера до вызова метода (-1 - бесконечность)</param>
    /// <param name="countOfRepeat">Число повторений (-1 - бесконечность)</param>
    /// <param name="parent">Родитель таймера. Если удалят родителя, то удалится и сам таймер. null для отключения</param>
    /// <param name="method">Метод, который будет вызываться</param>
    /// <param name="intervalMethod">Метод, вызывающийся каждый кадр (второй параметр - время рендра кадра, третий - сколько осталось времени, четвертый - общее время таймера)</param>
    /// <returns>Объект таймера</returns>
    public static ITimer StartNewTimer(string name, float duration, int countOfRepeat, GameObject parent, Action <ITimer> method, Action <ITimer, float, float, float> intervalMethod)
    {
        TimerSkin skin = storage.AddComponent <TimerSkin>();

        skin.Initialize(new IntervalTimer(), name, duration, countOfRepeat, method, intervalMethod, parent);
        return((ITimer)skin.GetTimer());
    }