mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-01-25 07:21:14 +01:00
Disable wiimotes on game start if running in netplay
And restore the settings on game quit
This commit is contained in:
parent
3033096223
commit
ef0f164343
@ -17,11 +17,13 @@
|
|||||||
#include "Core/HW/SI_DeviceGCController.h"
|
#include "Core/HW/SI_DeviceGCController.h"
|
||||||
#include "Core/HW/Sram.h"
|
#include "Core/HW/Sram.h"
|
||||||
#include "Core/HW/WiimoteEmu/WiimoteEmu.h"
|
#include "Core/HW/WiimoteEmu/WiimoteEmu.h"
|
||||||
|
#include "Core/HW/WiimoteReal/WiimoteReal.h"
|
||||||
#include "Core/IPC_HLE/WII_IPC_HLE_Device_usb.h"
|
#include "Core/IPC_HLE/WII_IPC_HLE_Device_usb.h"
|
||||||
|
|
||||||
static const char* NETPLAY_VERSION = scm_rev_git_str;
|
static const char* NETPLAY_VERSION = scm_rev_git_str;
|
||||||
static std::mutex crit_netplay_client;
|
static std::mutex crit_netplay_client;
|
||||||
static NetPlayClient * netplay_client = nullptr;
|
static NetPlayClient * netplay_client = nullptr;
|
||||||
|
static std::array<int, 4> s_wiimote_sources_cache;
|
||||||
NetSettings g_NetPlaySettings;
|
NetSettings g_NetPlaySettings;
|
||||||
|
|
||||||
// called from ---GUI--- thread
|
// called from ---GUI--- thread
|
||||||
@ -725,6 +727,17 @@ bool NetPlayClient::StartGame(const std::string &path)
|
|||||||
|
|
||||||
m_dialog->BootGame(path);
|
m_dialog->BootGame(path);
|
||||||
|
|
||||||
|
// Disable wiimotes on game start
|
||||||
|
// TODO: remove this when re-implementing wiimote netplay
|
||||||
|
if (SConfig::GetInstance().bWii)
|
||||||
|
{
|
||||||
|
for (unsigned int i = 0; i < 4; ++i)
|
||||||
|
{
|
||||||
|
s_wiimote_sources_cache[i] = g_wiimote_sources[i];
|
||||||
|
WiimoteReal::ChangeWiimoteSource(i, WIIMOTE_SRC_NONE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
UpdateDevices();
|
UpdateDevices();
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
@ -1019,6 +1032,17 @@ bool NetPlayClient::StopGame()
|
|||||||
// stop game
|
// stop game
|
||||||
m_dialog->StopGame();
|
m_dialog->StopGame();
|
||||||
|
|
||||||
|
// Restore wiimote settings on game stop
|
||||||
|
// TODO: remove this when re-implementing wiimote netplay
|
||||||
|
if (SConfig::GetInstance().bWii)
|
||||||
|
{
|
||||||
|
for (unsigned int i = 0; i < 4; ++i)
|
||||||
|
{
|
||||||
|
g_wiimote_sources[i] = s_wiimote_sources_cache[i];
|
||||||
|
WiimoteReal::ChangeWiimoteSource(i, s_wiimote_sources_cache[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user