Moving initialisation values where they should be.

This commit is contained in:
Ulysse Cura 2026-08-03 18:40:40 +02:00
parent 24bc80482e
commit 771aa18f80
5 changed files with 24 additions and 19 deletions

View File

@ -15,6 +15,8 @@
Convert RGBA to RGB with #FF00FF as the transparent color.
If alpha null then the color of the pixel will be replaced with this.
Image data is in RGB 565.
### Image asset data structure
| Description | Length |

View File

@ -13,9 +13,8 @@ int animation_system_init(component_t *component)
if(!system_data->sprite_component_data) return EXIT_FAILURE;
system_data->nb_frames = 1;
linked_list_init(&system_data->frames, sizeof(rect_t), NULL, NULL);
system_data->current_frame_nb = 0;
linked_list_init(&system_data->frames, sizeof(rect_t), NULL, NULL);
animation_system_create_frames_clips(system_data);
system_data->frame_delay_ms = 0.0f;

View File

@ -16,21 +16,10 @@ int player_system_init(component_t *component)
system_data->sprite_component_data = system_data->animation_system_data->sprite_component_data;
system_data->transform_component_data = system_data->sprite_component_data->transform_component_data;
system_data->state = PLAYER_IDLE;
system_data->last_state = PLAYER_IDLE;
system_data->state = PLAYER_MOVING;
transform_component_data_t *transform_component_data = system_data->transform_component_data;
sprite_component_data_t *sprite_component_data = system_data->sprite_component_data;
animation_system_data_t *animation_system_data = system_data->animation_system_data;
transform_component_data->bounds.x = 10.0f;
transform_component_data->bounds.y = 10.0f;
sprite_component_set_texture(sprite_component_data, "player_idle_sheet");
animation_system_data->nb_frames = 4;
animation_system_data->frame_delay_ms = PLAYER_DEFAULT_IDLE_ANIMATION_SPEED;
animation_system_apply_changes(animation_system_data);
animation_system_data->loop = true;
animation_system_data->play = true;

View File

@ -13,8 +13,13 @@ int sprite_component_init(component_t *component)
transform_component_data_t *transform_component_data = component_data->transform_component_data;
if(sprite_component_set_texture(component_data, "dummy_sheet")) return EXIT_FAILURE;
frect_to_rect(&transform_component_data->bounds, &component_data->src_rect);
component_data->src_rect.x = 0.0f;
component_data->src_rect.y = 0.0f;
frect_to_rect(&transform_component_data->bounds, &component_data->dst_rect);
component_data->flip = false;
return EXIT_SUCCESS;

View File

@ -25,7 +25,16 @@ int game_init(void)
entity_t *player = entity_manager_new_entity(&game.entity_manager, 0);
if(!player) return EXIT_FAILURE;
if(!entity_new_component(player, TRANSFORM_COMPONENT)) return EXIT_FAILURE;
component_t *component = entity_new_component(player, TRANSFORM_COMPONENT);
if(!component) return EXIT_FAILURE;
((transform_component_data_t *)component->component_data)->bounds = (frect_t) {
.x = 10.0f,
.y = 10.0f,
.w = 32.0f,
.h = 32.0f
};
if(!entity_new_component(player, SPRITE_COMPONENT)) return EXIT_FAILURE;
if(!entity_new_component(player, ANIMATION_SYSTEM)) return EXIT_FAILURE;
if(!entity_new_component(player, PLAYER_SYSTEM)) return EXIT_FAILURE;
@ -83,11 +92,12 @@ int game_render(void)
int game_exit(void)
{
entity_manager_exit(&game.entity_manager);
if(asset_manager_let_go_asset(&game.asset_manager, "player_idle_sheet")) return EXIT_FAILURE;
if(asset_manager_let_go_asset(&game.asset_manager, "player_walk_sheet")) return EXIT_FAILURE;
if(asset_manager_let_go_asset(&game.asset_manager, "player_run_sheet")) return EXIT_FAILURE;
entity_manager_exit(&game.entity_manager);
if(asset_manager_exit(&game.asset_manager)) return EXIT_FAILURE;
display_exit();