Sprite kit SpriteKit实体组件系统-带显示元件的冷却计时器

Sprite kit SpriteKit实体组件系统-带显示元件的冷却计时器,sprite-kit,entity-component-system,Sprite Kit,Entity Component System,在实体组件系统中,创建具有可连接到按钮的显示元素的冷却计时器的正确方法是什么 我最初的想法是分别分离计时器和进度条组件,计时器或者委托回实体,通过特定的数字/百分比更新进度条,或者计时器尝试从实体本身获取正确的组件并进行更新。通过这种方式,我将所有关注点分解为单独的组件。但实际上,这一切都应该在一个组件中,比如timerProgressBarComponent,因为它是“一个作业”。理想情况下,这将向现有精灵添加一个显示元素,以显示剩余的时间 如果你想了解更多的上下文,我现在考虑的是一个按钮,它

在实体组件系统中,创建具有可连接到按钮的显示元素的冷却计时器的正确方法是什么

我最初的想法是分别分离计时器和进度条组件,计时器或者委托回实体,通过特定的数字/百分比更新进度条,或者计时器尝试从实体本身获取正确的组件并进行更新。通过这种方式,我将所有关注点分解为单独的组件。但实际上,这一切都应该在一个组件中,比如timerProgressBarComponent,因为它是“一个作业”。理想情况下,这将向现有精灵添加一个显示元素,以显示剩余的时间

如果你想了解更多的上下文,我现在考虑的是一个按钮,它只能每10秒按下一次,但我想更新ui,指示还剩多长时间,并且在10秒结束后,使按钮再次可点击。

没有“正确的方法”,只有你喜欢的。如果我这样做的话,我会分离出计时器以允许各种类型的进度条,但这并不意味着进度条包含自己的计时器并仍然作为单个组件是不可行的