So currently the Ecstatic.Ticker logic works by attaching a watcher to :attached, :removed and :updated component lifecycle hooks. This is so that the Ecstatic.EventConsumer is the process which sends each individual :tick message.
In that way, I can ensure that each change is completely propagated through the system before another tick message is fired. If the Ecstatic.Ticker process sends itself tick messages it can go too fast and essentially it re-executes the same System logic over and over again, overloading the gen_stage message queue and not allowing the entity to be updated.
What I need to do here is make it so that other reactive Ecstatic.System don't also trigger unwanted :tick messages for non-reactive Ecstatic.System, when are both are watching and updating the same Ecstatic.Component type.
So currently the
Ecstatic.Tickerlogic works by attaching a watcher to:attached,:removedand:updatedcomponent lifecycle hooks. This is so that theEcstatic.EventConsumeris the process which sends each individual:tickmessage.In that way, I can ensure that each change is completely propagated through the system before another tick message is fired. If the
Ecstatic.Tickerprocess sends itself tick messages it can go too fast and essentially it re-executes the same System logic over and over again, overloading thegen_stagemessage queue and not allowing the entity to be updated.What I need to do here is make it so that other reactive
Ecstatic.Systemdon't also trigger unwanted:tickmessages for non-reactiveEcstatic.System, when are both are watching and updating the sameEcstatic.Componenttype.