Core: Add Free Look controllers that are initialized at boot

This commit is contained in:
iwubcode
2020-06-12 00:25:06 -05:00
parent 27acba620c
commit 9ac6090c9a
5 changed files with 315 additions and 1 deletions

View File

@ -43,6 +43,7 @@
#include "Core/CoreTiming.h"
#include "Core/DSPEmulator.h"
#include "Core/FifoPlayer/FifoPlayer.h"
#include "Core/FreeLookManager.h"
#include "Core/HLE/HLE.h"
#include "Core/HW/CPU.h"
#include "Core/HW/DSP.h"
@ -83,7 +84,6 @@
#include "VideoCommon/OnScreenDisplay.h"
#include "VideoCommon/RenderBase.h"
#include "VideoCommon/VideoBackendBase.h"
#include "VideoCommon/VideoConfig.h"
#ifdef ANDROID
#include "jni/AndroidCommon/IDCache.h"
@ -485,6 +485,15 @@ static void EmuThread(std::unique_ptr<BootParameters> boot, WindowSystemInfo wsi
NetPlay::SetupWiimotes();
}
if (init_controllers)
{
FreeLook::Initialize();
}
else
{
FreeLook::LoadInputConfig();
}
Common::ScopeGuard controller_guard{[init_controllers, init_wiimotes] {
if (!init_controllers)
return;
@ -495,6 +504,8 @@ static void EmuThread(std::unique_ptr<BootParameters> boot, WindowSystemInfo wsi
Wiimote::Shutdown();
}
FreeLook::Shutdown();
ResetRumble();
Keyboard::Shutdown();