示例#1
0
                    public override void ApplyCustomMappings(EmuCores.GB.ConfigsGB.InputProfile aProfile)
                    {
                        if (aProfile.inputType != "joystick")
                        {
                            return;
                        }

                        m_mappedButtons[(int)GBButtons.A]         = ParseBtnCode(aProfile.buttonA);
                        m_mappedButtons[(int)GBButtons.B]         = ParseBtnCode(aProfile.buttonB);
                        m_mappedButtons[(int)GBButtons.Select]    = ParseBtnCode(aProfile.buttonSelect);
                        m_mappedButtons[(int)GBButtons.Start]     = ParseBtnCode(aProfile.buttonStart);
                        m_mappedButtons[(int)GBButtons.DPadUp]    = ParseBtnCode(aProfile.buttonDPadUp);
                        m_mappedButtons[(int)GBButtons.DPadDown]  = ParseBtnCode(aProfile.buttonDPadDown);
                        m_mappedButtons[(int)GBButtons.DPadLeft]  = ParseBtnCode(aProfile.buttonDPadLeft);
                        m_mappedButtons[(int)GBButtons.DPadRight] = ParseBtnCode(aProfile.buttonDPadRight);
                    }
示例#2
0
                    public override void ApplyCustomMappings(EmuCores.GB.ConfigsGB.InputProfile aProfile)
                    {
                        if (aProfile.inputType != "xinput")
                        {
                            return;
                        }

                        try
                        {
                            m_mappedButtons[(int)GBButtons.A]      = new DigitalButton(int.Parse(aProfile.buttonA));
                            m_mappedButtons[(int)GBButtons.B]      = new DigitalButton(int.Parse(aProfile.buttonB));
                            m_mappedButtons[(int)GBButtons.Select] = new DigitalButton(int.Parse(aProfile.buttonSelect));
                            m_mappedButtons[(int)GBButtons.Start]  = new DigitalButton(int.Parse(aProfile.buttonStart));
                        }
                        catch (System.Exception e)
                        {
                            EmuEnvironment.ShowErrorBox("Config file error", "Invalid data in Profile Input section: " + e.Message);
                        }
                    }
示例#3
0
 public override void ApplyCustomMappings(EmuCores.GB.ConfigsGB.InputProfile aProfile)
 {
 }
示例#4
0
文件: GBInput.cs 项目: fattard/xFF
                    public static GBInput BuildInput(EmuCores.GB.ConfigsGB.InputProfile aProfile, List <PlatformSupport.IPlatformInput> aInputList)
                    {
                        // Build input list
                        for (int i = 0; i < aInputList.Count; ++i)
                        {
                            if (aInputList[i].InputType == PlatformSupport.InputType.Keyboard)
                            {
                                s_inputList.Add(new KeyboardInput_GB(aInputList[i]));
                            }

                            else if (aInputList[i].InputType == PlatformSupport.InputType.Xbox)
                            {
                                s_inputList.Add(new XboxInput_GB(aInputList[i]));
                            }

                            else if (aInputList[i].InputType == PlatformSupport.InputType.GenericJoystick)
                            {
                                s_inputList.Add(new GenericJoystick_GB(aInputList[i]));
                            }
                        }

                        if (aInputList.Count == 1)
                        {
                            return(s_inputList[0]);
                        }

                        return(new MasterInput_GB());


                        //TODO: apply custom profiles
#if _DISABLED
                        for (int i = 0; i < aInputList.Count; ++i)
                        {
                            if (aProfile.inputType == "keyboard" && aInputList[i] is PlatformSupport.KeyboardInput)
                            {
                                var kbd = new KeyboardInput_GB(aInputList[i]);
                                kbd.ApplyCustomMappings(aProfile);
                                return(kbd);
                            }

                            else if (aProfile.inputType == "xinput" && aInputList[i] is PlatformSupport.XboxInputType)
                            {
                                var xinput = new XboxInput_GB(aInputList[i]);
                                xinput.ApplyCustomMappings(aProfile);
                                return(xinput);
                            }

                            else if (aProfile.inputType == "joystick" && aInputList[i] is PlatformSupport.GenericJoystick)
                            {
                                var joystick = new GenericJoystick_GB(aInputList[i]);
                                joystick.ApplyCustomMappings(aProfile);
                                return(joystick);
                            }
                        }

                        // Build default for platform
                        var defaultInput = aInputList[0];
                        if (defaultInput is PlatformSupport.KeyboardInput)
                        {
                            return(new KeyboardInput_GB(defaultInput));
                        }
                        else if (defaultInput is PlatformSupport.XboxInputType)
                        {
                            return(new XboxInput_GB(defaultInput));
                        }

                        // Keyboard as fallback
                        return(new KeyboardInput_GB(defaultInput));
#endif // _DISABLED
                    }
示例#5
0
文件: GBInput.cs 项目: fattard/xFF
 public abstract void ApplyCustomMappings(EmuCores.GB.ConfigsGB.InputProfile aProfile);