summaryrefslogtreecommitdiffhomepage
path: root/src/input.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/input.h')
-rw-r--r--src/input.h58
1 files changed, 58 insertions, 0 deletions
diff --git a/src/input.h b/src/input.h
new file mode 100644
index 0000000..58abf5d
--- /dev/null
+++ b/src/input.h
@@ -0,0 +1,58 @@
+#pragma once
+#include "rodeo/input.h"
+
+typedef
+struct
+{
+ rodeo_input_scene_t *scene;
+ rodeo_input_command_t *create;
+ rodeo_input_command_t *left;
+ rodeo_input_command_t *right;
+ rodeo_input_command_t *up;
+ rodeo_input_command_t *down;
+}
+scenes_and_commands_t;
+
+void*
+summon_units_input(rodeo_input_any_state_t *input_state, void *data);
+
+void
+units_move_generic_input(
+ rodeo_input_any_state_t *input_state,
+ float *move,
+ bool *binary_key,
+ float *unbounded_range,
+ float *bounded_range,
+ bool should_be_positive,
+ bool reset
+);
+
+void*
+units_move_right_input(
+ rodeo_input_any_state_t *input_state,
+ void *data
+);
+
+void*
+units_move_left_input(
+ rodeo_input_any_state_t *input_state,
+ void *data
+);
+
+void*
+units_move_up_input(
+ rodeo_input_any_state_t *input_state,
+ void *data
+);
+
+void*
+units_move_down_input(
+ rodeo_input_any_state_t *input_state,
+ void *data
+);
+
+void
+register_inputs(void);
+
+void
+unregister_inputs(void);