From 7a6c3fc53e8e57aa56302a117df9c1bee0c46cf8 Mon Sep 17 00:00:00 2001 From: Vasily Date: Sun, 1 Dec 2019 15:55:47 +0100 Subject: [PATCH] Convert m_smoothTurnRate to new settings API --- .../MoveCenterTabController.cpp | 30 +++++++------------ src/tabcontrollers/MoveCenterTabController.h | 1 - 2 files changed, 11 insertions(+), 20 deletions(-) diff --git a/src/tabcontrollers/MoveCenterTabController.cpp b/src/tabcontrollers/MoveCenterTabController.cpp index c7ed843..0b091d9 100644 --- a/src/tabcontrollers/MoveCenterTabController.cpp +++ b/src/tabcontrollers/MoveCenterTabController.cpp @@ -44,9 +44,6 @@ void MoveCenterTabController::initStage1() m_turnComfortFactor = static_cast( settings::getSetting( settings::IntSetting::PLAYSPACE_turnComfortFactor ) ); - m_smoothTurnRate = settings::getSetting( - settings::IntSetting::PLAYSPACE_smoothTurnRate ); - m_heightToggleOffset = static_cast( settings::getSetting( settings::DoubleSetting::PLAYSPACE_heightToggleOffset ) ); m_gravityStrength = static_cast( settings::getSetting( @@ -475,23 +472,18 @@ void MoveCenterTabController::setSnapTurnAngle( int value, bool notify ) int MoveCenterTabController::smoothTurnRate() const { - return m_smoothTurnRate; + return settings::getSetting( + settings::IntSetting::PLAYSPACE_smoothTurnRate ); } void MoveCenterTabController::setSmoothTurnRate( int value, bool notify ) { - if ( m_smoothTurnRate != value ) + settings::setSetting( settings::IntSetting::PLAYSPACE_smoothTurnRate, + value ); + + if ( notify ) { - m_smoothTurnRate = value; - auto settings = OverlayController::appSettings(); - settings->beginGroup( "playspaceSettings" ); - settings->setValue( "smoothTurnRate", m_smoothTurnRate ); - settings->endGroup(); - settings->sync(); - if ( notify ) - { - emit smoothTurnRateChanged( m_smoothTurnRate ); - } + emit smoothTurnRateChanged( value ); } } @@ -2045,10 +2037,10 @@ void MoveCenterTabController::smoothTurnLeft( bool smoothTurnLeftActive ) return; } - // Activates every tick. m_smoothTurnRate effectively becomes a percentage + // Activates every tick. smoothTurnRate() effectively becomes a percentage // of a degree per tick. A setting of 100 would equal 90 degrees/sec or 15 // RPM with a framerate of 90fps - int newRotationAngleDeg = m_rotation - m_smoothTurnRate; + int newRotationAngleDeg = m_rotation - smoothTurnRate(); // Keep angle within -18000 ~ 18000 centidegrees if ( newRotationAngleDeg > 18000 ) { @@ -2069,10 +2061,10 @@ void MoveCenterTabController::smoothTurnRight( bool smoothTurnRightActive ) return; } - // Activates every tick. m_smoothTurnRate effectively becomes a percentage + // Activates every tick. smoothTurnRate() effectively becomes a percentage // of a degree per tick. A setting of 100 would equal 90 degrees/sec or 15 // RPM with a framerate of 90fps - int newRotationAngleDeg = m_rotation + m_smoothTurnRate; + int newRotationAngleDeg = m_rotation + smoothTurnRate(); // Keep angle within -18000 ~ 18000 centidegrees if ( newRotationAngleDeg > 18000 ) { diff --git a/src/tabcontrollers/MoveCenterTabController.h b/src/tabcontrollers/MoveCenterTabController.h index eea2760..88a2281 100644 --- a/src/tabcontrollers/MoveCenterTabController.h +++ b/src/tabcontrollers/MoveCenterTabController.h @@ -119,7 +119,6 @@ private: int m_rotation = 0; int m_oldRotation = 0; int m_tempRotation = 0; - int m_smoothTurnRate = 100; bool m_moveShortcutRightPressed = false; bool m_moveShortcutLeftPressed = false; vr::TrackedDeviceIndex_t m_activeMoveController;