Я работаю над небольшим проектом, используя SpriteKit и GameplayKit. Я впервые использую систему сущностей/компонентов, и мне это нравится. Но теперь я нахожусь в точке, когда мне нужно отслеживать состояния моих сущностей (Создание, Нормальное, Удаление), чтобы они не взаимодействовали во время фазы их появления (которая может включать или не включать действия для анимации вещи) и этап их удаления.
До сих пор я создал EntityStateComponent, который создает экземпляр GKStateMachine с различными состояниями, и, поскольку нет необходимости в обновлениях для каждого кадра, это не так сложно. Дело в том, что это состояние больше связано с сущностью, чем с компонентом, и мне интересно, имеет ли смысл создать подкласс из GKEntity и добавить туда конечный автомат, а не в компонент.
Твои мысли?
PS: я уже создаю подклассы от GKEntity просто для удобства init(), который создает все компоненты