summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authormimimi085181 <mimimi085181@gmail.com>2016-06-26 10:54:49 +0200
committermimimi085181 <mimimi085181@gmail.com>2016-07-08 20:23:33 +0200
commit4f9fe41ee608c8dec3ccc8442601e46bc4e61f83 (patch)
tree6f1f4e5a8e29cb46c0db7255e762ea9e52fc5c6d /Source
parent330289cf7111753dc999333b3f9f1d2af2186a41 (diff)
Revert pr#3660
https://github.com/dolphin-emu/dolphin/pull/3660
Diffstat (limited to 'Source')
-rw-r--r--Source/Core/Core/NetPlayClient.cpp34
-rw-r--r--Source/Core/DolphinWX/NetPlay/NetWindow.cpp1
-rw-r--r--Source/Core/DolphinWX/NetPlay/PadMapDialog.cpp50
3 files changed, 56 insertions, 29 deletions
diff --git a/Source/Core/Core/NetPlayClient.cpp b/Source/Core/Core/NetPlayClient.cpp
index b5fe3a123c..223b310648 100644
--- a/Source/Core/Core/NetPlayClient.cpp
+++ b/Source/Core/Core/NetPlayClient.cpp
@@ -713,23 +713,23 @@ bool NetPlayClient::StartGame(const std::string& path)
m_dialog->BootGame(path);
- if (SConfig::GetInstance().bWii)
- {
- for (unsigned int i = 0; i < 4; ++i)
- WiimoteReal::ChangeWiimoteSource(i,
- m_wiimote_map[i] > 0 ? WIIMOTE_SRC_EMU : WIIMOTE_SRC_NONE);
-
- // Needed to prevent locking up at boot if (when) the wiimotes connect out of order.
- NetWiimote nw;
- nw.resize(4, 0);
-
- for (unsigned int w = 0; w < 4; ++w)
- {
- if (m_wiimote_map[w] != -1)
- // probably overkill, but whatever
- for (unsigned int i = 0; i < 7; ++i)
- m_wiimote_buffer[w].Push(nw);
- }
+ if (SConfig::GetInstance().bWii)
+ {
+ for (unsigned int i = 0; i < 4; ++i)
+ WiimoteReal::ChangeWiimoteSource(i,
+ m_wiimote_map[i] > 0 ? WIIMOTE_SRC_EMU : WIIMOTE_SRC_NONE);
+
+ // Needed to prevent locking up at boot if (when) the wiimotes connect out of order.
+ NetWiimote nw;
+ nw.resize(4, 0);
+
+ for (unsigned int w = 0; w < 4; ++w)
+ {
+ if (m_wiimote_map[w] != -1)
+ // probably overkill, but whatever
+ for (unsigned int i = 0; i < 7; ++i)
+ m_wiimote_buffer[w].Push(nw);
+ }
}
UpdateDevices();
diff --git a/Source/Core/DolphinWX/NetPlay/NetWindow.cpp b/Source/Core/DolphinWX/NetPlay/NetWindow.cpp
index 43a96404c7..632472b1d0 100644
--- a/Source/Core/DolphinWX/NetPlay/NetWindow.cpp
+++ b/Source/Core/DolphinWX/NetPlay/NetWindow.cpp
@@ -483,6 +483,7 @@ void NetPlayDialog::OnAssignPads(wxCommandEvent&)
pmd.ShowModal();
netplay_server->SetPadMapping(pmd.GetModifiedPadMappings());
+ netplay_server->SetWiimoteMapping(pmd.GetModifiedWiimoteMappings());
}
void NetPlayDialog::OnKick(wxCommandEvent&)
diff --git a/Source/Core/DolphinWX/NetPlay/PadMapDialog.cpp b/Source/Core/DolphinWX/NetPlay/PadMapDialog.cpp
index 38fb4233fa..b5e5badc7c 100644
--- a/Source/Core/DolphinWX/NetPlay/PadMapDialog.cpp
+++ b/Source/Core/DolphinWX/NetPlay/PadMapDialog.cpp
@@ -11,11 +11,9 @@
#include "Core/NetPlayServer.h"
#include "DolphinWX/NetPlay/PadMapDialog.h"
-// Removed Wiimote UI elements due to Wiimotes being flat out broken in netplay.
-
PadMapDialog::PadMapDialog(wxWindow* parent, NetPlayServer* server, NetPlayClient* client)
: wxDialog(parent, wxID_ANY, _("Controller Ports")), m_pad_mapping(server->GetPadMapping()),
- m_player_list(client->GetPlayers())
+ m_wii_mapping(server->GetWiimoteMapping()), m_player_list(client->GetPlayers())
{
wxBoxSizer* const h_szr = new wxBoxSizer(wxHORIZONTAL);
h_szr->AddSpacer(10);
@@ -52,6 +50,34 @@ PadMapDialog::PadMapDialog(wxWindow* parent, NetPlayServer* server, NetPlayClien
h_szr->AddSpacer(10);
}
+ for (unsigned int i = 0; i < 4; ++i)
+ {
+ wxBoxSizer* const v_szr = new wxBoxSizer(wxVERTICAL);
+ v_szr->Add(new wxStaticText(this, wxID_ANY, (wxString(_("Wiimote ")) + (wxChar)('1' + i))), 1,
+ wxALIGN_CENTER_HORIZONTAL);
+
+ m_map_cbox[i + 4] =
+ new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, player_names);
+ m_map_cbox[i + 4]->Bind(wxEVT_CHOICE, &PadMapDialog::OnAdjust, this);
+ if (m_wii_mapping[i] == -1)
+ {
+ m_map_cbox[i + 4]->Select(0);
+ }
+ else
+ {
+ for (unsigned int j = 0; j < m_player_list.size(); j++)
+ {
+ if (m_wii_mapping[i] == m_player_list[j]->pid)
+ m_map_cbox[i + 4]->Select(j + 1);
+ }
+ }
+
+ v_szr->Add(m_map_cbox[i + 4], 1);
+
+ h_szr->Add(v_szr, 1, wxTOP | wxEXPAND, 20);
+ h_szr->AddSpacer(10);
+ }
+
wxBoxSizer* const main_szr = new wxBoxSizer(wxVERTICAL);
main_szr->Add(h_szr);
main_szr->AddSpacer(5);
@@ -66,9 +92,9 @@ PadMappingArray PadMapDialog::GetModifiedPadMappings() const
return m_pad_mapping;
}
-PadMappingArray PadMapDialog::GetModifiedWiimoteMappings() const
-{
- return m_wii_mapping;
+PadMappingArray PadMapDialog::GetModifiedWiimoteMappings() const
+{
+ return m_wii_mapping;
}
void PadMapDialog::OnAdjust(wxCommandEvent& WXUNUSED(event))
@@ -80,11 +106,11 @@ void PadMapDialog::OnAdjust(wxCommandEvent& WXUNUSED(event))
m_pad_mapping[i] = m_player_list[player_idx - 1]->pid;
else
m_pad_mapping[i] = -1;
-
- player_idx = m_map_cbox[i + 4]->GetSelection();
- if (player_idx > 0)
- m_wii_mapping[i] = m_player_list[player_idx - 1]->pid;
- else
- m_wii_mapping[i] = -1;
+
+ player_idx = m_map_cbox[i + 4]->GetSelection();
+ if (player_idx > 0)
+ m_wii_mapping[i] = m_player_list[player_idx - 1]->pid;
+ else
+ m_wii_mapping[i] = -1;
}
}