diff options
| author | realtradam <[email protected]> | 2023-05-02 20:49:16 -0400 |
|---|---|---|
| committer | realtradam <[email protected]> | 2023-05-02 20:49:16 -0400 |
| commit | 9761b2ab4ded859f6f2252eae449ce8fd2b81c83 (patch) | |
| tree | c275e29ac697768f257c07e8f9a146e60680cd27 | |
| parent | f079cdd1d182d6a24bd705627a72fba638f4d8b1 (diff) | |
| download | TOJam2023-9761b2ab4ded859f6f2252eae449ce8fd2b81c83.tar.gz TOJam2023-9761b2ab4ded859f6f2252eae449ce8fd2b81c83.zip | |
rodeo bump
| -rw-r--r-- | assets/sample.wav | bin | 0 -> 8462 bytes | |||
| m--------- | external/RodeoKit | 0 | ||||
| -rw-r--r-- | src/input.c | 32 | ||||
| -rw-r--r-- | src/input.h | 7 | ||||
| -rw-r--r-- | src/main.c | 8 |
5 files changed, 46 insertions, 1 deletions
diff --git a/assets/sample.wav b/assets/sample.wav Binary files differnew file mode 100644 index 0000000..64b8e1b --- /dev/null +++ b/assets/sample.wav diff --git a/external/RodeoKit b/external/RodeoKit -Subproject 4b6ae783ce2c9f08d21d2a2969826412cc587de +Subproject 87ca456c3f3e97f149604bc033fdd57998e2dcd diff --git a/src/input.c b/src/input.c index 1cb21df..c9d05e1 100644 --- a/src/input.c +++ b/src/input.c @@ -1,6 +1,7 @@ #include "input.h" #include "rodeo/input.h" +#include "rodeo/audio.h" scenes_and_commands_t inputs = {0}; @@ -177,7 +178,26 @@ units_move_down_input(rodeo_input_any_state_t *input_state, void *data) *(bool*)data ); return &move; -} +} + +void* +play_sound_input(rodeo_input_any_state_t *input_state, void *data) +{ + static bool down = false; + + if(NULL != input_state) + { + down = input_state->data.binary_state; + } + /* + else if(down) + { + rodeo_audio_playSample(); + } + */ + + return &down; +} #ifdef __clang__ #pragma clang diagnostic pop @@ -207,6 +227,10 @@ register_inputs(void) inputs.right = rodeo_input_command_create( rodeo_input_type_Binary | rodeo_input_type_UnboundedRange | rodeo_input_type_BoundedRange ); + + inputs.play_sound = rodeo_input_command_create( + rodeo_input_type_Binary + ); // -- // - register inputs - @@ -226,6 +250,8 @@ register_inputs(void) rodeo_input_command_register_boundedRange_controllerAxis(inputs.down, rodeo_input_boundedRange_controllerAxisLeft_Y); rodeo_input_command_register_boundedRange_controllerAxis(inputs.left, rodeo_input_boundedRange_controllerAxisLeft_X); rodeo_input_command_register_boundedRange_controllerAxis(inputs.right, rodeo_input_boundedRange_controllerAxisLeft_X); + + rodeo_input_command_register_binary_scancode(inputs.play_sound, rodeo_input_binary_scancode_M); // -- // - register callbacks - @@ -234,6 +260,8 @@ register_inputs(void) rodeo_input_command_register_callback(inputs.down, *units_move_down_input); rodeo_input_command_register_callback(inputs.left, *units_move_left_input); rodeo_input_command_register_callback(inputs.right, *units_move_right_input); + + rodeo_input_command_register_callback(inputs.play_sound, *play_sound_input); // -- // - register commands - @@ -242,6 +270,8 @@ register_inputs(void) rodeo_input_scene_register_command(inputs.scene, inputs.down); rodeo_input_scene_register_command(inputs.scene, inputs.left); rodeo_input_scene_register_command(inputs.scene, inputs.right); + + rodeo_input_scene_register_command(inputs.scene, inputs.play_sound); // -- // activate scene diff --git a/src/input.h b/src/input.h index 58abf5d..cef1519 100644 --- a/src/input.h +++ b/src/input.h @@ -10,6 +10,7 @@ struct rodeo_input_command_t *right; rodeo_input_command_t *up; rodeo_input_command_t *down; + rodeo_input_command_t *play_sound; } scenes_and_commands_t; @@ -51,6 +52,12 @@ units_move_down_input( void *data ); +void* +play_sound_input( + rodeo_input_any_state_t *input_state, + void *data +); + void register_inputs(void); @@ -117,6 +117,13 @@ main_loop(void) summon_position.x += *(float*)units_move_right_input(NULL, NULL) + *(float*)units_move_left_input(NULL, NULL); summon_position.y += *(float*)units_move_down_input(NULL, NULL) + *(float*)units_move_up_input(NULL, NULL); + if(*(bool*)play_sound_input(NULL, NULL)) + { + rodeo_audio_playSample(); + } + + //play_sound_input(NULL, NULL); + if(*(bool*)summon_units_input(NULL, NULL)) { summon_units(); @@ -268,6 +275,7 @@ main(void) //); texture = rodeo_texture_2d_create_from_path(cstr_lit("assets/orc.png")); + rodeo_audio_loadSample(); rodeo_mainLoop_run( main_loop |
