Fixed a issue with Homebrew

+ Added a notice about some games not working with Mutliple Players just yet.
This commit is contained in:
John Clemis 2018-08-10 20:55:33 -05:00
parent 9aac4390fe
commit fa0dfe4164
3 changed files with 128 additions and 11 deletions

View file

@ -69,7 +69,7 @@ https://openal.org/downloads/OpenAL11CoreSDK.zip
- R = Right Shoulder Button
- ZR = Right Trigger
- For more information on how to configure these buttons see [CONFIG.md](CONFIG.md)
- Multiple Players are supported. See [CONFIG.md](CONFIG.md) for more details.
- Multiple Players are partially supported. See [CONFIG.md](CONFIG.md) for more details.
- Config File: `Ryujinx.conf` should be present in executable folder.
For more information [you can go here](CONFIG.md).

View file

@ -33,10 +33,14 @@ GamePad_Enable = true
#GamePad_X = X Game Pad Configuration (eg. GamePad_0 is the zeroth Controller Configuration)
#Handheld Devices can not be mixed with any other players (Player 1, Player 2, etc.)
#This can stay at None unless you specifically want to emulate Handheld controllers.
Handheld_Device = None
#Set this to GamePad_0 if you want to use a Controller
Handheld_Device = Keyboard
Player1_Device = Keyboard
#The Player Devices don't work in all games (eg. Super Mario Odyssey) but do in some (eg. Sonic Mania)
#If you want to use these, set Handheld_Device to none, then configure Player1_Device to be one of the Valid Mappings
#(eg. GamePad_0 if you have a Controller, or Keyboard)
#Then configure any of the other players to be a Valid Mapping aswell if you want to play Co-Op
Player1_Device = None
Player2_Device = None
Player3_Device = None
Player4_Device = None

View file

@ -263,6 +263,12 @@ namespace Ryujinx
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_HANDHELD,
HidControllerLayouts.Main,
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
break;
default:
if (HidEmulatedDevices.Devices.Handheld < 0)
@ -273,6 +279,12 @@ namespace Ryujinx
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Handheld],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Handheld],
RightJoystickGamePad[HidEmulatedDevices.Devices.Handheld]);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_HANDHELD,
HidControllerLayouts.Main,
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Handheld],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Handheld],
RightJoystickGamePad[HidEmulatedDevices.Devices.Handheld]);
break;
}
}
@ -288,6 +300,12 @@ namespace Ryujinx
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_1,
HidControllerLayouts.Main,
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
break;
default:
if (HidEmulatedDevices.Devices.Player1 < 0)
@ -298,6 +316,12 @@ namespace Ryujinx
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player1],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player1],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player1]);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_1,
HidControllerLayouts.Main,
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player1],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player1],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player1]);
break;
}
}
@ -313,6 +337,12 @@ namespace Ryujinx
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_2,
HidControllerLayouts.Main,
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
break;
default:
if (HidEmulatedDevices.Devices.Player2 < 0)
@ -323,6 +353,12 @@ namespace Ryujinx
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player2],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player2],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player2]);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_2,
HidControllerLayouts.Main,
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player2],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player2],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player2]);
break;
}
}
@ -338,6 +374,12 @@ namespace Ryujinx
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_3,
HidControllerLayouts.Main,
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
break;
default:
if (HidEmulatedDevices.Devices.Player3 < 0)
@ -348,6 +390,12 @@ namespace Ryujinx
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player3],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player3],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player3]);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_3,
HidControllerLayouts.Main,
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player3],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player3],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player3]);
break;
}
}
@ -363,6 +411,12 @@ namespace Ryujinx
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_4,
HidControllerLayouts.Main,
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
break;
default:
if (HidEmulatedDevices.Devices.Player4 < 0)
@ -373,6 +427,12 @@ namespace Ryujinx
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player4],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player4],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player4]);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_4,
HidControllerLayouts.Main,
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player4],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player4],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player4]);
break;
}
}
@ -388,6 +448,12 @@ namespace Ryujinx
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_5,
HidControllerLayouts.Main,
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
break;
default:
if (HidEmulatedDevices.Devices.Player5 < 0)
@ -398,6 +464,12 @@ namespace Ryujinx
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player5],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player5],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player5]);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_5,
HidControllerLayouts.Main,
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player5],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player5],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player5]);
break;
}
}
@ -413,6 +485,12 @@ namespace Ryujinx
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_6,
HidControllerLayouts.Main,
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
break;
default:
if (HidEmulatedDevices.Devices.Player6 < 0)
@ -423,6 +501,12 @@ namespace Ryujinx
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player6],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player6],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player6]);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_6,
HidControllerLayouts.Main,
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player6],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player6],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player6]);
break;
}
}
@ -438,6 +522,12 @@ namespace Ryujinx
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_7,
HidControllerLayouts.Main,
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
break;
default:
if (HidEmulatedDevices.Devices.Player7 < 0)
@ -448,6 +538,12 @@ namespace Ryujinx
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player7],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player7],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player7]);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_7,
HidControllerLayouts.Main,
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player7],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player7],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player7]);
break;
}
}
@ -463,6 +559,12 @@ namespace Ryujinx
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_8,
HidControllerLayouts.Main,
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
break;
default:
if (HidEmulatedDevices.Devices.Player8 < 0)
@ -473,6 +575,12 @@ namespace Ryujinx
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player8],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player8],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player8]);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_8,
HidControllerLayouts.Main,
CurrentButtonsGamePad[HidEmulatedDevices.Devices.Player8],
LeftJoystickGamePad[HidEmulatedDevices.Devices.Player8],
RightJoystickGamePad[HidEmulatedDevices.Devices.Player8]);
break;
}
@ -487,6 +595,12 @@ namespace Ryujinx
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_UNKNOWN,
HidControllerLayouts.Main,
CurrentButtonsKeyboard,
LeftJoystickKeyboard,
RightJoystickKeyboard);
break;
default:
if (HidEmulatedDevices.Devices.PlayerUnknown < 0)
@ -497,17 +611,16 @@ namespace Ryujinx
CurrentButtonsGamePad[HidEmulatedDevices.Devices.PlayerUnknown],
LeftJoystickGamePad[HidEmulatedDevices.Devices.PlayerUnknown],
RightJoystickGamePad[HidEmulatedDevices.Devices.PlayerUnknown]);
Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_UNKNOWN,
HidControllerLayouts.Main,
CurrentButtonsGamePad[HidEmulatedDevices.Devices.PlayerUnknown],
LeftJoystickGamePad[HidEmulatedDevices.Devices.PlayerUnknown],
RightJoystickGamePad[HidEmulatedDevices.Devices.PlayerUnknown]);
break;
}
}
}
/*Ns.Hid.SetJoyconButton(
HidControllerId.CONTROLLER_PLAYER_1,
HidControllerLayouts.Joined,
CurrentButton,
LeftJoystick,
RightJoystick);*/
}
private new void RenderFrame()