Reactions to core changes.

This commit is contained in:
Ulysse Cura 2026-08-14 16:42:29 +02:00
parent 8e92aaca5f
commit 9c728f6992
4 changed files with 18 additions and 17 deletions

@ -1 +1 @@
Subproject commit 9d06fa7877e6afba927a572311cd0bba68d2a823
Subproject commit 1fa9d1cb8703da10bc7e6011df9f29d87e4eac95

View File

@ -4,6 +4,7 @@
#include "ecs.h"
#include "transform_component.h"
#include "asset_manager.h"
#include "texture.h"
typedef struct sprite_component_data_t {
transform_component_data_t *transform_component_data;

View File

@ -64,11 +64,11 @@ static inline void player_system_get_inputs(player_system_data_t *system_data)
system_data->state &= 0xE0; // 11100000
system_data->state |= game.events.keys[KEY_UP] ? PLAYER_MOVING_UP : 0;
system_data->state |= game.events.keys[KEY_DOWN] ? PLAYER_MOVING_DOWN : 0;
system_data->state |= game.events.keys[KEY_LEFT] ? PLAYER_MOVING_LEFT : 0;
system_data->state |= game.events.keys[KEY_RIGHT] ? PLAYER_MOVING_RIGHT : 0;
system_data->state |= game.events.keys[KEY_MOD] ? PLAYER_RUNNING : 0;
system_data->state |= game.inputs.keys[KEY_UP] ? PLAYER_MOVING_UP : 0;
system_data->state |= game.inputs.keys[KEY_DOWN] ? PLAYER_MOVING_DOWN : 0;
system_data->state |= game.inputs.keys[KEY_LEFT] ? PLAYER_MOVING_LEFT : 0;
system_data->state |= game.inputs.keys[KEY_RIGHT] ? PLAYER_MOVING_RIGHT : 0;
system_data->state |= game.inputs.keys[KEY_MOD] ? PLAYER_RUNNING : 0;
// Special cases
if(system_data->state & PLAYER_MOVING_UP && system_data->state & PLAYER_MOVING_DOWN)
@ -186,12 +186,12 @@ static inline int player_system_process_interaction(player_system_data_t *system
{
static bool last_state = false; // XXX UGLY XXX //
if(game.events.keys[KEY_INTERACT] && !last_state)
if(game.inputs.keys[KEY_INTERACT] && !last_state)
{
if(linked_list_for_each(&game.entity_manager.entities, action_detect_activate_interact, system_data)) return_failure_int;
}
last_state = game.events.keys[KEY_INTERACT];
last_state = game.inputs.keys[KEY_INTERACT];
return EXIT_SUCCESS;
}

View File

@ -18,13 +18,13 @@ int game_init(void)
event_bus_init(&game.event_bus);
entity_manager_init(&game.entity_manager);
if(asset_manager_load_asset(&game.asset_manager, "player_idle_sheet", ASSET_TEXTURE)) return_failure_int;
if(asset_manager_load_asset(&game.asset_manager, "player_walk_sheet", ASSET_TEXTURE)) return_failure_int;
if(asset_manager_load_asset(&game.asset_manager, "player_run_sheet", ASSET_TEXTURE)) return_failure_int;
if(asset_manager_load_asset(&game.asset_manager, "lever_sheet", ASSET_TEXTURE)) return_failure_int;
if(asset_manager_load_asset(&game.asset_manager, "barred_door_sheet", ASSET_TEXTURE)) return_failure_int;
if(asset_manager_load_asset(&game.asset_manager, "wooden_door_sheet", ASSET_TEXTURE)) return_failure_int;
if(asset_manager_load_asset(&game.asset_manager, "tileset", ASSET_TEXTURE)) return_failure_int;
if(!asset_manager_load_asset(&game.asset_manager, "player_idle_sheet", ASSET_TEXTURE)) return_failure_int;
if(!asset_manager_load_asset(&game.asset_manager, "player_walk_sheet", ASSET_TEXTURE)) return_failure_int;
if(!asset_manager_load_asset(&game.asset_manager, "player_run_sheet", ASSET_TEXTURE)) return_failure_int;
if(!asset_manager_load_asset(&game.asset_manager, "lever_sheet", ASSET_TEXTURE)) return_failure_int;
if(!asset_manager_load_asset(&game.asset_manager, "barred_door_sheet", ASSET_TEXTURE)) return_failure_int;
if(!asset_manager_load_asset(&game.asset_manager, "wooden_door_sheet", ASSET_TEXTURE)) return_failure_int;
if(!asset_manager_load_asset(&game.asset_manager, "tileset", ASSET_TEXTURE)) return_failure_int;
/* ======== Player ======== */
{
@ -352,9 +352,9 @@ void game_handle_event(void)
while(poll_event(&event))
{
if(event.type == INPUT_EVENT_KEY_DOWN)
game.events.keys[event.key] = true;
game.inputs.keys[event.key] = true;
else if(event.type == INPUT_EVENT_KEY_UP)
game.events.keys[event.key] = false;
game.inputs.keys[event.key] = false;
if(event.type == INPUT_EVENT_QUIT)
game.is_running = false;