• Хостинг игровых серверов

    Максимальная производительность для ваших игровых серверов!

    Заказать сейчас

Помогите Таймер

london12312121

21 Май 2023
77
2
5
17
Мне нужно законить таймер из самого таймера, как это сделать

C#:
void markerRefresh()
{
    Timer myTimer = timer.Every(5f, () =>
    {
        markerCreate();
    });
    timer.Every(60f, () =>
    {
        DynamicConfigFile dataFile = Interface.Oxide.DataFileSystem.GetDatafile("Medals");
        if (dataFile["count"] == null)
        {
            myTimer.Destroy();
            
        }
    });
}
 
Чтобы остановить таймер из самого таймера, вы можете использовать метод Destroy() для остановки таймера. В вашем случае, вы должны объявить переменную myTimer вне метода markerRefresh(), чтобы она была доступна в обоих методах markerRefresh() и markerCreate(). Вот как это может выглядеть:

C#:
Timer myTimer;

void markerRefresh()
{
    myTimer = timer.Every(5f, () =>
    {
        markerCreate();
    });
    
    timer.Every(60f, () =>
    {
        DynamicConfigFile dataFile = Interface.Oxide.DataFileSystem.GetDatafile("Medals");
        if (dataFile["count"] == null)
        {
            myTimer.Destroy();
        }
    });
}

Теперь, когда метод myTimer.Destroy() вызывается внутри метода markerRefresh(), он остановит таймер myTimer.
 
Активность
Пока никто не печатает сообщение