Reactions to core changes.
This commit is contained in:
parent
8e92aaca5f
commit
9c728f6992
|
|
@ -1 +1 @@
|
||||||
Subproject commit 9d06fa7877e6afba927a572311cd0bba68d2a823
|
Subproject commit 1fa9d1cb8703da10bc7e6011df9f29d87e4eac95
|
||||||
|
|
@ -4,6 +4,7 @@
|
||||||
#include "ecs.h"
|
#include "ecs.h"
|
||||||
#include "transform_component.h"
|
#include "transform_component.h"
|
||||||
#include "asset_manager.h"
|
#include "asset_manager.h"
|
||||||
|
#include "texture.h"
|
||||||
|
|
||||||
typedef struct sprite_component_data_t {
|
typedef struct sprite_component_data_t {
|
||||||
transform_component_data_t *transform_component_data;
|
transform_component_data_t *transform_component_data;
|
||||||
|
|
|
||||||
|
|
@ -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 &= 0xE0; // 11100000
|
||||||
|
|
||||||
system_data->state |= game.events.keys[KEY_UP] ? PLAYER_MOVING_UP : 0;
|
system_data->state |= game.inputs.keys[KEY_UP] ? PLAYER_MOVING_UP : 0;
|
||||||
system_data->state |= game.events.keys[KEY_DOWN] ? PLAYER_MOVING_DOWN : 0;
|
system_data->state |= game.inputs.keys[KEY_DOWN] ? PLAYER_MOVING_DOWN : 0;
|
||||||
system_data->state |= game.events.keys[KEY_LEFT] ? PLAYER_MOVING_LEFT : 0;
|
system_data->state |= game.inputs.keys[KEY_LEFT] ? PLAYER_MOVING_LEFT : 0;
|
||||||
system_data->state |= game.events.keys[KEY_RIGHT] ? PLAYER_MOVING_RIGHT : 0;
|
system_data->state |= game.inputs.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_MOD] ? PLAYER_RUNNING : 0;
|
||||||
|
|
||||||
// Special cases
|
// Special cases
|
||||||
if(system_data->state & PLAYER_MOVING_UP && system_data->state & PLAYER_MOVING_DOWN)
|
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 //
|
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;
|
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;
|
return EXIT_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
18
src/game.c
18
src/game.c
|
|
@ -18,13 +18,13 @@ int game_init(void)
|
||||||
event_bus_init(&game.event_bus);
|
event_bus_init(&game.event_bus);
|
||||||
entity_manager_init(&game.entity_manager);
|
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_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_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, "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, "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, "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, "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, "tileset", ASSET_TEXTURE)) return_failure_int;
|
||||||
|
|
||||||
/* ======== Player ======== */
|
/* ======== Player ======== */
|
||||||
{
|
{
|
||||||
|
|
@ -352,9 +352,9 @@ void game_handle_event(void)
|
||||||
while(poll_event(&event))
|
while(poll_event(&event))
|
||||||
{
|
{
|
||||||
if(event.type == INPUT_EVENT_KEY_DOWN)
|
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)
|
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)
|
if(event.type == INPUT_EVENT_QUIT)
|
||||||
game.is_running = false;
|
game.is_running = false;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue