SpriteKit Entity Component System - таймер восстановления с элементом отображения

В Entity Component System, как правильно создать таймер перезарядки, который имеет элемент отображения, который можно прикрепить, например, к кнопке?

Моя первоначальная мысль состоит в том, чтобы отделить компоненты таймера и индикатора выполнения по отдельности, при этом таймер либо делегирует обратно объекту для обновления индикатора выполнения с помощью определенного числа / процента, либо таймер пытается извлечь правильный компонент из самого объекта и обновить его., Таким образом, я разделил все проблемы на отдельные компоненты. Но если все это на самом деле находится в одном компоненте, например timerProgressBarComponent, то это "одно задание". В идеале это добавит элемент отображения к существующему спрайту, чтобы продемонстрировать, сколько времени осталось.

Если вам нужно больше контекста, я думаю, что в данный момент я имею в виду кнопку, которую можно нажимать только каждые 10 секунд, но я хочу обновить пользовательский интерфейс с указанием того, сколько осталось времени и как только 10 секунд вверх сделать кнопку снова нажав

1 ответ

Решение

Не существует "правильного пути", только то, что вы предпочитаете. Если бы я делал это, я бы выделил таймер для учета различных типов индикаторов выполнения, но это не означает, что индикатор выполнения не может содержать свой собственный таймер и по-прежнему действовать как отдельный компонент.

Другие вопросы по тегам