Add some joystick functions to input. Enables manipulation of mappings at runtime
This commit is contained in:
parent
79c1392d17
commit
c632c13c66
11 changed files with 226 additions and 24 deletions
|
|
@ -53,8 +53,12 @@ void Input::_bind_methods() {
|
|||
ObjectTypeDB::bind_method(_MD("is_mouse_button_pressed","button"),&Input::is_mouse_button_pressed);
|
||||
ObjectTypeDB::bind_method(_MD("is_joy_button_pressed","device","button"),&Input::is_joy_button_pressed);
|
||||
ObjectTypeDB::bind_method(_MD("is_action_pressed","action"),&Input::is_action_pressed);
|
||||
ObjectTypeDB::bind_method(_MD("add_joy_mapping","mapping", "update_existing"),&Input::add_joy_mapping, DEFVAL(false));
|
||||
ObjectTypeDB::bind_method(_MD("remove_joy_mapping","guid"),&Input::remove_joy_mapping);
|
||||
ObjectTypeDB::bind_method(_MD("is_joy_known","device"),&Input::is_joy_known);
|
||||
ObjectTypeDB::bind_method(_MD("get_joy_axis","device","axis"),&Input::get_joy_axis);
|
||||
ObjectTypeDB::bind_method(_MD("get_joy_name","device"),&Input::get_joy_name);
|
||||
ObjectTypeDB::bind_method(_MD("get_joy_guid","device"),&Input::get_joy_guid);
|
||||
ObjectTypeDB::bind_method(_MD("get_accelerometer"),&Input::get_accelerometer);
|
||||
//ObjectTypeDB::bind_method(_MD("get_mouse_pos"),&Input::get_mouse_pos); - this is not the function you want
|
||||
ObjectTypeDB::bind_method(_MD("get_mouse_speed"),&Input::get_mouse_speed);
|
||||
|
|
|
|||
|
|
@ -63,7 +63,10 @@ public:
|
|||
virtual float get_joy_axis(int p_device,int p_axis)=0;
|
||||
virtual String get_joy_name(int p_idx)=0;
|
||||
virtual void joy_connection_changed(int p_idx, bool p_connected, String p_name, String p_guid)=0;
|
||||
|
||||
virtual void add_joy_mapping(String p_mapping, bool p_update_existing=false)=0;
|
||||
virtual void remove_joy_mapping(String p_guid)=0;
|
||||
virtual bool is_joy_known(int p_device)=0;
|
||||
virtual String get_joy_guid(int p_device) const=0;
|
||||
|
||||
virtual Point2 get_mouse_pos() const=0;
|
||||
virtual Point2 get_mouse_speed() const=0;
|
||||
|
|
|
|||
|
|
@ -507,6 +507,13 @@ float OS::get_time_scale() const {
|
|||
return _time_scale;
|
||||
}
|
||||
|
||||
bool OS::is_joy_known(int p_device) {
|
||||
return true;
|
||||
}
|
||||
|
||||
String OS::get_joy_guid(int p_device) const {
|
||||
return "Default Joystick";
|
||||
}
|
||||
|
||||
OS::OS() {
|
||||
last_error=NULL;
|
||||
|
|
|
|||
|
|
@ -397,6 +397,9 @@ public:
|
|||
|
||||
_FORCE_INLINE_ bool get_use_pixel_snap() const { return _pixel_snap; }
|
||||
|
||||
virtual bool is_joy_known(int p_device);
|
||||
virtual String get_joy_guid(int p_device)const;
|
||||
|
||||
OS();
|
||||
virtual ~OS();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue