- treat Y button on Game Cube Controller, Classic Controller

and Wii U Pro Controller like 1 button on the Wii Remote
- treat X button on Game Cube Controller, Classic Controller
  and Wii U Pro Controller like 2 button on the Wii Remote
- press Z on Game Cube Controller or L Classic Controller or
  Wii U Pro Controller to open Settings menu
- press R on Classic Controller or Wii U Pro Controller to
  open External Applications menu (no unsued button left for
  Game Cube Controller)
- previously only the first controller was honoured, now all
  four are being connected, though only the first one of each
  kind (Wii Remote, Game Cube Controller or Wii U Pro Controller)
  can be used, each additional non-unique controller is ignored
This commit is contained in:
Christopher Roy Bratusek 2016-08-15 18:21:12 +02:00
parent ae055b4805
commit 86b03fb03e
5 changed files with 32 additions and 7 deletions

View File

@ -639,7 +639,9 @@ int MenuMain()
if(mainWindow->GetState() != STATE_DISABLED)
{
// Sortieren
if(WPAD_ButtonsDown(0) & WPAD_BUTTON_1 && Settings.current_category != 0)
if((WPAD_ButtonsDown(0) & (WPAD_BUTTON_1 | WPAD_CLASSIC_BUTTON_Y) && Settings.current_category != 0)
|| (WUPC_ButtonsDown(0) & WPAD_CLASSIC_BUTTON_Y && Settings.current_category != 0)
|| (PAD_ButtonsDown(0) & PAD_BUTTON_Y && Settings.current_category != 0))
{
switch (sortPrompt())
{
@ -720,7 +722,10 @@ int MenuMain()
menu = MENU_EXIT;
// ansicht wechseln
if(((WPAD_ButtonsDown(0) & WPAD_BUTTON_2) &! (WPAD_ButtonsDown(0) & WPAD_BUTTON_1)) || normal_grid_Btn.GetState() == STATE_CLICKED)
if(WPAD_ButtonsDown(0) & (WPAD_BUTTON_2 | WPAD_CLASSIC_BUTTON_X) ||
WUPC_ButtonsDown(0) & WPAD_CLASSIC_BUTTON_X ||
PAD_ButtonsDown(0) & PAD_BUTTON_X ||
normal_grid_Btn.GetState() == STATE_CLICKED)
{
Settings.current_page = 1;
if(Settings.grid)
@ -742,7 +747,8 @@ int MenuMain()
button = "B";
// Settings
if(settings_Btn.GetState() == STATE_CLICKED)
if(settings_Btn.GetState() == STATE_CLICKED || WPAD_ButtonsDown(0) & WPAD_CLASSIC_BUTTON_FULL_L
|| PAD_ButtonsDown(0) & PAD_TRIGGER_Z || WUPC_ButtonsDown(0) & WPAD_CLASSIC_BUTTON_FULL_L)
{
menu = MENU_SETTINGS;
}
@ -828,8 +834,8 @@ int MenuMain()
}
// Loader button
else if(loader_Btn.GetState() == STATE_CLICKED || WPAD_ButtonsDown(0) & (WPAD_BUTTON_HOME | WPAD_CLASSIC_BUTTON_HOME)
|| PAD_ButtonsDown(0) & PAD_BUTTON_START || WUPC_ButtonsDown(0) & WPAD_CLASSIC_BUTTON_HOME)
else if(loader_Btn.GetState() == STATE_CLICKED || WPAD_ButtonsDown(0) & WPAD_CLASSIC_BUTTON_FULL_R
|| WUPC_ButtonsDown(0) & WPAD_CLASSIC_BUTTON_FULL_R)
{
loader_Btn.ResetState();
if(loaderPrompt() == MENU_EXIT)

View File

@ -36,7 +36,7 @@ void UpdatePads()
WPAD_ScanPads();
PAD_ScanPads();
for(int i=3; i >= 0; i--)
for(int i=0; i < 4; i++)
{
userInput[i].wpad = WPAD_Data(i);
userInput[i].chan = i;

View File

@ -186,7 +186,12 @@ UpdateGUI (void *arg)
}
// screenshoot
if(WPAD_ButtonsDown(0) & WPAD_BUTTON_1 && WPAD_ButtonsDown(0) & WPAD_BUTTON_2)
if(((WPAD_ButtonsDown(0) & (WPAD_BUTTON_1 | WPAD_CLASSIC_BUTTON_Y)) &&
(WPAD_ButtonsDown(0) & (WPAD_BUTTON_2 | WPAD_CLASSIC_BUTTON_X)))
|| ((WUPC_ButtonsDown(0) & WPAD_CLASSIC_BUTTON_Y) &&
(WUPC_ButtonsDown(0) & WPAD_CLASSIC_BUTTON_X))
|| ((PAD_ButtonsDown(0) & PAD_BUTTON_Y) &&
(PAD_ButtonsDown(0) & PAD_BUTTON_X)))
Screenshot();
}
}

View File

@ -3,6 +3,20 @@
- remove 'All' button from device prompt in vWii builds
- re-enable 'SD Gecko' setting in vWii builds
- support for Wii U Pro Controller trough FIX94's libwupc
- support for Wii U Pro Controller in the installer
- treat Y button on Game Cube Controller, Classic Controller
and Wii U Pro Controller like 1 button on the Wii Remote
- treat X button on Game Cube Controller, Classic Controller
and Wii U Pro Controller like 2 button on the Wii Remote
- press Z on Game Cube Controller or L Classic Controller or
Wii U Pro Controller to open Settings menu
- press R on Classic Controller or Wii U Pro Controller to
open External Applications menu (no unsued button left for
Game Cube Controller)
- previously only the first controller was honoured, now all
four are being connected, though only the first one of each
kind (Wii Remote, Game Cube Controller or Wii U Pro Controller)
can be used, each additional non-unique controller is ignored
- update german translation
//rev45: