#pragma once

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

#include "../component_sprite.h"

typedef struct ComponentAnimationMove
{
	ECSComponent component;
	vec3 velocity;
} ComponentAnimationMove;

void component_animation_move_init
(
	ComponentAnimationMove* self, 
	vec3 velocity
);
void component_animation_move_init(ComponentAnimationMove* self, vec3 velocity);
void component_animation_move_tick(ComponentAnimationMove* self, ECS* ecs);

static const ECSComponentInfo COMPONENT_ANIMATION_MOVE_INFO = 
{
	.system = 
	{
		.functions = 
		{ 
			NULL,
			NULL, 
			(ECSFunction)component_animation_move_tick,
			NULL
		}
	},
	.type = ECS_COMPONENT_ANIMATION_MOVE,
	.size = sizeof(ComponentAnimationMove)
};
