#pragma once

#include "../../../GAME_COMMON.h"
#include "../../ecs_entity.h"

#define ALLEGIANCE_COUNT ALLEGIANCE_ENEMY + 1
typedef enum AllegianceType
{
	ALLEGIANCE_NEUTRAL,
	ALLEGIANCE_PLAYER,
	ALLEGIANCE_ENEMY
} AllegianceType;

typedef struct ComponentAllegiance
{
	ECSComponent component;
	AllegianceType type;
} ComponentAllegiance;

void component_allegiance_init(ComponentAllegiance* self, AllegianceType type);

static const ECSComponentInfo COMPONENT_ALLEGIANCE_INFO = 
{
	.system = 
	{
		.functions = 
		{ 
			NULL,
			NULL, 
			NULL,
			NULL
		}
	},
	.type = ECS_COMPONENT_ALLEGIANCE,
	.size = sizeof(ComponentAllegiance)
};


