예제 #1
0
        public void Load(IModuleContext context)
        {
            var settingsManager = context.ServiceLocator.GetInstance<ISettingsManager>();

            var keybindings = new List<Wren.Core.Input.KeyboardBindingSettings.KeyBinding>();
            keybindings.Add(new KeyboardBindingSettings.KeyBinding() { ButtonId = 100, Key = "Escape" });
            keybindings.Add(new KeyboardBindingSettings.KeyBinding() { ButtonId = 101, Key = "M" });
            var defaultKeybindings = new KeyboardBindingSettings() { Bindings = keybindings.ToArray() };
            settingsManager.ApplySettings(defaultKeybindings, new EmulationContext(Game.Empty, new EmulatedSystem("WrenGame")), SettingsScope.EmulatedSystem);
        }
예제 #2
0
        private void SetDefaults(ISettingsManager settingsManager)
        {
            var keybindings = new List<Wren.Core.Input.KeyboardBindingSettings.KeyBinding>();
            keybindings.Add(new KeyboardBindingSettings.KeyBinding() { ButtonId = 0, Key = "UpArrow" });
            keybindings.Add(new KeyboardBindingSettings.KeyBinding() { ButtonId = 1, Key = "DownArrow" });
            keybindings.Add(new KeyboardBindingSettings.KeyBinding() { ButtonId = 2, Key = "LeftArrow" });
            keybindings.Add(new KeyboardBindingSettings.KeyBinding() { ButtonId = 3, Key = "RightArrow" });
            keybindings.Add(new KeyboardBindingSettings.KeyBinding() { ButtonId = 4, Key = "X" });
            keybindings.Add(new KeyboardBindingSettings.KeyBinding() { ButtonId = 5, Key = "Z" });
            keybindings.Add(new KeyboardBindingSettings.KeyBinding() { ButtonId = 6, Key = "C" });
            keybindings.Add(new KeyboardBindingSettings.KeyBinding() { ButtonId = 7, Key = "V" });
            var defaultKeybindings = new KeyboardBindingSettings() { Bindings = keybindings.ToArray() };
            settingsManager.ApplySettings(defaultKeybindings);

            var gamepadbindings1 = new List<Wren.Core.Input.GamepadBindingSettings.GamepadBinding>();
            gamepadbindings1.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 0, Button = -1 });
            gamepadbindings1.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 1, Button = -2 });
            gamepadbindings1.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 2, Button = -3 });
            gamepadbindings1.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 3, Button = -4 });
            gamepadbindings1.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 4, Button = 1 });
            gamepadbindings1.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 5, Button = 0 });
            gamepadbindings1.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 6, Button = 6 });
            gamepadbindings1.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 7, Button = 7 });

            var gamepadbindings2 = new List<Wren.Core.Input.GamepadBindingSettings.GamepadBinding>();
            gamepadbindings2.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 8, Button = -1 });
            gamepadbindings2.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 9, Button = -2 });
            gamepadbindings2.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 10, Button = -3 });
            gamepadbindings2.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 11, Button = -4 });
            gamepadbindings2.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 12, Button = 1 });
            gamepadbindings2.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 13, Button = 0 });
            gamepadbindings2.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 14, Button = 6 });
            gamepadbindings2.Add(new Wren.Core.Input.GamepadBindingSettings.GamepadBinding() { ButtonId = 15, Button = 7 });

            var defaultGamepadBindings = new GamepadBindingSettings() { Gamepad1Bindings = gamepadbindings1.ToArray(), Gamepad2Bindings = gamepadbindings2.ToArray() };
            settingsManager.ApplySettings(defaultGamepadBindings);
        }
예제 #3
0
        public void Save()
        {
            UpdateBindingsFromStrings();

            var keyboardSettings = new KeyboardBindingSettings() { Bindings = _newKeyboardBindings.ToArray() };
            var gamepadSettings = new GamepadBindingSettings() { Gamepad1Bindings = _newGamepad1BindingSettings.ToArray(), Gamepad2Bindings = _newGamepad2BindingSettings.ToArray() };

            var context = new EmulationContext(new Game(String.Empty, String.Empty), new EmulatedSystem("SMS"));
            _settingsManager.ApplySettings(keyboardSettings, context, SettingsScope.EmulatedSystem);
        }
예제 #4
0
        public SmsInputViewModel(ISettingsManager settingsManager, InputManager inputManager)
        {
            _settingsManager = settingsManager;
            _keyboardSettings = _settingsManager.LoadSettings<KeyboardBindingSettings>(new EmulationContext(new Game(String.Empty, String.Empty), new EmulatedSystem("SMS")));
            _gamepadSettings = _settingsManager.LoadSettings<GamepadBindingSettings>(new EmulationContext(new Game(String.Empty, String.Empty), new EmulatedSystem("SMS")));
            _newKeyboardBindings = new List<KeyboardBindingSettings.KeyBinding>(_keyboardSettings.Bindings);
            _newGamepad1BindingSettings = new List<GamepadBindingSettings.GamepadBinding>(_gamepadSettings.Gamepad1Bindings);
            _newGamepad2BindingSettings = new List<GamepadBindingSettings.GamepadBinding>(_gamepadSettings.Gamepad2Bindings);

            UpdateStrings();
        }
예제 #5
0
 public KeyboardInputSource(Keyboard keyboard, KeyboardBindingSettings bindings)
 {
     _keyboard = keyboard;
     _bindings = bindings;
 }