77 lines
1.9 KiB
C
77 lines
1.9 KiB
C
#include "components.h"
|
|
|
|
#include "unit_ai.h"
|
|
#include "unit_actions.h"
|
|
|
|
ECS_COMPONENT_DECLARE(Resource);
|
|
|
|
ECS_COMPONENT_DECLARE(TilePosition);
|
|
ECS_COMPONENT_DECLARE(TileSize);
|
|
ECS_COMPONENT_DECLARE(Owner);
|
|
|
|
ECS_COMPONENT_DECLARE(SpatialGridID);
|
|
ECS_COMPONENT_DECLARE(Position);
|
|
ECS_COMPONENT_DECLARE(Size);
|
|
ECS_COMPONENT_DECLARE(Velocity);
|
|
ECS_COMPONENT_DECLARE(Rotation);
|
|
ECS_COMPONENT_DECLARE(Steering);
|
|
ECS_COMPONENT_DECLARE(TargetPosition);
|
|
ECS_COMPONENT_DECLARE(Path);
|
|
|
|
ECS_COMPONENT_DECLARE(TextureRegion);
|
|
|
|
ECS_COMPONENT_DECLARE(Animation);
|
|
ECS_COMPONENT_DECLARE(Easing);
|
|
|
|
ECS_COMPONENT_DECLARE(UnitAI);
|
|
ECS_COMPONENT_DECLARE(UnitAction);
|
|
|
|
ECS_TAG_DECLARE(Selectable);
|
|
ECS_TAG_DECLARE(Selected);
|
|
|
|
ECS_TAG_DECLARE(Unit);
|
|
ECS_COMPONENT_DECLARE(Worker);
|
|
ECS_TAG_DECLARE(Harvestable);
|
|
ECS_TAG_DECLARE(Buildable);
|
|
ECS_TAG_DECLARE(Workable);
|
|
ECS_TAG_DECLARE(Attackable);
|
|
|
|
ECS_COMPONENT_DECLARE(Storage);
|
|
|
|
void initComponentIDs(ecs_world_t *ecs) {
|
|
ECS_COMPONENT_DEFINE(ecs, Resource);
|
|
|
|
ECS_COMPONENT_DEFINE(ecs, TilePosition);
|
|
ECS_COMPONENT_DEFINE(ecs, TileSize);
|
|
ECS_COMPONENT_DEFINE(ecs, Owner);
|
|
|
|
ECS_COMPONENT_DEFINE(ecs, SpatialGridID);
|
|
ECS_COMPONENT_DEFINE(ecs, Position);
|
|
ECS_COMPONENT_DEFINE(ecs, Size);
|
|
ECS_COMPONENT_DEFINE(ecs, Velocity);
|
|
ECS_COMPONENT_DEFINE(ecs, Rotation);
|
|
ECS_COMPONENT_DEFINE(ecs, Steering);
|
|
ECS_COMPONENT_DEFINE(ecs, TargetPosition);
|
|
ECS_COMPONENT_DEFINE(ecs, Path);
|
|
|
|
ECS_COMPONENT_DEFINE(ecs, TextureRegion);
|
|
|
|
ECS_COMPONENT_DEFINE(ecs, Animation);
|
|
ECS_COMPONENT_DEFINE(ecs, Easing);
|
|
|
|
ECS_COMPONENT_DEFINE(ecs, UnitAI);
|
|
ECS_COMPONENT_DEFINE(ecs, UnitAction);
|
|
|
|
ECS_TAG_DEFINE(ecs, Selectable);
|
|
ECS_TAG_DEFINE(ecs, Selected);
|
|
|
|
ECS_TAG_DEFINE(ecs, Unit);
|
|
ECS_COMPONENT_DEFINE(ecs, Worker);
|
|
ECS_TAG_DEFINE(ecs, Harvestable);
|
|
ECS_TAG_DEFINE(ecs, Buildable);
|
|
ECS_TAG_DEFINE(ecs, Workable);
|
|
ECS_TAG_DEFINE(ecs, Attackable);
|
|
|
|
ECS_COMPONENT_DEFINE(ecs, Storage);
|
|
}
|