summaryrefslogtreecommitdiff
path: root/src/touchscreengui.cpp
diff options
context:
space:
mode:
authorest31 <MTest31@outlook.com>2016-12-22 23:16:00 +0100
committerest31 <MTest31@outlook.com>2016-12-22 23:16:00 +0100
commit81d56b94919dceb7b2e51d70b21a7ca22f852bd5 (patch)
tree1e9ef1be1b3295a8673d6e4f0bdeb4c2d3a6015f /src/touchscreengui.cpp
parent8077612dcb48221281e726a60eb97bf73fde462b (diff)
parent231ac33d34dfaaddf292c5f31b1eae43eeefba2d (diff)
downloadminetest-81d56b94919dceb7b2e51d70b21a7ca22f852bd5.tar.gz
minetest-81d56b94919dceb7b2e51d70b21a7ca22f852bd5.tar.bz2
minetest-81d56b94919dceb7b2e51d70b21a7ca22f852bd5.zip
Merge 0.4.15 changes into stable-0.4
0.4.15 release!
Diffstat (limited to 'src/touchscreengui.cpp')
-rw-r--r--src/touchscreengui.cpp20
1 files changed, 8 insertions, 12 deletions
diff --git a/src/touchscreengui.cpp b/src/touchscreengui.cpp
index f51b2d5fa..8d210c63a 100644
--- a/src/touchscreengui.cpp
+++ b/src/touchscreengui.cpp
@@ -177,8 +177,10 @@ void AutoHideButtonBar::init(ISimpleTextureSource* tsrc,
AutoHideButtonBar::~AutoHideButtonBar()
{
- m_starter.guibutton->setVisible(false);
- m_starter.guibutton->drop();
+ if (m_starter.guibutton) {
+ m_starter.guibutton->setVisible(false);
+ m_starter.guibutton->drop();
+ }
}
void AutoHideButtonBar::addButton(touch_gui_button_id button_id,
@@ -414,7 +416,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 +837,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