Hallo,
Der Titel ist ein wenig wage, da ich das Problem nicht in einem Satz definieren konnte.
Es geht um ein EntitySystem. Zur Zeit habe ich folgendes Design:
Folglich wird der ObjectEvaluator für jedes Object aufgerufen wenn
Das ganze wird intern über einen MapperService zimlich performant gelöst.
Jetzt möchte ich das System erweitern, sodass ich den Evaluatoren einen boolschen Ausdruck anstatt den neededComponents zuweisen kann, zb:
Hab leider keine Ahnung wie sich sowas implementieren lässt.
Wäre für jeden Ansatz dankbar...
Der Titel ist ein wenig wage, da ich das Problem nicht in einem Satz definieren konnte.
Es geht um ein EntitySystem. Zur Zeit habe ich folgendes Design:
Java:
class Object{
List<Component> components
}
class ObjectEvaluator{
List<Component> neededComponents
}
Folglich wird der ObjectEvaluator für jedes Object aufgerufen wenn
Java:
Pseudo:
Object.components.contains(ObjectEvaluator.neededComponents)
Das ganze wird intern über einen MapperService zimlich performant gelöst.
Jetzt möchte ich das System erweitern, sodass ich den Evaluatoren einen boolschen Ausdruck anstatt den neededComponents zuweisen kann, zb:
Java:
class ObjectEvaluator{
//evaluate for all Objects with components:
BoolscherAusdruck neededComponents=ComponentA.class && ComponentB.class && (ComponentC.class || ComponentD.class)
}
Hab leider keine Ahnung wie sich sowas implementieren lässt.
Wäre für jeden Ansatz dankbar...