#define __JOYSTICKKEYBOARDCONTROLLER_H__
#include "controller.hpp"
-#include "lisp/lisp.hpp"
-#include "lisp/writer.hpp"
+
+namespace lisp {
+class Writer;
+class Lisp;
+}
+
#include <SDL.h>
+
#include <string>
#include <map>
+#include <vector>
class Menu;
Menu* get_key_options_menu();
Menu* get_joystick_options_menu();
+ void updateAvailableJoysticks();
private:
void process_key_event(const SDL_Event& event);
int max_joyaxis;
int max_joyhats;
-
+
Uint8 hat_state;
+ bool jump_with_up_joy; // Joystick up jumps
+ bool jump_with_up_kbd; // Keyboard up jumps
+
SDLKey reversemap_key(Control c);
int reversemap_joybutton(Control c);
int reversemap_joyaxis(Control c);
void bind_joyhat(int dir, Control c);
void bind_key(SDLKey key, Control c);
+ void set_joy_controls(Control id, bool value);
+
int wait_for_key;
int wait_for_joystick;