NetPlay: Rework pad mapping

Pad mapping and the UI behind it is significantly confusing,
and has been confusing users since NetPlay was introduced.

As part of a large code cleanup to help NetPlay more stable,
introduce a better pad mapping system where local pad mapping
is handled by the client. Now, all the server and other
clients know is which player have which controllers, and the
clients only know this so they can show the pad mapping in the
UI; they don't do anything else with it.

A future cleanup will use this pad mapping data to completely
ignore the pads configured in the settings pane on the host.
This commit is contained in:
Jasper St. Pierre
2013-08-18 09:43:01 -04:00
parent 7a5374258e
commit 23ff31451f
7 changed files with 163 additions and 313 deletions

View File

@ -124,13 +124,14 @@ private:
class PadMapDiag : public wxDialog
{
public:
PadMapDiag(wxWindow* const parent, int map[]);
PadMapDiag(wxWindow* const parent, PadMapping map[], std::vector<const Player *>& player_list);
private:
void OnAdjust(wxCommandEvent& event);
wxChoice* m_map_cbox[4];
int* const m_mapping;
PadMapping* const m_mapping;
std::vector<const Player *>& m_player_list;
};
namespace NetPlay