Ejemplo n.º 1
0
 private void _initVjoyDevices()
 {
     for (int deviceNumber = 0; deviceNumber < _config.VjoyDevices.Count(); deviceNumber++)
     {
         JToken      vJoyDevice  = _config.VjoyDevices[deviceNumber];
         Vcontroller vcontroller = ControllerFactory.GetvJoyController((uint)vJoyDevice["systemId"]);
         _activeVcontrollers.Add(vcontroller);
     }
 }
Ejemplo n.º 2
0
        private void _initAxisMappings()
        {
            foreach (JToken mapping in _config.MappingsAxis)
            {
                var requestedPhysicalDevice = (uint)mapping["physicalDevice"]["id"];
                var physicalDevice          = ControllerFactory.GetPhysicalController(_config.GetPhysicalDeviceGuidFromId(requestedPhysicalDevice));
                var requestedVjoyDevice     = (uint)mapping["vJoyDevice"]["id"];
                var vJoyDevice = ControllerFactory.GetvJoyController(_config.GetVjoyDeviceSystemIdFromId(requestedVjoyDevice));

                AxisMapping newAxisMapping = new AxisMapping(
                    physicalAxis: (string)mapping["physicalDevice"]["axis"],
                    vjoyAxis: (string)mapping["vJoyDevice"]["axis"],
                    controller: physicalDevice,
                    vcontroller: vJoyDevice
                    );
                _controllerMaps.Add(newAxisMapping);
            }
        }
Ejemplo n.º 3
0
        private void _initSimpleButtonMappings() // Todo: abstract these _init mapping methods so we're not repeating so much stuff...
        {
            foreach (JToken mapping in _config.MappingsSimpleButton)
            {
                var requestedPhysicalDevice = (uint)mapping["physicalDevice"]["id"];
                var physicalDeviceGuid      = _config.GetPhysicalDeviceGuidFromId(requestedPhysicalDevice);
                var requestedVjoyDevice     = (uint)mapping["vJoyDevice"]["id"];
                var vJoyDeviceSystemId      = _config.GetVjoyDeviceSystemIdFromId(requestedVjoyDevice);

                SimpleButtonMapping newSimpleButtonMapping = new SimpleButtonMapping(
                    controllerPressedButtons: mapping["physicalDevice"]["buttons"].ToObject <string[]>(),
                    controllerNotPressedButtons: mapping["physicalDevice"]["notButtons"] != null ? mapping["physicalDevice"]["notButtons"].ToObject <string[]>() : new string [] {},
                    vJoyPressedButtons: mapping["vJoyDevice"]["buttons"].ToObject <string[]>(),
                    controller: ControllerFactory.GetPhysicalController(physicalDeviceGuid),
                    vcontroller: ControllerFactory.GetvJoyController(vJoyDeviceSystemId)
                    );
                _controllerMaps.Add(newSimpleButtonMapping);
            }
        }
Ejemplo n.º 4
0
        private void _initVirtualAxisMappings()
        {
            foreach (JToken mapping in _config.MappingsVirtualAxis)
            {
                var requestedPhysicalDevice = (uint)mapping["physicalDevice"]["id"];
                var physicalDevice          = ControllerFactory.GetPhysicalController(_config.GetPhysicalDeviceGuidFromId(requestedPhysicalDevice));
                var requestedVjoyDevice     = (uint)mapping["vJoyDevice"]["id"];
                var vJoyDevice = ControllerFactory.GetvJoyController(_config.GetVjoyDeviceSystemIdFromId(requestedVjoyDevice));

                VirtualAxisMapping newVirtualAxisMapping = new VirtualAxisMapping(
                    increaseButtons: mapping["physicalDevice"]["increaseButtons"].ToObject <string[]>(),
                    increaseNotButtons: mapping["physicalDevice"]["increaseNotButtons"] != null ? mapping["physicalDevice"]["increaseNotButtons"].ToObject <string[]>() : new string[] {},
                    decreaseButtons: mapping["physicalDevice"]["decreaseButtons"].ToObject <string[]>(),
                    decreaseNotButtons: mapping["physicalDevice"]["decreaseNotButtons"] != null ? mapping["physicalDevice"]["decreaseNotButtons"].ToObject <string[]>() : new string[] {},
                    controller: physicalDevice,
                    vcontroller: vJoyDevice,
                    ratePerSecond: (int)mapping["settings"]["ratePerSecond"],
                    virtualAxis: vJoyDevice.AxesByName[(string)mapping["vJoyDevice"]["axis"]]
                    );
                _controllerMaps.Add(newVirtualAxisMapping);
            }
        }