-add ecsID template function (get Component/System/Event ID, passes tests)

-removed some ECS mixins code
This commit is contained in:
Mergul 2020-09-29 18:41:31 +02:00
parent 13c82acad4
commit a926b79223
9 changed files with 138 additions and 123 deletions

View file

@ -21,14 +21,14 @@ unittest
{
struct Event1
{
mixin ECS.Event;
// mixin ECS.Event;
EntityID id;
}
struct Event2
{
mixin ECS.Event;
// mixin ECS.Event;
}
struct System1
@ -45,7 +45,7 @@ unittest
void onCreate()
{
tmpl = gEM.allocateTemplate([CInt.component_id, CLong.component_id].staticArray);
tmpl = gEM.allocateTemplate([ecsID!CInt, ecsID!CLong].staticArray);
}
void onDestroy()
@ -118,7 +118,7 @@ unittest
gEM.endRegister();
EntityTemplate* tmpl = gEM.allocateTemplate([CInt.component_id, CLong.component_id].staticArray);
EntityTemplate* tmpl = gEM.allocateTemplate([ecsID!CInt, ecsID!CLong].staticArray);
EntityID id = gEM.addEntity(tmpl,[CLong(10).ref_, CInt(6).ref_].staticArray).id;
EntityID id2 = gEM.addEntity(tmpl,[CInt(4).ref_].staticArray).id;
gEM.freeTemplate(tmpl);
@ -126,13 +126,13 @@ unittest
gEM.sendEvent(id2, Event1(id));
gEM.getSystem(System2.system_id).disable();
gEM.getSystem(ecsID!System2).disable();
gEM.begin();
gEM.update();
gEM.end();
gEM.getSystem(System2.system_id).enable();
gEM.getSystem(ecsID!System2).enable();
gEM.begin();
gEM.update();