diff options
| author | JMC47 <JMC4789@gmail.com> | 2025-12-22 13:30:12 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-12-22 13:30:12 -0500 |
| commit | 0e06f5d632744107f0fced36393eff1be1c5ab4e (patch) | |
| tree | 83d2594236e4ba8be0c82b264104db370793084d /Source/Core/VideoCommon/FreeLookCamera.cpp | |
| parent | 90c2f24bf8d0dbd198ba6022a16e66c51ececa56 (diff) | |
| parent | be95035cc47fe747c567a3907e9086da89437d67 (diff) | |
Merge pull request #14114 from jordan-woyak/freelook-config-cleanup
Core: Eliminate FreeLookConfig by putting the "active config" within FreeLookCamera.
Diffstat (limited to 'Source/Core/VideoCommon/FreeLookCamera.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/FreeLookCamera.cpp | 30 |
1 files changed, 13 insertions, 17 deletions
diff --git a/Source/Core/VideoCommon/FreeLookCamera.cpp b/Source/Core/VideoCommon/FreeLookCamera.cpp index 2bc7d11bb9..ba6be77d6c 100644 --- a/Source/Core/VideoCommon/FreeLookCamera.cpp +++ b/Source/Core/VideoCommon/FreeLookCamera.cpp @@ -4,18 +4,13 @@ #include "VideoCommon/FreeLookCamera.h" #include <algorithm> -#include <math.h> #include <fmt/format.h> -#include "Common/MathUtil.h" - #include "Common/ChunkFile.h" -#include "Core/ConfigManager.h" +#include "Common/Config/Config.h" #include "Core/Core.h" -#include "VideoCommon/VideoCommon.h" - FreeLookCamera g_freelook_camera; namespace @@ -260,21 +255,18 @@ float CameraControllerInput::GetSpeed() const FreeLookCamera::FreeLookCamera() { - SetControlType(FreeLook::ControlType::SixAxis); + RefreshConfig(); } -void FreeLookCamera::SetControlType(FreeLook::ControlType type) +void FreeLookCamera::RefreshConfig() { - if (m_current_type && *m_current_type == type) - { + m_is_enabled = Config::Get(Config::FREE_LOOK_ENABLED); + const auto type = Config::Get(Config::FL1_CONTROL_TYPE); + + if (m_current_type == type) return; - } - if (type == FreeLook::ControlType::SixAxis) - { - m_camera_controller = std::make_unique<SixAxisController>(); - } - else if (type == FreeLook::ControlType::Orbital) + if (type == FreeLook::ControlType::Orbital) { m_camera_controller = std::make_unique<OrbitalController>(); } @@ -282,6 +274,10 @@ void FreeLookCamera::SetControlType(FreeLook::ControlType type) { m_camera_controller = std::make_unique<FPSController>(); } + else + { + m_camera_controller = std::make_unique<SixAxisController>(); + } m_current_type = type; } @@ -330,7 +326,7 @@ void FreeLookCamera::DoState(PointerWrap& p) bool FreeLookCamera::IsActive() const { - return FreeLook::GetActiveConfig().enabled; + return m_is_enabled; } CameraController* FreeLookCamera::GetController() const |
