diff options
author | rubenwardy <rubenwardy@gmail.com> | 2016-12-11 21:57:43 +0000 |
---|---|---|
committer | rubenwardy <rubenwardy@gmail.com> | 2016-12-12 13:20:18 +0000 |
commit | 0fdf24d64ab055a97e488eb3775cc7c721156d3c (patch) | |
tree | aa8063616612122eb3ad032c7f1b8202a58ef7e7 /src/touchscreengui.cpp | |
parent | d9675d3d922a2c8f521102c9386d14c694fda365 (diff) | |
download | minetest-0fdf24d64ab055a97e488eb3775cc7c721156d3c.tar.gz minetest-0fdf24d64ab055a97e488eb3775cc7c721156d3c.tar.bz2 minetest-0fdf24d64ab055a97e488eb3775cc7c721156d3c.zip |
Fix camera jumping on Android when panning past 0/360 mark
Diffstat (limited to 'src/touchscreengui.cpp')
-rw-r--r-- | src/touchscreengui.cpp | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/src/touchscreengui.cpp b/src/touchscreengui.cpp index f51b2d5fa..e3c6a39a9 100644 --- a/src/touchscreengui.cpp +++ b/src/touchscreengui.cpp @@ -414,7 +414,7 @@ void AutoHideButtonBar::show() TouchScreenGUI::TouchScreenGUI(IrrlichtDevice *device, IEventReceiver* receiver): m_device(device), m_guienv(device->getGUIEnvironment()), - m_camera_yaw(0.0), + m_camera_yaw_change(0.0), m_camera_pitch(0.0), m_visible(false), m_move_id(-1), @@ -835,17 +835,11 @@ void TouchScreenGUI::translateEvent(const SEvent &event) /* adapt to similar behaviour as pc screen */ double d = g_settings->getFloat("mouse_sensitivity") *4; - double old_yaw = m_camera_yaw; + double old_yaw = m_camera_yaw_change; double old_pitch = m_camera_pitch; - m_camera_yaw -= dx * d; - m_camera_pitch = MYMIN(MYMAX( m_camera_pitch + (dy * d),-180),180); - - while (m_camera_yaw < 0) - m_camera_yaw += 360; - - while (m_camera_yaw > 360) - m_camera_yaw -= 360; + m_camera_yaw_change -= dx * d; + m_camera_pitch = MYMIN(MYMAX(m_camera_pitch + (dy * d), -180), 180); // update shootline m_shootline = m_device |