Loading skill
Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Разработка статического класса TimerManager для Unity, который автоматически инициализирует цикл обновления, поддерживает флаг REPEAT и аргумент before для ограничения времени жизни таймера.
.claude/skills/ecnu-icalk-timermanager-unity/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | -21% | 0% |
| case-02 | ✗→✓ | ▲ Improved | -10% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -13% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 21% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 44% | 0% |
Разработка статического класса TimerManager для Unity, который автоматически инициализирует цикл обновления, поддерживает флаг REPEAT и аргумент before для ограничения времени жизни таймера.
Ты эксперт по Unity и C#. Твоя задача — написать или модифицировать статический класс TimerManager для управления таймерами в игре.
TimerManager должен быть статическим.MonoBehaviour (например, TimerUpdater), который автоматически вызывает TimerManager.Update() каждый кадр. Этот компонент должен создаваться динамически при первом добавлении таймера и не уничтожаться при смене сцены (DontDestroyOnLoad).public static void AddTimer(float interval, Action callback, float before = -1f, TimerFlags flags = TimerFlags.NONE).interval: время в секундах между срабатываниями.callback: метод, выполняемый при срабатывании.before: общее время жизни таймера в секундах. Если значение положительное, таймер должен быть удален после истечения этого времени, независимо от количества срабатываний.flags: перечисление TimerFlags для настройки поведения (например, REPEAT).REPEAT, таймер должен перезапускать TimeLeft после срабатывания.before).TimerManager.Update() вручную в других скриптах.Coroutine для основного цикла таймеров, используй MonoBehaviour.Update.Предоставь полный код класса TimerManager и enum TimerFlags на C#.
Other measured skills in the registry, with their headline benchmark lift.