Пример #1
0
 private static void InputInitialize()
 {
     // Initialize all controllers to blank
     joypad1        = new BlankJoypad();
     joypad2        = new BlankJoypad();
     joypad3        = new BlankJoypad();
     joypad4        = new BlankJoypad();
     zapper         = new BlankZapper();
     VSUnisystemDIP = new BlankVSUnisystemDIP();
 }
Пример #2
0
 private static void InputInitialize()
 {
     // Initialize all controllers to blank
     joypad1 = new BlankJoypad();
     joypad2 = new BlankJoypad();
     joypad3 = new BlankJoypad();
     joypad4 = new BlankJoypad();
     zapper = new BlankZapper();
     VSUnisystemDIP = new BlankVSUnisystemDIP();
 }
Пример #3
0
 public static void SetupJoypads(IJoypadConnecter joy1, IJoypadConnecter joy2, IJoypadConnecter joy3, IJoypadConnecter joy4)
 {
     joypad1 = joy1;
     joypad2 = joy2;
     joypad3 = joy3;
     joypad4 = joy4;
     if (joypad1 == null)
         joypad1 = new BlankJoypad();
     if (joypad2 == null)
         joypad2 = new BlankJoypad();
     if (joypad3 == null)
         joypad3 = new BlankJoypad();
     if (joypad4 == null)
         joypad4 = new BlankJoypad();
 }
Пример #4
0
 public static void SetupJoypads(IJoypadConnecter joy1, IJoypadConnecter joy2, IJoypadConnecter joy3, IJoypadConnecter joy4)
 {
     joypad1 = joy1;
     joypad2 = joy2;
     joypad3 = joy3;
     joypad4 = joy4;
     if (joypad1 == null)
     {
         joypad1 = new BlankJoypad();
     }
     if (joypad2 == null)
     {
         joypad2 = new BlankJoypad();
     }
     if (joypad3 == null)
     {
         joypad3 = new BlankJoypad();
     }
     if (joypad4 == null)
     {
         joypad4 = new BlankJoypad();
     }
 }
Пример #5
0
        public static void InitializeInput()
        {
            LoadShortcuts();
            NesEmu.IsFourPlayers     = Settings.Key_Connect4Players;
            NesEmu.IsZapperConnected = Settings.Key_ConnectZapper;
            IJoypadConnecter         joy1  = null;
            IJoypadConnecter         joy2  = null;
            IJoypadConnecter         joy3  = null;
            IJoypadConnecter         joy4  = null;
            IVSUnisystemDIPConnecter vsUni = null;

            Console.WriteLine(">Initializing input settings...");
            if (Settings.Key_P1_UseJoystick ||
                Settings.Key_P2_UseJoystick ||
                Settings.Key_P3_UseJoystick ||
                Settings.Key_P4_UseJoystick ||
                Settings.Key_VS_UseJoystick)
            {
                Console.WriteLine(">Initializing joysticks...");
                Joysticks.Initialize();
                Console.WriteLine("->Joysticks number = " + Joysticks.NumberOfJoysticks);
            }
            Console.WriteLine(">Applying key mappings...");
            #region Player 1
            if (!Settings.Key_P1_UseJoystick)
            {
                joy1 = new SDL_Keyboard_Joyad(0);
                Console.WriteLine("->Using keyboard for player 1.");
            }
            else
            {
                if (Joysticks.IsValidJoystickNumber(Settings.Key_P1_JoystickIndex))
                {
                    joy1 = new SDL_Joystick_Joypad(Settings.Key_P1_JoystickIndex, 0);
                    Console.WriteLine("->Using joystick for player 1.");
                }
                else
                {
                    // USE keyboard ?
                    joy1 = new SDL_Keyboard_Joyad(0);
                    Console.WriteLine("->Joystick is not connected; using keyboard for player 1.");
                }
            }
            #endregion
            #region Player 2
            if (!Settings.Key_P2_UseJoystick)
            {
                joy2 = new SDL_Keyboard_Joyad(1);
                Console.WriteLine("->Using keyboard for player 2.");
            }
            else
            {
                if (Joysticks.IsValidJoystickNumber(Settings.Key_P2_JoystickIndex))
                {
                    joy2 = new SDL_Joystick_Joypad(Settings.Key_P2_JoystickIndex, 1);
                    Console.WriteLine("->Using joystick for player 2.");
                }
                else
                {
                    // USE keyboard ?
                    joy2 = new SDL_Keyboard_Joyad(1);
                    Console.WriteLine("->Joystick is not connected; using keyboard for player 2.");
                }
            }
            #endregion
            #region Player 3
            if (!Settings.Key_P3_UseJoystick)
            {
                joy3 = new SDL_Keyboard_Joyad(2);
                Console.WriteLine("->Using keyboard for player 3.");
            }
            else
            {
                if (Joysticks.IsValidJoystickNumber(Settings.Key_P3_JoystickIndex))
                {
                    joy3 = new SDL_Joystick_Joypad(Settings.Key_P3_JoystickIndex, 2);
                    Console.WriteLine("->Using joystick for player 3.");
                }
                else
                {
                    // USE keyboard ?
                    joy3 = new SDL_Keyboard_Joyad(2);
                    Console.WriteLine("->Joystick is not connected; using keyboard for player 3.");
                }
            }
            #endregion
            #region Player 4
            if (!Settings.Key_P4_UseJoystick)
            {
                joy4 = new SDL_Keyboard_Joyad(3);
                Console.WriteLine("->Using keyboard for player 4.");
            }
            else
            {
                if (Joysticks.IsValidJoystickNumber(Settings.Key_P4_JoystickIndex))
                {
                    joy4 = new SDL_Joystick_Joypad(Settings.Key_P4_JoystickIndex, 3);
                    Console.WriteLine("->Using joystick for player 4.");
                }
                else
                {
                    // USE keyboard ?
                    joy4 = new SDL_Keyboard_Joyad(3);
                    Console.WriteLine("->Joystick is not connected; using keyboard for player 4.");
                }
            }
            #endregion
            #region VS Unisystem
            if (!Settings.Key_VS_UseJoystick)
            {
                vsUni = new SDL_Keyboard_VSUnisystem();
                Console.WriteLine("->Using keyboard for VS Unisystem PID.");
            }
            else
            {
                if (Joysticks.IsValidJoystickNumber(Settings.Key_VS_JoystickIndex))
                {
                    vsUni = new SDL_Joystick_VSUnisystem(Settings.Key_VS_JoystickIndex);
                    Console.WriteLine("->Using joystick for VS Unisystem PID.");
                }
                else
                {
                    // USE keyboard ?
                    vsUni = new SDL_Keyboard_VSUnisystem();
                    Console.WriteLine("->Joystick is not connected; using keyboard for VS Unisystem PID.");
                }
            }
            #endregion
            NesEmu.SetupJoypads(joy1, joy2, joy3, joy4);
            NesEmu.SetupVSUnisystemDIP(vsUni);
            NesEmu.IsZapperConnected = Settings.Key_ConnectZapper;
            NesEmu.IsFourPlayers     = Settings.Key_Connect4Players;
            if (NesEmu.IsZapperConnected)
            {
                Console.WriteLine("->ZAPPER IS CONNECTED !!");
                NesEmu.SetupZapper(new SDLZapper());
                SdlDotNet.Input.Mouse.ShowCursor = true;
            }
            if (NesEmu.IsFourPlayers)
            {
                Console.WriteLine("->4 PLAYERS IS CONNECTED !!");
            }
            Console.WriteLine(">Input settings initialized successfully.");
        }