aboutsummaryrefslogtreecommitdiff
path: root/src/client/joystick_controller.h
AgeCommit message (Collapse)Author
2021-08-27Joystick sensitivity for player movement (#11262)NeroBurner
This commit deprecates the forward, backward, left, and right binary inputs currently used for player movement in the PlayerControl struct. In their place, it adds the movement_speed and movement_direction values, which represents the player movement is a polar coordinate system. movement_speed is a scalar from 0.0 to 1.0. movement_direction is an angle from 0 to +-Pi: FWD 0 _ LFT / \ RGT -Pi/2 | | +Pi/2 \_/ +-Pi BCK Boolean movement bits will still be set for server telegrams and Lua script invocations to provide full backward compatibility. When generating these values from an analog input, a direction is considered active when it is 22.5 degrees away from either orthogonal axis. Co-authored-by: Markus Koch <markus@notsyncing.net> Co-authored-by: sfan5 <sfan5@live.de>
2020-12-19Fix some more joystick issues (#10624)Markus
2018-03-23Fix some gcc 7.3 reported warningsLoic Blot
``` src/client/joystick_controller.h:85:2: warning: duplicate 'virtual' declaration specifier [-Wduplicate-decl-specifier] virtual bool isTriggered(const irr::SEvent::SJoystickEvent &ev) const; /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/ext/new_allocator.h:140:22: warning: destructor called on non-final 'JoystickAxisCmb' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor] destroy(_Up* __p) { __p->~_Up(); } /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/ext/new_allocator.h:140:22: warning: destructor called on non-final 'JoystickButtonCmb' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor] destroy(_Up* __p) { __p->~_Up(); } ```
2017-08-17C++ modernize: Pragma once (#6264)Loïc Blot
* Migrate cpp headers to pragma once
2017-08-15Modernize client code (#6250)Loïc Blot
* Various code style fixes * Use range based for loops * Use empty instead of empty objects * Use C++11 default keyword for trivial constructors and destructors * Drop some useless casts * Use emplace_back instead of push_back to improve performance of some vectors push
2017-06-21C++11 cleanup on constructors dir client (#6012)Vincent Glize
* C++11 cleanup on constructors dir client
2017-04-20Fix various copy instead of const ref reported by cppcheck (part 3) (#5616)Loïc Blot
* Also remove 2 non declared but defined functions * Make some functions around const ref changes const
2017-04-06Add Joystick type detection and Xbox controller supportrubenwardy
* Add joystick type detection (with joystick_type setting to override it) * Fix multiple joysticks from interfering with each other by only reading from one (add joystick_id setting) * Add support for Xbox controllers
2016-06-03Initial Gamepad supportest31
Adds initial ingame gamepad support to minetest. Full Formspec support is not implemented yet and can be added by a later change.