public static void Process(States value, Controller controller)
 {
     if (Reactive.ButtonPressedOrReleased(value, FuelLeft))
     {
         controller.CallActivateButton(vJoyTypes.Virtual, MappedButtons.LightsToggle, 200);
     }
 }
示例#2
0
        public static void ProcessNorm(States value, Controller controller)
        {
            // Camera Quit
            if (Reactive.ButtonReleased(value, (uint)BBI32Button.Button1))
            {
                // Quit Fixed Camera
                controller.CallActivateButton(vJoyTypes.Virtual, MappedButtons.CameraEnabled, 150);
            }
            if (Reactive.ButtonReleased(value, (uint)BBI32Button.Button2))
            {
                // Quit Free Camera
                QuitFreeCamera(controller);
            }

            // Orbit Lines Toggle On/Off
            if (Reactive.ButtonPressed(value, (uint)BBI32Button.Button7))
            {
                // Orbit Lines Toggle
                controller.CallActivateButton(vJoyTypes.Virtual, MappedButtons.OrbitLinesToggle, 150);

                controller.SharedState.OrbitLines = !controller.SharedState.OrbitLines;
                controller.Logger.LogDebug($"OrbitLines: {controller.SharedState.OrbitLines}");
            }

            // FFS Scan 180 / Rotation Lock
            if (Reactive.ButtonPressedOrReleased(value, (uint)BBI32Button.Button8))
            {
                // Rotation Lock Toggle
                controller.CallActivateButton(vJoyTypes.Virtual, MappedButtons.LockRotationToggle, 150);
            }

            // Cockpit HUD Toggle On/Off
            if (Reactive.ButtonPressed(value, (uint)BBI32Button.Button9))
            {
                // CRTL+ALT+G
                Task.Run(async() => await controller.SendKeyCombo(new byte[] { 0x80, 0x82 }, 0x47).ConfigureAwait(false));

                controller.Logger.LogDebug("Toggle HeadsUpDisplay");
            }

            // UI Panel Focus  <UIFocus>
            if (Reactive.ButtonPressedOrReleased(value, (uint)BBI32Button.Button10))
            {
                // Mapped to BBI32Button10 = vJoy0  Button 30
            }
        }
        public static void Process(States value, Controller controller)
        {
            // Camera On/Off
            if (Reactive.ButtonPressedOrReleased(value, button22))
            {
                controller.CallActivateButton(vJoyTypes.Virtual, MappedButtons.CameraDisabled, 150);
            }

            // Momentary Camera On/Off
            // Camera turns on so we can switch views quickly
            if (Reactive.ButtonPressed(value, button15))
            {
                // Start Camera
                controller.CallActivateButton(vJoyTypes.Virtual, MappedButtons.CameraEnabled, 150);
            }
            else if (Reactive.ButtonReleased(value, button15))
            {
                // Quit Camera
                controller.CallActivateButton(vJoyTypes.Virtual, MappedButtons.CameraDisabled, 150);
            }
        }
示例#4
0
        public static void ProcessFree(States value, Controller controller)
        {
            // Free Camera On
            if (Reactive.ButtonPressedOrReleased(value, (uint)BBI32Button.Button2))
            {
                // Start Free Camera without waiting
                StartFreeCamera(controller);
            }

            if (Reactive.ButtonPressedOrReleased(value, (uint)BBI32Button.Button7))
            {
            }

            // Rotation Lock Toggle
            if (Reactive.ButtonPressedOrReleased(value, (uint)BBI32Button.Button8))
            {
                controller.CallActivateButton(vJoyTypes.Virtual, MappedButtons.LockRotationToggle, 150);
            }

            // Camera HUD Toggle On/Off
            if (Reactive.ButtonPressed(value, (uint)BBI32Button.Button9))
            {
                // J Key
                Task.Run(async() => await controller.SendKeyCombo(new byte[] { }, 0x4A).ConfigureAwait(false));
            }

            // World Lock Toggle
            if (Reactive.ButtonPressedOrReleased(value, (uint)BBI32Button.Button10))
            {
                controller.CallActivateButton(vJoyTypes.Virtual, MappedButtons.LockToWorldToggle, 150);
            }

            // Ship or Camera Control
            if (Reactive.ButtonPressed(value, (uint)BBI32Button.Button11))
            {
                controller.CallActivateButton(vJoyTypes.Virtual, MappedButtons.LockToVehicalToggle, 150);
            }
        }