Well I don't mean "Features" but I have classes like
Damageable Explosive Control
WalkableNPCControl etc and then I combine those Controls. I think this is something like Components?
What would I do if I wanted a Orc Chief which Grunts out of satisfaction after each thought (AI Calculation). The usual Behavior would be to subclass the AI Behavior but that is wrong I guess. Is it that "AI" would be a composition of "thousands" of individual components where one is the "OnAICalculatedComponent"? And then call this by Events?
I will look at Asteroid Panic more in-depth soon, I only saw the
Mass class so far, but currently it looks like I would build everything from very very small components?
Does this mean like the Classes handling the Entities? The Entities itself shouldn't have handling code as they are part of the "Model" Part of MVC?
And I guess I would be doomed if I subclass Entities? But what if there would be some evolvements not actually adding new behavior but changing the current? E.g. riding bikes vs. riding motorcycles (Okay, that is constructed but the animation would be different). I guess then I would add some boolean or enum or something and simply use an if?
Is a system basically a collection of Components?
If yes, then this is only a convenient way to add/manage multiple components to one entity?
Last thing: ES are regularly updated by itself outside of the Main Thread or do I have to build all that logic?
I will try to experiment with ES soon then, as soon as I get groovy to behave. It made me cry for the last two days though