Convert m_gravityStrength to new settings API
Casts inside the function because it's not feasible to change all floats to double.
This commit is contained in:
@@ -39,8 +39,6 @@ namespace advsettings
|
||||
{
|
||||
void MoveCenterTabController::initStage1()
|
||||
{
|
||||
m_gravityStrength = static_cast<float>( settings::getSetting(
|
||||
settings::DoubleSetting::PLAYSPACE_gravityStrength ) );
|
||||
m_flingStrength = static_cast<float>( settings::getSetting(
|
||||
settings::DoubleSetting::PLAYSPACE_flingStrength ) );
|
||||
|
||||
@@ -699,20 +697,17 @@ void MoveCenterTabController::setHeightToggleOffset( float value, bool notify )
|
||||
|
||||
float MoveCenterTabController::gravityStrength() const
|
||||
{
|
||||
return m_gravityStrength;
|
||||
return static_cast<float>( settings::getSetting(
|
||||
settings::DoubleSetting::PLAYSPACE_gravityStrength ) );
|
||||
}
|
||||
|
||||
void MoveCenterTabController::setGravityStrength( float value, bool notify )
|
||||
{
|
||||
m_gravityStrength = value;
|
||||
auto settings = OverlayController::appSettings();
|
||||
settings->beginGroup( "playspaceSettings" );
|
||||
settings->setValue( "gravityStrength", m_gravityStrength );
|
||||
settings->endGroup();
|
||||
settings->sync();
|
||||
settings::setSetting( settings::DoubleSetting::PLAYSPACE_gravityStrength,
|
||||
static_cast<double>( value ) );
|
||||
if ( notify )
|
||||
{
|
||||
emit gravityStrengthChanged( m_gravityStrength );
|
||||
emit gravityStrengthChanged( value );
|
||||
}
|
||||
m_lastGravityUpdateTimePoint = std::chrono::steady_clock::now();
|
||||
}
|
||||
@@ -1943,7 +1938,7 @@ void MoveCenterTabController::gravityReverseAction( bool gravityReverseHeld )
|
||||
if ( ( gravityReverseHeld && !m_gravityReversed )
|
||||
|| ( !gravityReverseHeld && m_gravityReversed ) )
|
||||
{
|
||||
setGravityStrength( m_gravityStrength * -1.0f );
|
||||
setGravityStrength( gravityStrength() * -1.0f );
|
||||
}
|
||||
m_gravityReversed = gravityReverseHeld;
|
||||
}
|
||||
@@ -2423,7 +2418,7 @@ void MoveCenterTabController::updateGravity()
|
||||
// are we falling?
|
||||
// note: up is negative y
|
||||
// note: set to always fall if gravity reversed (strength < 0)
|
||||
if ( ( m_offsetY < m_gravityFloor ) || ( m_gravityStrength < 0 ) )
|
||||
if ( ( m_offsetY < m_gravityFloor ) || ( gravityStrength() < 0 ) )
|
||||
{
|
||||
// check if we're about to land
|
||||
// note: we don't land if gravity is reversed (strength < 0)
|
||||
@@ -2431,7 +2426,7 @@ void MoveCenterTabController::updateGravity()
|
||||
+ static_cast<float>( m_velocity[1]
|
||||
* secondsSinceLastGravityUpdate )
|
||||
>= m_gravityFloor )
|
||||
&& m_gravityStrength >= 0 )
|
||||
&& gravityStrength() >= 0 )
|
||||
{
|
||||
// get ratio of how much from y velocity applied to overcome y
|
||||
// offset and get down to ground.
|
||||
@@ -2472,7 +2467,7 @@ void MoveCenterTabController::updateGravity()
|
||||
// accelerate downward velocity for the next update
|
||||
// note: downward is positive y
|
||||
m_velocity[1] = m_velocity[1]
|
||||
+ ( static_cast<double>( m_gravityStrength )
|
||||
+ ( static_cast<double>( gravityStrength() )
|
||||
* secondsSinceLastGravityUpdate );
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -125,7 +125,6 @@ private:
|
||||
float m_lastControllerPosition[3];
|
||||
bool m_heightToggle = false;
|
||||
float m_gravityFloor = 0.0f;
|
||||
float m_gravityStrength = 9.8f;
|
||||
float m_flingStrength = 1.0f;
|
||||
// Set lastHandQuaternion.w to -1000.0 when last hand is invalid.
|
||||
vr::HmdQuaternion_t m_lastHandQuaternion
|
||||
|
||||
Reference in New Issue
Block a user