-changed naming style to match whole project
This commit is contained in:
parent
bf8fac84cf
commit
fd6e6c0355
1 changed files with 15 additions and 15 deletions
|
|
@ -251,50 +251,50 @@ class EntityManager
|
||||||
static void callEventHandler(Type)(ref EventCallData data)
|
static void callEventHandler(Type)(ref EventCallData data)
|
||||||
{
|
{
|
||||||
Sys.EventInput input;
|
Sys.EventInput input;
|
||||||
Sys* dataSystem = cast(Sys*) data.system_pointer;
|
Sys* data_system = cast(Sys*) data.system_pointer;
|
||||||
EntityInfo* info = data.block.type_info;
|
EntityInfo* info = data.block.type_info;
|
||||||
|
|
||||||
alias EventFields = Fields!(Sys.EventInput);
|
alias EventFields = Fields!(Sys.EventInput);
|
||||||
foreach (eventFieldNum, ref eventField; input.tupleof)
|
foreach (ref event_field; input.tupleof)
|
||||||
{
|
{
|
||||||
alias EventFieldType = Unqual!(typeof(*eventField));
|
alias EventFieldType = Unqual!(typeof(*event_field));
|
||||||
enum bool isEntity = is(EventFieldType == ecs.entity.Entity);
|
enum bool is_entity = is(EventFieldType == ecs.entity.Entity);
|
||||||
|
|
||||||
static if (isEntity)
|
static if (is_entity)
|
||||||
{
|
{
|
||||||
eventField = cast(Entity*) data.block.dataBegin() + data.id;
|
event_field = cast(Entity*) data.block.dataBegin() + data.id;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
enum long indexInEntitiesData = getIndexOfTypeInEntitiesData!(Sys.EntitiesData,
|
enum long index_in_entities_data = getIndexOfTypeInEntitiesData!(Sys.EntitiesData,
|
||||||
EventFieldType);
|
EventFieldType);
|
||||||
static assert(indexInEntitiesData != -1,
|
static assert(index_in_entities_data != -1,
|
||||||
"Component present in EventInput has to be present in EntitiesData!"); // Type present in EventInput has to be present in EntitiesData
|
"Component present in EventInput has to be present in EntitiesData!"); // Type present in EventInput has to be present in EntitiesData
|
||||||
|
|
||||||
enum bool isOptional = hasUDA!(Sys.EntitiesData.tupleof[indexInEntitiesData],
|
enum bool is_optional = hasUDA!(Sys.EntitiesData.tupleof[index_in_entities_data],
|
||||||
"optional");
|
"optional");
|
||||||
static if (isOptional)
|
static if (is_optional)
|
||||||
{
|
{
|
||||||
eventField = null;
|
event_field = null;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
eventField = cast(EventFieldType*)(cast(void*) data.block
|
event_field = cast(EventFieldType*)(cast(void*) data.block
|
||||||
+ info.deltas[EventFieldType.component_id]
|
+ info.deltas[EventFieldType.component_id]
|
||||||
+ data.id * EventFieldType.sizeof);
|
+ data.id * EventFieldType.sizeof);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
dataSystem.handleEvent(input, *cast(Type*) data.event);
|
data_system.handleEvent(input, *cast(Type*) data.event);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void setEventCallers(Sys)(ref System system)
|
static void setEventCallers(Sys)(ref System system)
|
||||||
{
|
{
|
||||||
enum allEventHandlers = __traits(getOverloads, Sys, "handleEvent").length;
|
enum event_handlers_num = __traits(getOverloads, Sys, "handleEvent").length;
|
||||||
system.m_event_callers = Mallocator.instance.makeArray!(
|
system.m_event_callers = Mallocator.instance.makeArray!(
|
||||||
System.EventCaller)(allEventHandlers);
|
System.EventCaller)(event_handlers_num);
|
||||||
|
|
||||||
foreach (j, func; __traits(getOverloads, Sys, "handleEvent"))
|
foreach (j, func; __traits(getOverloads, Sys, "handleEvent"))
|
||||||
{
|
{
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue