summaryrefslogtreecommitdiff
path: root/Thronefall_v1.0/Thronefall/Rewired
diff options
context:
space:
mode:
authorchai <215380520@qq.com>2024-05-20 22:36:58 +0800
committerchai <215380520@qq.com>2024-05-20 22:36:58 +0800
commita22c505984697881f5f911a165ee022087b69e09 (patch)
treed3c030aef1ae9b8a01c889dd2902bb1e3324e72b /Thronefall_v1.0/Thronefall/Rewired
parent4a4cc82d069b26bc4d4532e73860f86b211ca239 (diff)
*renameHEADmaster
Diffstat (limited to 'Thronefall_v1.0/Thronefall/Rewired')
-rw-r--r--Thronefall_v1.0/Thronefall/Rewired/FlightPedalsTemplate.cs25
-rw-r--r--Thronefall_v1.0/Thronefall/Rewired/FlightYokeTemplate.cs265
-rw-r--r--Thronefall_v1.0/Thronefall/Rewired/GamepadTemplate.cs149
-rw-r--r--Thronefall_v1.0/Thronefall/Rewired/HOTASTemplate.cs525
-rw-r--r--Thronefall_v1.0/Thronefall/Rewired/IFlightPedalsTemplate.cs10
-rw-r--r--Thronefall_v1.0/Thronefall/Rewired/IFlightYokeTemplate.cs102
-rw-r--r--Thronefall_v1.0/Thronefall/Rewired/IGamepadTemplate.cs62
-rw-r--r--Thronefall_v1.0/Thronefall/Rewired/IHOTASTemplate.cs180
-rw-r--r--Thronefall_v1.0/Thronefall/Rewired/IRacingWheelTemplate.cs88
-rw-r--r--Thronefall_v1.0/Thronefall/Rewired/ISixDofControllerTemplate.cs86
-rw-r--r--Thronefall_v1.0/Thronefall/Rewired/InputManager.cs81
-rw-r--r--Thronefall_v1.0/Thronefall/Rewired/RacingWheelTemplate.cs189
-rw-r--r--Thronefall_v1.0/Thronefall/Rewired/SixDofControllerTemplate.cs229
13 files changed, 1991 insertions, 0 deletions
diff --git a/Thronefall_v1.0/Thronefall/Rewired/FlightPedalsTemplate.cs b/Thronefall_v1.0/Thronefall/Rewired/FlightPedalsTemplate.cs
new file mode 100644
index 0000000..29a18b5
--- /dev/null
+++ b/Thronefall_v1.0/Thronefall/Rewired/FlightPedalsTemplate.cs
@@ -0,0 +1,25 @@
+using System;
+
+namespace Rewired;
+
+public sealed class FlightPedalsTemplate : ControllerTemplate, IFlightPedalsTemplate, IControllerTemplate
+{
+ public static readonly Guid typeGuid = new Guid("f6fe76f8-be2a-4db2-b853-9e3652075913");
+
+ public const int elementId_leftPedal = 0;
+
+ public const int elementId_rightPedal = 1;
+
+ public const int elementId_slide = 2;
+
+ IControllerTemplateAxis IFlightPedalsTemplate.leftPedal => GetElement<IControllerTemplateAxis>(0);
+
+ IControllerTemplateAxis IFlightPedalsTemplate.rightPedal => GetElement<IControllerTemplateAxis>(1);
+
+ IControllerTemplateAxis IFlightPedalsTemplate.slide => GetElement<IControllerTemplateAxis>(2);
+
+ public FlightPedalsTemplate(object payload)
+ : base(payload)
+ {
+ }
+}
diff --git a/Thronefall_v1.0/Thronefall/Rewired/FlightYokeTemplate.cs b/Thronefall_v1.0/Thronefall/Rewired/FlightYokeTemplate.cs
new file mode 100644
index 0000000..818f761
--- /dev/null
+++ b/Thronefall_v1.0/Thronefall/Rewired/FlightYokeTemplate.cs
@@ -0,0 +1,265 @@
+using System;
+
+namespace Rewired;
+
+public sealed class FlightYokeTemplate : ControllerTemplate, IFlightYokeTemplate, IControllerTemplate
+{
+ public static readonly Guid typeGuid = new Guid("f311fa16-0ccc-41c0-ac4b-50f7100bb8ff");
+
+ public const int elementId_rotateYoke = 0;
+
+ public const int elementId_yokeZ = 1;
+
+ public const int elementId_leftPaddle = 59;
+
+ public const int elementId_rightPaddle = 60;
+
+ public const int elementId_lever1Axis = 2;
+
+ public const int elementId_lever1MinDetent = 64;
+
+ public const int elementId_lever2Axis = 3;
+
+ public const int elementId_lever2MinDetent = 65;
+
+ public const int elementId_lever3Axis = 4;
+
+ public const int elementId_lever3MinDetent = 66;
+
+ public const int elementId_lever4Axis = 5;
+
+ public const int elementId_lever4MinDetent = 67;
+
+ public const int elementId_lever5Axis = 6;
+
+ public const int elementId_lever5MinDetent = 68;
+
+ public const int elementId_leftGripButton1 = 7;
+
+ public const int elementId_leftGripButton2 = 8;
+
+ public const int elementId_leftGripButton3 = 9;
+
+ public const int elementId_leftGripButton4 = 10;
+
+ public const int elementId_leftGripButton5 = 11;
+
+ public const int elementId_leftGripButton6 = 12;
+
+ public const int elementId_rightGripButton1 = 13;
+
+ public const int elementId_rightGripButton2 = 14;
+
+ public const int elementId_rightGripButton3 = 15;
+
+ public const int elementId_rightGripButton4 = 16;
+
+ public const int elementId_rightGripButton5 = 17;
+
+ public const int elementId_rightGripButton6 = 18;
+
+ public const int elementId_centerButton1 = 19;
+
+ public const int elementId_centerButton2 = 20;
+
+ public const int elementId_centerButton3 = 21;
+
+ public const int elementId_centerButton4 = 22;
+
+ public const int elementId_centerButton5 = 23;
+
+ public const int elementId_centerButton6 = 24;
+
+ public const int elementId_centerButton7 = 25;
+
+ public const int elementId_centerButton8 = 26;
+
+ public const int elementId_wheel1Up = 53;
+
+ public const int elementId_wheel1Down = 54;
+
+ public const int elementId_wheel1Press = 55;
+
+ public const int elementId_wheel2Up = 56;
+
+ public const int elementId_wheel2Down = 57;
+
+ public const int elementId_wheel2Press = 58;
+
+ public const int elementId_leftGripHatUp = 27;
+
+ public const int elementId_leftGripHatUpRight = 28;
+
+ public const int elementId_leftGripHatRight = 29;
+
+ public const int elementId_leftGripHatDownRight = 30;
+
+ public const int elementId_leftGripHatDown = 31;
+
+ public const int elementId_leftGripHatDownLeft = 32;
+
+ public const int elementId_leftGripHatLeft = 33;
+
+ public const int elementId_leftGripHatUpLeft = 34;
+
+ public const int elementId_rightGripHatUp = 35;
+
+ public const int elementId_rightGripHatUpRight = 36;
+
+ public const int elementId_rightGripHatRight = 37;
+
+ public const int elementId_rightGripHatDownRight = 38;
+
+ public const int elementId_rightGripHatDown = 39;
+
+ public const int elementId_rightGripHatDownLeft = 40;
+
+ public const int elementId_rightGripHatLeft = 41;
+
+ public const int elementId_rightGripHatUpLeft = 42;
+
+ public const int elementId_consoleButton1 = 43;
+
+ public const int elementId_consoleButton2 = 44;
+
+ public const int elementId_consoleButton3 = 45;
+
+ public const int elementId_consoleButton4 = 46;
+
+ public const int elementId_consoleButton5 = 47;
+
+ public const int elementId_consoleButton6 = 48;
+
+ public const int elementId_consoleButton7 = 49;
+
+ public const int elementId_consoleButton8 = 50;
+
+ public const int elementId_consoleButton9 = 51;
+
+ public const int elementId_consoleButton10 = 52;
+
+ public const int elementId_mode1 = 61;
+
+ public const int elementId_mode2 = 62;
+
+ public const int elementId_mode3 = 63;
+
+ public const int elementId_yoke = 69;
+
+ public const int elementId_lever1 = 70;
+
+ public const int elementId_lever2 = 71;
+
+ public const int elementId_lever3 = 72;
+
+ public const int elementId_lever4 = 73;
+
+ public const int elementId_lever5 = 74;
+
+ public const int elementId_leftGripHat = 75;
+
+ public const int elementId_rightGripHat = 76;
+
+ IControllerTemplateButton IFlightYokeTemplate.leftPaddle => GetElement<IControllerTemplateButton>(59);
+
+ IControllerTemplateButton IFlightYokeTemplate.rightPaddle => GetElement<IControllerTemplateButton>(60);
+
+ IControllerTemplateButton IFlightYokeTemplate.leftGripButton1 => GetElement<IControllerTemplateButton>(7);
+
+ IControllerTemplateButton IFlightYokeTemplate.leftGripButton2 => GetElement<IControllerTemplateButton>(8);
+
+ IControllerTemplateButton IFlightYokeTemplate.leftGripButton3 => GetElement<IControllerTemplateButton>(9);
+
+ IControllerTemplateButton IFlightYokeTemplate.leftGripButton4 => GetElement<IControllerTemplateButton>(10);
+
+ IControllerTemplateButton IFlightYokeTemplate.leftGripButton5 => GetElement<IControllerTemplateButton>(11);
+
+ IControllerTemplateButton IFlightYokeTemplate.leftGripButton6 => GetElement<IControllerTemplateButton>(12);
+
+ IControllerTemplateButton IFlightYokeTemplate.rightGripButton1 => GetElement<IControllerTemplateButton>(13);
+
+ IControllerTemplateButton IFlightYokeTemplate.rightGripButton2 => GetElement<IControllerTemplateButton>(14);
+
+ IControllerTemplateButton IFlightYokeTemplate.rightGripButton3 => GetElement<IControllerTemplateButton>(15);
+
+ IControllerTemplateButton IFlightYokeTemplate.rightGripButton4 => GetElement<IControllerTemplateButton>(16);
+
+ IControllerTemplateButton IFlightYokeTemplate.rightGripButton5 => GetElement<IControllerTemplateButton>(17);
+
+ IControllerTemplateButton IFlightYokeTemplate.rightGripButton6 => GetElement<IControllerTemplateButton>(18);
+
+ IControllerTemplateButton IFlightYokeTemplate.centerButton1 => GetElement<IControllerTemplateButton>(19);
+
+ IControllerTemplateButton IFlightYokeTemplate.centerButton2 => GetElement<IControllerTemplateButton>(20);
+
+ IControllerTemplateButton IFlightYokeTemplate.centerButton3 => GetElement<IControllerTemplateButton>(21);
+
+ IControllerTemplateButton IFlightYokeTemplate.centerButton4 => GetElement<IControllerTemplateButton>(22);
+
+ IControllerTemplateButton IFlightYokeTemplate.centerButton5 => GetElement<IControllerTemplateButton>(23);
+
+ IControllerTemplateButton IFlightYokeTemplate.centerButton6 => GetElement<IControllerTemplateButton>(24);
+
+ IControllerTemplateButton IFlightYokeTemplate.centerButton7 => GetElement<IControllerTemplateButton>(25);
+
+ IControllerTemplateButton IFlightYokeTemplate.centerButton8 => GetElement<IControllerTemplateButton>(26);
+
+ IControllerTemplateButton IFlightYokeTemplate.wheel1Up => GetElement<IControllerTemplateButton>(53);
+
+ IControllerTemplateButton IFlightYokeTemplate.wheel1Down => GetElement<IControllerTemplateButton>(54);
+
+ IControllerTemplateButton IFlightYokeTemplate.wheel1Press => GetElement<IControllerTemplateButton>(55);
+
+ IControllerTemplateButton IFlightYokeTemplate.wheel2Up => GetElement<IControllerTemplateButton>(56);
+
+ IControllerTemplateButton IFlightYokeTemplate.wheel2Down => GetElement<IControllerTemplateButton>(57);
+
+ IControllerTemplateButton IFlightYokeTemplate.wheel2Press => GetElement<IControllerTemplateButton>(58);
+
+ IControllerTemplateButton IFlightYokeTemplate.consoleButton1 => GetElement<IControllerTemplateButton>(43);
+
+ IControllerTemplateButton IFlightYokeTemplate.consoleButton2 => GetElement<IControllerTemplateButton>(44);
+
+ IControllerTemplateButton IFlightYokeTemplate.consoleButton3 => GetElement<IControllerTemplateButton>(45);
+
+ IControllerTemplateButton IFlightYokeTemplate.consoleButton4 => GetElement<IControllerTemplateButton>(46);
+
+ IControllerTemplateButton IFlightYokeTemplate.consoleButton5 => GetElement<IControllerTemplateButton>(47);
+
+ IControllerTemplateButton IFlightYokeTemplate.consoleButton6 => GetElement<IControllerTemplateButton>(48);
+
+ IControllerTemplateButton IFlightYokeTemplate.consoleButton7 => GetElement<IControllerTemplateButton>(49);
+
+ IControllerTemplateButton IFlightYokeTemplate.consoleButton8 => GetElement<IControllerTemplateButton>(50);
+
+ IControllerTemplateButton IFlightYokeTemplate.consoleButton9 => GetElement<IControllerTemplateButton>(51);
+
+ IControllerTemplateButton IFlightYokeTemplate.consoleButton10 => GetElement<IControllerTemplateButton>(52);
+
+ IControllerTemplateButton IFlightYokeTemplate.mode1 => GetElement<IControllerTemplateButton>(61);
+
+ IControllerTemplateButton IFlightYokeTemplate.mode2 => GetElement<IControllerTemplateButton>(62);
+
+ IControllerTemplateButton IFlightYokeTemplate.mode3 => GetElement<IControllerTemplateButton>(63);
+
+ IControllerTemplateYoke IFlightYokeTemplate.yoke => GetElement<IControllerTemplateYoke>(69);
+
+ IControllerTemplateThrottle IFlightYokeTemplate.lever1 => GetElement<IControllerTemplateThrottle>(70);
+
+ IControllerTemplateThrottle IFlightYokeTemplate.lever2 => GetElement<IControllerTemplateThrottle>(71);
+
+ IControllerTemplateThrottle IFlightYokeTemplate.lever3 => GetElement<IControllerTemplateThrottle>(72);
+
+ IControllerTemplateThrottle IFlightYokeTemplate.lever4 => GetElement<IControllerTemplateThrottle>(73);
+
+ IControllerTemplateThrottle IFlightYokeTemplate.lever5 => GetElement<IControllerTemplateThrottle>(74);
+
+ IControllerTemplateHat IFlightYokeTemplate.leftGripHat => GetElement<IControllerTemplateHat>(75);
+
+ IControllerTemplateHat IFlightYokeTemplate.rightGripHat => GetElement<IControllerTemplateHat>(76);
+
+ public FlightYokeTemplate(object payload)
+ : base(payload)
+ {
+ }
+}
diff --git a/Thronefall_v1.0/Thronefall/Rewired/GamepadTemplate.cs b/Thronefall_v1.0/Thronefall/Rewired/GamepadTemplate.cs
new file mode 100644
index 0000000..2db2fba
--- /dev/null
+++ b/Thronefall_v1.0/Thronefall/Rewired/GamepadTemplate.cs
@@ -0,0 +1,149 @@
+using System;
+
+namespace Rewired;
+
+public sealed class GamepadTemplate : ControllerTemplate, IGamepadTemplate, IControllerTemplate
+{
+ public static readonly Guid typeGuid = new Guid("83b427e4-086f-47f3-bb06-be266abd1ca5");
+
+ public const int elementId_leftStickX = 0;
+
+ public const int elementId_leftStickY = 1;
+
+ public const int elementId_rightStickX = 2;
+
+ public const int elementId_rightStickY = 3;
+
+ public const int elementId_actionBottomRow1 = 4;
+
+ public const int elementId_a = 4;
+
+ public const int elementId_actionBottomRow2 = 5;
+
+ public const int elementId_b = 5;
+
+ public const int elementId_actionBottomRow3 = 6;
+
+ public const int elementId_c = 6;
+
+ public const int elementId_actionTopRow1 = 7;
+
+ public const int elementId_x = 7;
+
+ public const int elementId_actionTopRow2 = 8;
+
+ public const int elementId_y = 8;
+
+ public const int elementId_actionTopRow3 = 9;
+
+ public const int elementId_z = 9;
+
+ public const int elementId_leftShoulder1 = 10;
+
+ public const int elementId_leftBumper = 10;
+
+ public const int elementId_leftShoulder2 = 11;
+
+ public const int elementId_leftTrigger = 11;
+
+ public const int elementId_rightShoulder1 = 12;
+
+ public const int elementId_rightBumper = 12;
+
+ public const int elementId_rightShoulder2 = 13;
+
+ public const int elementId_rightTrigger = 13;
+
+ public const int elementId_center1 = 14;
+
+ public const int elementId_back = 14;
+
+ public const int elementId_center2 = 15;
+
+ public const int elementId_start = 15;
+
+ public const int elementId_center3 = 16;
+
+ public const int elementId_guide = 16;
+
+ public const int elementId_leftStickButton = 17;
+
+ public const int elementId_rightStickButton = 18;
+
+ public const int elementId_dPadUp = 19;
+
+ public const int elementId_dPadRight = 20;
+
+ public const int elementId_dPadDown = 21;
+
+ public const int elementId_dPadLeft = 22;
+
+ public const int elementId_leftStick = 23;
+
+ public const int elementId_rightStick = 24;
+
+ public const int elementId_dPad = 25;
+
+ IControllerTemplateButton IGamepadTemplate.actionBottomRow1 => GetElement<IControllerTemplateButton>(4);
+
+ IControllerTemplateButton IGamepadTemplate.a => GetElement<IControllerTemplateButton>(4);
+
+ IControllerTemplateButton IGamepadTemplate.actionBottomRow2 => GetElement<IControllerTemplateButton>(5);
+
+ IControllerTemplateButton IGamepadTemplate.b => GetElement<IControllerTemplateButton>(5);
+
+ IControllerTemplateButton IGamepadTemplate.actionBottomRow3 => GetElement<IControllerTemplateButton>(6);
+
+ IControllerTemplateButton IGamepadTemplate.c => GetElement<IControllerTemplateButton>(6);
+
+ IControllerTemplateButton IGamepadTemplate.actionTopRow1 => GetElement<IControllerTemplateButton>(7);
+
+ IControllerTemplateButton IGamepadTemplate.x => GetElement<IControllerTemplateButton>(7);
+
+ IControllerTemplateButton IGamepadTemplate.actionTopRow2 => GetElement<IControllerTemplateButton>(8);
+
+ IControllerTemplateButton IGamepadTemplate.y => GetElement<IControllerTemplateButton>(8);
+
+ IControllerTemplateButton IGamepadTemplate.actionTopRow3 => GetElement<IControllerTemplateButton>(9);
+
+ IControllerTemplateButton IGamepadTemplate.z => GetElement<IControllerTemplateButton>(9);
+
+ IControllerTemplateButton IGamepadTemplate.leftShoulder1 => GetElement<IControllerTemplateButton>(10);
+
+ IControllerTemplateButton IGamepadTemplate.leftBumper => GetElement<IControllerTemplateButton>(10);
+
+ IControllerTemplateAxis IGamepadTemplate.leftShoulder2 => GetElement<IControllerTemplateAxis>(11);
+
+ IControllerTemplateAxis IGamepadTemplate.leftTrigger => GetElement<IControllerTemplateAxis>(11);
+
+ IControllerTemplateButton IGamepadTemplate.rightShoulder1 => GetElement<IControllerTemplateButton>(12);
+
+ IControllerTemplateButton IGamepadTemplate.rightBumper => GetElement<IControllerTemplateButton>(12);
+
+ IControllerTemplateAxis IGamepadTemplate.rightShoulder2 => GetElement<IControllerTemplateAxis>(13);
+
+ IControllerTemplateAxis IGamepadTemplate.rightTrigger => GetElement<IControllerTemplateAxis>(13);
+
+ IControllerTemplateButton IGamepadTemplate.center1 => GetElement<IControllerTemplateButton>(14);
+
+ IControllerTemplateButton IGamepadTemplate.back => GetElement<IControllerTemplateButton>(14);
+
+ IControllerTemplateButton IGamepadTemplate.center2 => GetElement<IControllerTemplateButton>(15);
+
+ IControllerTemplateButton IGamepadTemplate.start => GetElement<IControllerTemplateButton>(15);
+
+ IControllerTemplateButton IGamepadTemplate.center3 => GetElement<IControllerTemplateButton>(16);
+
+ IControllerTemplateButton IGamepadTemplate.guide => GetElement<IControllerTemplateButton>(16);
+
+ IControllerTemplateThumbStick IGamepadTemplate.leftStick => GetElement<IControllerTemplateThumbStick>(23);
+
+ IControllerTemplateThumbStick IGamepadTemplate.rightStick => GetElement<IControllerTemplateThumbStick>(24);
+
+ IControllerTemplateDPad IGamepadTemplate.dPad => GetElement<IControllerTemplateDPad>(25);
+
+ public GamepadTemplate(object payload)
+ : base(payload)
+ {
+ }
+}
diff --git a/Thronefall_v1.0/Thronefall/Rewired/HOTASTemplate.cs b/Thronefall_v1.0/Thronefall/Rewired/HOTASTemplate.cs
new file mode 100644
index 0000000..9324f5c
--- /dev/null
+++ b/Thronefall_v1.0/Thronefall/Rewired/HOTASTemplate.cs
@@ -0,0 +1,525 @@
+using System;
+
+namespace Rewired;
+
+public sealed class HOTASTemplate : ControllerTemplate, IHOTASTemplate, IControllerTemplate
+{
+ public static readonly Guid typeGuid = new Guid("061a00cf-d8c2-4f8d-8cb5-a15a010bc53e");
+
+ public const int elementId_stickX = 0;
+
+ public const int elementId_stickY = 1;
+
+ public const int elementId_stickRotate = 2;
+
+ public const int elementId_stickMiniStick1X = 78;
+
+ public const int elementId_stickMiniStick1Y = 79;
+
+ public const int elementId_stickMiniStick1Press = 80;
+
+ public const int elementId_stickMiniStick2X = 81;
+
+ public const int elementId_stickMiniStick2Y = 82;
+
+ public const int elementId_stickMiniStick2Press = 83;
+
+ public const int elementId_stickTrigger = 3;
+
+ public const int elementId_stickTriggerStage2 = 4;
+
+ public const int elementId_stickPinkyButton = 5;
+
+ public const int elementId_stickPinkyTrigger = 154;
+
+ public const int elementId_stickButton1 = 6;
+
+ public const int elementId_stickButton2 = 7;
+
+ public const int elementId_stickButton3 = 8;
+
+ public const int elementId_stickButton4 = 9;
+
+ public const int elementId_stickButton5 = 10;
+
+ public const int elementId_stickButton6 = 11;
+
+ public const int elementId_stickButton7 = 12;
+
+ public const int elementId_stickButton8 = 13;
+
+ public const int elementId_stickButton9 = 14;
+
+ public const int elementId_stickButton10 = 15;
+
+ public const int elementId_stickBaseButton1 = 18;
+
+ public const int elementId_stickBaseButton2 = 19;
+
+ public const int elementId_stickBaseButton3 = 20;
+
+ public const int elementId_stickBaseButton4 = 21;
+
+ public const int elementId_stickBaseButton5 = 22;
+
+ public const int elementId_stickBaseButton6 = 23;
+
+ public const int elementId_stickBaseButton7 = 24;
+
+ public const int elementId_stickBaseButton8 = 25;
+
+ public const int elementId_stickBaseButton9 = 26;
+
+ public const int elementId_stickBaseButton10 = 27;
+
+ public const int elementId_stickBaseButton11 = 161;
+
+ public const int elementId_stickBaseButton12 = 162;
+
+ public const int elementId_stickHat1Up = 28;
+
+ public const int elementId_stickHat1UpRight = 29;
+
+ public const int elementId_stickHat1Right = 30;
+
+ public const int elementId_stickHat1DownRight = 31;
+
+ public const int elementId_stickHat1Down = 32;
+
+ public const int elementId_stickHat1DownLeft = 33;
+
+ public const int elementId_stickHat1Left = 34;
+
+ public const int elementId_stickHat1Up_Left = 35;
+
+ public const int elementId_stickHat2Up = 36;
+
+ public const int elementId_stickHat2Up_right = 37;
+
+ public const int elementId_stickHat2Right = 38;
+
+ public const int elementId_stickHat2Down_Right = 39;
+
+ public const int elementId_stickHat2Down = 40;
+
+ public const int elementId_stickHat2Down_Left = 41;
+
+ public const int elementId_stickHat2Left = 42;
+
+ public const int elementId_stickHat2Up_Left = 43;
+
+ public const int elementId_stickHat3Up = 84;
+
+ public const int elementId_stickHat3Up_Right = 85;
+
+ public const int elementId_stickHat3Right = 86;
+
+ public const int elementId_stickHat3Down_Right = 87;
+
+ public const int elementId_stickHat3Down = 88;
+
+ public const int elementId_stickHat3Down_Left = 89;
+
+ public const int elementId_stickHat3Left = 90;
+
+ public const int elementId_stickHat3Up_Left = 91;
+
+ public const int elementId_stickHat4Up = 92;
+
+ public const int elementId_stickHat4Up_Right = 93;
+
+ public const int elementId_stickHat4Right = 94;
+
+ public const int elementId_stickHat4Down_Right = 95;
+
+ public const int elementId_stickHat4Down = 96;
+
+ public const int elementId_stickHat4Down_Left = 97;
+
+ public const int elementId_stickHat4Left = 98;
+
+ public const int elementId_stickHat4Up_Left = 99;
+
+ public const int elementId_mode1 = 44;
+
+ public const int elementId_mode2 = 45;
+
+ public const int elementId_mode3 = 46;
+
+ public const int elementId_throttle1Axis = 49;
+
+ public const int elementId_throttle2Axis = 155;
+
+ public const int elementId_throttle1MinDetent = 166;
+
+ public const int elementId_throttle2MinDetent = 167;
+
+ public const int elementId_throttleButton1 = 50;
+
+ public const int elementId_throttleButton2 = 51;
+
+ public const int elementId_throttleButton3 = 52;
+
+ public const int elementId_throttleButton4 = 53;
+
+ public const int elementId_throttleButton5 = 54;
+
+ public const int elementId_throttleButton6 = 55;
+
+ public const int elementId_throttleButton7 = 56;
+
+ public const int elementId_throttleButton8 = 57;
+
+ public const int elementId_throttleButton9 = 58;
+
+ public const int elementId_throttleButton10 = 59;
+
+ public const int elementId_throttleBaseButton1 = 60;
+
+ public const int elementId_throttleBaseButton2 = 61;
+
+ public const int elementId_throttleBaseButton3 = 62;
+
+ public const int elementId_throttleBaseButton4 = 63;
+
+ public const int elementId_throttleBaseButton5 = 64;
+
+ public const int elementId_throttleBaseButton6 = 65;
+
+ public const int elementId_throttleBaseButton7 = 66;
+
+ public const int elementId_throttleBaseButton8 = 67;
+
+ public const int elementId_throttleBaseButton9 = 68;
+
+ public const int elementId_throttleBaseButton10 = 69;
+
+ public const int elementId_throttleBaseButton11 = 132;
+
+ public const int elementId_throttleBaseButton12 = 133;
+
+ public const int elementId_throttleBaseButton13 = 134;
+
+ public const int elementId_throttleBaseButton14 = 135;
+
+ public const int elementId_throttleBaseButton15 = 136;
+
+ public const int elementId_throttleSlider1 = 70;
+
+ public const int elementId_throttleSlider2 = 71;
+
+ public const int elementId_throttleSlider3 = 72;
+
+ public const int elementId_throttleSlider4 = 73;
+
+ public const int elementId_throttleDial1 = 74;
+
+ public const int elementId_throttleDial2 = 142;
+
+ public const int elementId_throttleDial3 = 143;
+
+ public const int elementId_throttleDial4 = 144;
+
+ public const int elementId_throttleMiniStickX = 75;
+
+ public const int elementId_throttleMiniStickY = 76;
+
+ public const int elementId_throttleMiniStickPress = 77;
+
+ public const int elementId_throttleWheel1Forward = 145;
+
+ public const int elementId_throttleWheel1Back = 146;
+
+ public const int elementId_throttleWheel1Press = 147;
+
+ public const int elementId_throttleWheel2Forward = 148;
+
+ public const int elementId_throttleWheel2Back = 149;
+
+ public const int elementId_throttleWheel2Press = 150;
+
+ public const int elementId_throttleWheel3Forward = 151;
+
+ public const int elementId_throttleWheel3Back = 152;
+
+ public const int elementId_throttleWheel3Press = 153;
+
+ public const int elementId_throttleHat1Up = 100;
+
+ public const int elementId_throttleHat1Up_Right = 101;
+
+ public const int elementId_throttleHat1Right = 102;
+
+ public const int elementId_throttleHat1Down_Right = 103;
+
+ public const int elementId_throttleHat1Down = 104;
+
+ public const int elementId_throttleHat1Down_Left = 105;
+
+ public const int elementId_throttleHat1Left = 106;
+
+ public const int elementId_throttleHat1Up_Left = 107;
+
+ public const int elementId_throttleHat2Up = 108;
+
+ public const int elementId_throttleHat2Up_Right = 109;
+
+ public const int elementId_throttleHat2Right = 110;
+
+ public const int elementId_throttleHat2Down_Right = 111;
+
+ public const int elementId_throttleHat2Down = 112;
+
+ public const int elementId_throttleHat2Down_Left = 113;
+
+ public const int elementId_throttleHat2Left = 114;
+
+ public const int elementId_throttleHat2Up_Left = 115;
+
+ public const int elementId_throttleHat3Up = 116;
+
+ public const int elementId_throttleHat3Up_Right = 117;
+
+ public const int elementId_throttleHat3Right = 118;
+
+ public const int elementId_throttleHat3Down_Right = 119;
+
+ public const int elementId_throttleHat3Down = 120;
+
+ public const int elementId_throttleHat3Down_Left = 121;
+
+ public const int elementId_throttleHat3Left = 122;
+
+ public const int elementId_throttleHat3Up_Left = 123;
+
+ public const int elementId_throttleHat4Up = 124;
+
+ public const int elementId_throttleHat4Up_Right = 125;
+
+ public const int elementId_throttleHat4Right = 126;
+
+ public const int elementId_throttleHat4Down_Right = 127;
+
+ public const int elementId_throttleHat4Down = 128;
+
+ public const int elementId_throttleHat4Down_Left = 129;
+
+ public const int elementId_throttleHat4Left = 130;
+
+ public const int elementId_throttleHat4Up_Left = 131;
+
+ public const int elementId_leftPedal = 168;
+
+ public const int elementId_rightPedal = 169;
+
+ public const int elementId_slidePedals = 170;
+
+ public const int elementId_stick = 171;
+
+ public const int elementId_stickMiniStick1 = 172;
+
+ public const int elementId_stickMiniStick2 = 173;
+
+ public const int elementId_stickHat1 = 174;
+
+ public const int elementId_stickHat2 = 175;
+
+ public const int elementId_stickHat3 = 176;
+
+ public const int elementId_stickHat4 = 177;
+
+ public const int elementId_throttle1 = 178;
+
+ public const int elementId_throttle2 = 179;
+
+ public const int elementId_throttleMiniStick = 180;
+
+ public const int elementId_throttleHat1 = 181;
+
+ public const int elementId_throttleHat2 = 182;
+
+ public const int elementId_throttleHat3 = 183;
+
+ public const int elementId_throttleHat4 = 184;
+
+ IControllerTemplateButton IHOTASTemplate.stickTrigger => GetElement<IControllerTemplateButton>(3);
+
+ IControllerTemplateButton IHOTASTemplate.stickTriggerStage2 => GetElement<IControllerTemplateButton>(4);
+
+ IControllerTemplateButton IHOTASTemplate.stickPinkyButton => GetElement<IControllerTemplateButton>(5);
+
+ IControllerTemplateButton IHOTASTemplate.stickPinkyTrigger => GetElement<IControllerTemplateButton>(154);
+
+ IControllerTemplateButton IHOTASTemplate.stickButton1 => GetElement<IControllerTemplateButton>(6);
+
+ IControllerTemplateButton IHOTASTemplate.stickButton2 => GetElement<IControllerTemplateButton>(7);
+
+ IControllerTemplateButton IHOTASTemplate.stickButton3 => GetElement<IControllerTemplateButton>(8);
+
+ IControllerTemplateButton IHOTASTemplate.stickButton4 => GetElement<IControllerTemplateButton>(9);
+
+ IControllerTemplateButton IHOTASTemplate.stickButton5 => GetElement<IControllerTemplateButton>(10);
+
+ IControllerTemplateButton IHOTASTemplate.stickButton6 => GetElement<IControllerTemplateButton>(11);
+
+ IControllerTemplateButton IHOTASTemplate.stickButton7 => GetElement<IControllerTemplateButton>(12);
+
+ IControllerTemplateButton IHOTASTemplate.stickButton8 => GetElement<IControllerTemplateButton>(13);
+
+ IControllerTemplateButton IHOTASTemplate.stickButton9 => GetElement<IControllerTemplateButton>(14);
+
+ IControllerTemplateButton IHOTASTemplate.stickButton10 => GetElement<IControllerTemplateButton>(15);
+
+ IControllerTemplateButton IHOTASTemplate.stickBaseButton1 => GetElement<IControllerTemplateButton>(18);
+
+ IControllerTemplateButton IHOTASTemplate.stickBaseButton2 => GetElement<IControllerTemplateButton>(19);
+
+ IControllerTemplateButton IHOTASTemplate.stickBaseButton3 => GetElement<IControllerTemplateButton>(20);
+
+ IControllerTemplateButton IHOTASTemplate.stickBaseButton4 => GetElement<IControllerTemplateButton>(21);
+
+ IControllerTemplateButton IHOTASTemplate.stickBaseButton5 => GetElement<IControllerTemplateButton>(22);
+
+ IControllerTemplateButton IHOTASTemplate.stickBaseButton6 => GetElement<IControllerTemplateButton>(23);
+
+ IControllerTemplateButton IHOTASTemplate.stickBaseButton7 => GetElement<IControllerTemplateButton>(24);
+
+ IControllerTemplateButton IHOTASTemplate.stickBaseButton8 => GetElement<IControllerTemplateButton>(25);
+
+ IControllerTemplateButton IHOTASTemplate.stickBaseButton9 => GetElement<IControllerTemplateButton>(26);
+
+ IControllerTemplateButton IHOTASTemplate.stickBaseButton10 => GetElement<IControllerTemplateButton>(27);
+
+ IControllerTemplateButton IHOTASTemplate.stickBaseButton11 => GetElement<IControllerTemplateButton>(161);
+
+ IControllerTemplateButton IHOTASTemplate.stickBaseButton12 => GetElement<IControllerTemplateButton>(162);
+
+ IControllerTemplateButton IHOTASTemplate.mode1 => GetElement<IControllerTemplateButton>(44);
+
+ IControllerTemplateButton IHOTASTemplate.mode2 => GetElement<IControllerTemplateButton>(45);
+
+ IControllerTemplateButton IHOTASTemplate.mode3 => GetElement<IControllerTemplateButton>(46);
+
+ IControllerTemplateButton IHOTASTemplate.throttleButton1 => GetElement<IControllerTemplateButton>(50);
+
+ IControllerTemplateButton IHOTASTemplate.throttleButton2 => GetElement<IControllerTemplateButton>(51);
+
+ IControllerTemplateButton IHOTASTemplate.throttleButton3 => GetElement<IControllerTemplateButton>(52);
+
+ IControllerTemplateButton IHOTASTemplate.throttleButton4 => GetElement<IControllerTemplateButton>(53);
+
+ IControllerTemplateButton IHOTASTemplate.throttleButton5 => GetElement<IControllerTemplateButton>(54);
+
+ IControllerTemplateButton IHOTASTemplate.throttleButton6 => GetElement<IControllerTemplateButton>(55);
+
+ IControllerTemplateButton IHOTASTemplate.throttleButton7 => GetElement<IControllerTemplateButton>(56);
+
+ IControllerTemplateButton IHOTASTemplate.throttleButton8 => GetElement<IControllerTemplateButton>(57);
+
+ IControllerTemplateButton IHOTASTemplate.throttleButton9 => GetElement<IControllerTemplateButton>(58);
+
+ IControllerTemplateButton IHOTASTemplate.throttleButton10 => GetElement<IControllerTemplateButton>(59);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton1 => GetElement<IControllerTemplateButton>(60);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton2 => GetElement<IControllerTemplateButton>(61);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton3 => GetElement<IControllerTemplateButton>(62);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton4 => GetElement<IControllerTemplateButton>(63);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton5 => GetElement<IControllerTemplateButton>(64);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton6 => GetElement<IControllerTemplateButton>(65);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton7 => GetElement<IControllerTemplateButton>(66);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton8 => GetElement<IControllerTemplateButton>(67);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton9 => GetElement<IControllerTemplateButton>(68);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton10 => GetElement<IControllerTemplateButton>(69);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton11 => GetElement<IControllerTemplateButton>(132);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton12 => GetElement<IControllerTemplateButton>(133);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton13 => GetElement<IControllerTemplateButton>(134);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton14 => GetElement<IControllerTemplateButton>(135);
+
+ IControllerTemplateButton IHOTASTemplate.throttleBaseButton15 => GetElement<IControllerTemplateButton>(136);
+
+ IControllerTemplateAxis IHOTASTemplate.throttleSlider1 => GetElement<IControllerTemplateAxis>(70);
+
+ IControllerTemplateAxis IHOTASTemplate.throttleSlider2 => GetElement<IControllerTemplateAxis>(71);
+
+ IControllerTemplateAxis IHOTASTemplate.throttleSlider3 => GetElement<IControllerTemplateAxis>(72);
+
+ IControllerTemplateAxis IHOTASTemplate.throttleSlider4 => GetElement<IControllerTemplateAxis>(73);
+
+ IControllerTemplateAxis IHOTASTemplate.throttleDial1 => GetElement<IControllerTemplateAxis>(74);
+
+ IControllerTemplateAxis IHOTASTemplate.throttleDial2 => GetElement<IControllerTemplateAxis>(142);
+
+ IControllerTemplateAxis IHOTASTemplate.throttleDial3 => GetElement<IControllerTemplateAxis>(143);
+
+ IControllerTemplateAxis IHOTASTemplate.throttleDial4 => GetElement<IControllerTemplateAxis>(144);
+
+ IControllerTemplateButton IHOTASTemplate.throttleWheel1Forward => GetElement<IControllerTemplateButton>(145);
+
+ IControllerTemplateButton IHOTASTemplate.throttleWheel1Back => GetElement<IControllerTemplateButton>(146);
+
+ IControllerTemplateButton IHOTASTemplate.throttleWheel1Press => GetElement<IControllerTemplateButton>(147);
+
+ IControllerTemplateButton IHOTASTemplate.throttleWheel2Forward => GetElement<IControllerTemplateButton>(148);
+
+ IControllerTemplateButton IHOTASTemplate.throttleWheel2Back => GetElement<IControllerTemplateButton>(149);
+
+ IControllerTemplateButton IHOTASTemplate.throttleWheel2Press => GetElement<IControllerTemplateButton>(150);
+
+ IControllerTemplateButton IHOTASTemplate.throttleWheel3Forward => GetElement<IControllerTemplateButton>(151);
+
+ IControllerTemplateButton IHOTASTemplate.throttleWheel3Back => GetElement<IControllerTemplateButton>(152);
+
+ IControllerTemplateButton IHOTASTemplate.throttleWheel3Press => GetElement<IControllerTemplateButton>(153);
+
+ IControllerTemplateAxis IHOTASTemplate.leftPedal => GetElement<IControllerTemplateAxis>(168);
+
+ IControllerTemplateAxis IHOTASTemplate.rightPedal => GetElement<IControllerTemplateAxis>(169);
+
+ IControllerTemplateAxis IHOTASTemplate.slidePedals => GetElement<IControllerTemplateAxis>(170);
+
+ IControllerTemplateStick IHOTASTemplate.stick => GetElement<IControllerTemplateStick>(171);
+
+ IControllerTemplateThumbStick IHOTASTemplate.stickMiniStick1 => GetElement<IControllerTemplateThumbStick>(172);
+
+ IControllerTemplateThumbStick IHOTASTemplate.stickMiniStick2 => GetElement<IControllerTemplateThumbStick>(173);
+
+ IControllerTemplateHat IHOTASTemplate.stickHat1 => GetElement<IControllerTemplateHat>(174);
+
+ IControllerTemplateHat IHOTASTemplate.stickHat2 => GetElement<IControllerTemplateHat>(175);
+
+ IControllerTemplateHat IHOTASTemplate.stickHat3 => GetElement<IControllerTemplateHat>(176);
+
+ IControllerTemplateHat IHOTASTemplate.stickHat4 => GetElement<IControllerTemplateHat>(177);
+
+ IControllerTemplateThrottle IHOTASTemplate.throttle1 => GetElement<IControllerTemplateThrottle>(178);
+
+ IControllerTemplateThrottle IHOTASTemplate.throttle2 => GetElement<IControllerTemplateThrottle>(179);
+
+ IControllerTemplateThumbStick IHOTASTemplate.throttleMiniStick => GetElement<IControllerTemplateThumbStick>(180);
+
+ IControllerTemplateHat IHOTASTemplate.throttleHat1 => GetElement<IControllerTemplateHat>(181);
+
+ IControllerTemplateHat IHOTASTemplate.throttleHat2 => GetElement<IControllerTemplateHat>(182);
+
+ IControllerTemplateHat IHOTASTemplate.throttleHat3 => GetElement<IControllerTemplateHat>(183);
+
+ IControllerTemplateHat IHOTASTemplate.throttleHat4 => GetElement<IControllerTemplateHat>(184);
+
+ public HOTASTemplate(object payload)
+ : base(payload)
+ {
+ }
+}
diff --git a/Thronefall_v1.0/Thronefall/Rewired/IFlightPedalsTemplate.cs b/Thronefall_v1.0/Thronefall/Rewired/IFlightPedalsTemplate.cs
new file mode 100644
index 0000000..61f91de
--- /dev/null
+++ b/Thronefall_v1.0/Thronefall/Rewired/IFlightPedalsTemplate.cs
@@ -0,0 +1,10 @@
+namespace Rewired;
+
+public interface IFlightPedalsTemplate : IControllerTemplate
+{
+ IControllerTemplateAxis leftPedal { get; }
+
+ IControllerTemplateAxis rightPedal { get; }
+
+ IControllerTemplateAxis slide { get; }
+}
diff --git a/Thronefall_v1.0/Thronefall/Rewired/IFlightYokeTemplate.cs b/Thronefall_v1.0/Thronefall/Rewired/IFlightYokeTemplate.cs
new file mode 100644
index 0000000..9fc5660
--- /dev/null
+++ b/Thronefall_v1.0/Thronefall/Rewired/IFlightYokeTemplate.cs
@@ -0,0 +1,102 @@
+namespace Rewired;
+
+public interface IFlightYokeTemplate : IControllerTemplate
+{
+ IControllerTemplateButton leftPaddle { get; }
+
+ IControllerTemplateButton rightPaddle { get; }
+
+ IControllerTemplateButton leftGripButton1 { get; }
+
+ IControllerTemplateButton leftGripButton2 { get; }
+
+ IControllerTemplateButton leftGripButton3 { get; }
+
+ IControllerTemplateButton leftGripButton4 { get; }
+
+ IControllerTemplateButton leftGripButton5 { get; }
+
+ IControllerTemplateButton leftGripButton6 { get; }
+
+ IControllerTemplateButton rightGripButton1 { get; }
+
+ IControllerTemplateButton rightGripButton2 { get; }
+
+ IControllerTemplateButton rightGripButton3 { get; }
+
+ IControllerTemplateButton rightGripButton4 { get; }
+
+ IControllerTemplateButton rightGripButton5 { get; }
+
+ IControllerTemplateButton rightGripButton6 { get; }
+
+ IControllerTemplateButton centerButton1 { get; }
+
+ IControllerTemplateButton centerButton2 { get; }
+
+ IControllerTemplateButton centerButton3 { get; }
+
+ IControllerTemplateButton centerButton4 { get; }
+
+ IControllerTemplateButton centerButton5 { get; }
+
+ IControllerTemplateButton centerButton6 { get; }
+
+ IControllerTemplateButton centerButton7 { get; }
+
+ IControllerTemplateButton centerButton8 { get; }
+
+ IControllerTemplateButton wheel1Up { get; }
+
+ IControllerTemplateButton wheel1Down { get; }
+
+ IControllerTemplateButton wheel1Press { get; }
+
+ IControllerTemplateButton wheel2Up { get; }
+
+ IControllerTemplateButton wheel2Down { get; }
+
+ IControllerTemplateButton wheel2Press { get; }
+
+ IControllerTemplateButton consoleButton1 { get; }
+
+ IControllerTemplateButton consoleButton2 { get; }
+
+ IControllerTemplateButton consoleButton3 { get; }
+
+ IControllerTemplateButton consoleButton4 { get; }
+
+ IControllerTemplateButton consoleButton5 { get; }
+
+ IControllerTemplateButton consoleButton6 { get; }
+
+ IControllerTemplateButton consoleButton7 { get; }
+
+ IControllerTemplateButton consoleButton8 { get; }
+
+ IControllerTemplateButton consoleButton9 { get; }
+
+ IControllerTemplateButton consoleButton10 { get; }
+
+ IControllerTemplateButton mode1 { get; }
+
+ IControllerTemplateButton mode2 { get; }
+
+ IControllerTemplateButton mode3 { get; }
+
+ IControllerTemplateYoke yoke { get; }
+
+ IControllerTemplateThrottle lever1 { get; }
+
+ IControllerTemplateThrottle lever2 { get; }
+
+ IControllerTemplateThrottle lever3 { get; }
+
+ IControllerTemplateThrottle lever4 { get; }
+
+ IControllerTemplateThrottle lever5 { get; }
+
+ IControllerTemplateHat leftGripHat { get; }
+
+ IControllerTemplateHat rightGripHat { get; }
+}
diff --git a/Thronefall_v1.0/Thronefall/Rewired/IGamepadTemplate.cs b/Thronefall_v1.0/Thronefall/Rewired/IGamepadTemplate.cs
new file mode 100644
index 0000000..76b14b8
--- /dev/null
+++ b/Thronefall_v1.0/Thronefall/Rewired/IGamepadTemplate.cs
@@ -0,0 +1,62 @@
+namespace Rewired;
+
+public interface IGamepadTemplate : IControllerTemplate
+{
+ IControllerTemplateButton actionBottomRow1 { get; }
+
+ IControllerTemplateButton a { get; }
+
+ IControllerTemplateButton actionBottomRow2 { get; }
+
+ IControllerTemplateButton b { get; }
+
+ IControllerTemplateButton actionBottomRow3 { get; }
+
+ IControllerTemplateButton c { get; }
+
+ IControllerTemplateButton actionTopRow1 { get; }
+
+ IControllerTemplateButton x { get; }
+
+ IControllerTemplateButton actionTopRow2 { get; }
+
+ IControllerTemplateButton y { get; }
+
+ IControllerTemplateButton actionTopRow3 { get; }
+
+ IControllerTemplateButton z { get; }
+
+ IControllerTemplateButton leftShoulder1 { get; }
+
+ IControllerTemplateButton leftBumper { get; }
+
+ IControllerTemplateAxis leftShoulder2 { get; }
+
+ IControllerTemplateAxis leftTrigger { get; }
+
+ IControllerTemplateButton rightShoulder1 { get; }
+
+ IControllerTemplateButton rightBumper { get; }
+
+ IControllerTemplateAxis rightShoulder2 { get; }
+
+ IControllerTemplateAxis rightTrigger { get; }
+
+ IControllerTemplateButton center1 { get; }
+
+ IControllerTemplateButton back { get; }
+
+ IControllerTemplateButton center2 { get; }
+
+ IControllerTemplateButton start { get; }
+
+ IControllerTemplateButton center3 { get; }
+
+ IControllerTemplateButton guide { get; }
+
+ IControllerTemplateThumbStick leftStick { get; }
+
+ IControllerTemplateThumbStick rightStick { get; }
+
+ IControllerTemplateDPad dPad { get; }
+}
diff --git a/Thronefall_v1.0/Thronefall/Rewired/IHOTASTemplate.cs b/Thronefall_v1.0/Thronefall/Rewired/IHOTASTemplate.cs
new file mode 100644
index 0000000..8a801b5
--- /dev/null
+++ b/Thronefall_v1.0/Thronefall/Rewired/IHOTASTemplate.cs
@@ -0,0 +1,180 @@
+namespace Rewired;
+
+public interface IHOTASTemplate : IControllerTemplate
+{
+ IControllerTemplateButton stickTrigger { get; }
+
+ IControllerTemplateButton stickTriggerStage2 { get; }
+
+ IControllerTemplateButton stickPinkyButton { get; }
+
+ IControllerTemplateButton stickPinkyTrigger { get; }
+
+ IControllerTemplateButton stickButton1 { get; }
+
+ IControllerTemplateButton stickButton2 { get; }
+
+ IControllerTemplateButton stickButton3 { get; }
+
+ IControllerTemplateButton stickButton4 { get; }
+
+ IControllerTemplateButton stickButton5 { get; }
+
+ IControllerTemplateButton stickButton6 { get; }
+
+ IControllerTemplateButton stickButton7 { get; }
+
+ IControllerTemplateButton stickButton8 { get; }
+
+ IControllerTemplateButton stickButton9 { get; }
+
+ IControllerTemplateButton stickButton10 { get; }
+
+ IControllerTemplateButton stickBaseButton1 { get; }
+
+ IControllerTemplateButton stickBaseButton2 { get; }
+
+ IControllerTemplateButton stickBaseButton3 { get; }
+
+ IControllerTemplateButton stickBaseButton4 { get; }
+
+ IControllerTemplateButton stickBaseButton5 { get; }
+
+ IControllerTemplateButton stickBaseButton6 { get; }
+
+ IControllerTemplateButton stickBaseButton7 { get; }
+
+ IControllerTemplateButton stickBaseButton8 { get; }
+
+ IControllerTemplateButton stickBaseButton9 { get; }
+
+ IControllerTemplateButton stickBaseButton10 { get; }
+
+ IControllerTemplateButton stickBaseButton11 { get; }
+
+ IControllerTemplateButton stickBaseButton12 { get; }
+
+ IControllerTemplateButton mode1 { get; }
+
+ IControllerTemplateButton mode2 { get; }
+
+ IControllerTemplateButton mode3 { get; }
+
+ IControllerTemplateButton throttleButton1 { get; }
+
+ IControllerTemplateButton throttleButton2 { get; }
+
+ IControllerTemplateButton throttleButton3 { get; }
+
+ IControllerTemplateButton throttleButton4 { get; }
+
+ IControllerTemplateButton throttleButton5 { get; }
+
+ IControllerTemplateButton throttleButton6 { get; }
+
+ IControllerTemplateButton throttleButton7 { get; }
+
+ IControllerTemplateButton throttleButton8 { get; }
+
+ IControllerTemplateButton throttleButton9 { get; }
+
+ IControllerTemplateButton throttleButton10 { get; }
+
+ IControllerTemplateButton throttleBaseButton1 { get; }
+
+ IControllerTemplateButton throttleBaseButton2 { get; }
+
+ IControllerTemplateButton throttleBaseButton3 { get; }
+
+ IControllerTemplateButton throttleBaseButton4 { get; }
+
+ IControllerTemplateButton throttleBaseButton5 { get; }
+
+ IControllerTemplateButton throttleBaseButton6 { get; }
+
+ IControllerTemplateButton throttleBaseButton7 { get; }
+
+ IControllerTemplateButton throttleBaseButton8 { get; }
+
+ IControllerTemplateButton throttleBaseButton9 { get; }
+
+ IControllerTemplateButton throttleBaseButton10 { get; }
+
+ IControllerTemplateButton throttleBaseButton11 { get; }
+
+ IControllerTemplateButton throttleBaseButton12 { get; }
+
+ IControllerTemplateButton throttleBaseButton13 { get; }
+
+ IControllerTemplateButton throttleBaseButton14 { get; }
+
+ IControllerTemplateButton throttleBaseButton15 { get; }
+
+ IControllerTemplateAxis throttleSlider1 { get; }
+
+ IControllerTemplateAxis throttleSlider2 { get; }
+
+ IControllerTemplateAxis throttleSlider3 { get; }
+
+ IControllerTemplateAxis throttleSlider4 { get; }
+
+ IControllerTemplateAxis throttleDial1 { get; }
+
+ IControllerTemplateAxis throttleDial2 { get; }
+
+ IControllerTemplateAxis throttleDial3 { get; }
+
+ IControllerTemplateAxis throttleDial4 { get; }
+
+ IControllerTemplateButton throttleWheel1Forward { get; }
+
+ IControllerTemplateButton throttleWheel1Back { get; }
+
+ IControllerTemplateButton throttleWheel1Press { get; }
+
+ IControllerTemplateButton throttleWheel2Forward { get; }
+
+ IControllerTemplateButton throttleWheel2Back { get; }
+
+ IControllerTemplateButton throttleWheel2Press { get; }
+
+ IControllerTemplateButton throttleWheel3Forward { get; }
+
+ IControllerTemplateButton throttleWheel3Back { get; }
+
+ IControllerTemplateButton throttleWheel3Press { get; }
+
+ IControllerTemplateAxis leftPedal { get; }
+
+ IControllerTemplateAxis rightPedal { get; }
+
+ IControllerTemplateAxis slidePedals { get; }
+
+ IControllerTemplateStick stick { get; }
+
+ IControllerTemplateThumbStick stickMiniStick1 { get; }
+
+ IControllerTemplateThumbStick stickMiniStick2 { get; }
+
+ IControllerTemplateHat stickHat1 { get; }
+
+ IControllerTemplateHat stickHat2 { get; }
+
+ IControllerTemplateHat stickHat3 { get; }
+
+ IControllerTemplateHat stickHat4 { get; }
+
+ IControllerTemplateThrottle throttle1 { get; }
+
+ IControllerTemplateThrottle throttle2 { get; }
+
+ IControllerTemplateThumbStick throttleMiniStick { get; }
+
+ IControllerTemplateHat throttleHat1 { get; }
+
+ IControllerTemplateHat throttleHat2 { get; }
+
+ IControllerTemplateHat throttleHat3 { get; }
+
+ IControllerTemplateHat throttleHat4 { get; }
+}
diff --git a/Thronefall_v1.0/Thronefall/Rewired/IRacingWheelTemplate.cs b/Thronefall_v1.0/Thronefall/Rewired/IRacingWheelTemplate.cs
new file mode 100644
index 0000000..fe9a246
--- /dev/null
+++ b/Thronefall_v1.0/Thronefall/Rewired/IRacingWheelTemplate.cs
@@ -0,0 +1,88 @@
+namespace Rewired;
+
+public interface IRacingWheelTemplate : IControllerTemplate
+{
+ IControllerTemplateAxis wheel { get; }
+
+ IControllerTemplateAxis accelerator { get; }
+
+ IControllerTemplateAxis brake { get; }
+
+ IControllerTemplateAxis clutch { get; }
+
+ IControllerTemplateButton shiftDown { get; }
+
+ IControllerTemplateButton shiftUp { get; }
+
+ IControllerTemplateButton wheelButton1 { get; }
+
+ IControllerTemplateButton wheelButton2 { get; }
+
+ IControllerTemplateButton wheelButton3 { get; }
+
+ IControllerTemplateButton wheelButton4 { get; }
+
+ IControllerTemplateButton wheelButton5 { get; }
+
+ IControllerTemplateButton wheelButton6 { get; }
+
+ IControllerTemplateButton wheelButton7 { get; }
+
+ IControllerTemplateButton wheelButton8 { get; }
+
+ IControllerTemplateButton wheelButton9 { get; }
+
+ IControllerTemplateButton wheelButton10 { get; }
+
+ IControllerTemplateButton consoleButton1 { get; }
+
+ IControllerTemplateButton consoleButton2 { get; }
+
+ IControllerTemplateButton consoleButton3 { get; }
+
+ IControllerTemplateButton consoleButton4 { get; }
+
+ IControllerTemplateButton consoleButton5 { get; }
+
+ IControllerTemplateButton consoleButton6 { get; }
+
+ IControllerTemplateButton consoleButton7 { get; }
+
+ IControllerTemplateButton consoleButton8 { get; }
+
+ IControllerTemplateButton consoleButton9 { get; }
+
+ IControllerTemplateButton consoleButton10 { get; }
+
+ IControllerTemplateButton shifter1 { get; }
+
+ IControllerTemplateButton shifter2 { get; }
+
+ IControllerTemplateButton shifter3 { get; }
+
+ IControllerTemplateButton shifter4 { get; }
+
+ IControllerTemplateButton shifter5 { get; }
+
+ IControllerTemplateButton shifter6 { get; }
+
+ IControllerTemplateButton shifter7 { get; }
+
+ IControllerTemplateButton shifter8 { get; }
+
+ IControllerTemplateButton shifter9 { get; }
+
+ IControllerTemplateButton shifter10 { get; }
+
+ IControllerTemplateButton reverseGear { get; }
+
+ IControllerTemplateButton select { get; }
+
+ IControllerTemplateButton start { get; }
+
+ IControllerTemplateButton systemButton { get; }
+
+ IControllerTemplateButton horn { get; }
+
+ IControllerTemplateDPad dPad { get; }
+}
diff --git a/Thronefall_v1.0/Thronefall/Rewired/ISixDofControllerTemplate.cs b/Thronefall_v1.0/Thronefall/Rewired/ISixDofControllerTemplate.cs
new file mode 100644
index 0000000..326e0c5
--- /dev/null
+++ b/Thronefall_v1.0/Thronefall/Rewired/ISixDofControllerTemplate.cs
@@ -0,0 +1,86 @@
+namespace Rewired;
+
+public interface ISixDofControllerTemplate : IControllerTemplate
+{
+ IControllerTemplateAxis extraAxis1 { get; }
+
+ IControllerTemplateAxis extraAxis2 { get; }
+
+ IControllerTemplateAxis extraAxis3 { get; }
+
+ IControllerTemplateAxis extraAxis4 { get; }
+
+ IControllerTemplateButton button1 { get; }
+
+ IControllerTemplateButton button2 { get; }
+
+ IControllerTemplateButton button3 { get; }
+
+ IControllerTemplateButton button4 { get; }
+
+ IControllerTemplateButton button5 { get; }
+
+ IControllerTemplateButton button6 { get; }
+
+ IControllerTemplateButton button7 { get; }
+
+ IControllerTemplateButton button8 { get; }
+
+ IControllerTemplateButton button9 { get; }
+
+ IControllerTemplateButton button10 { get; }
+
+ IControllerTemplateButton button11 { get; }
+
+ IControllerTemplateButton button12 { get; }
+
+ IControllerTemplateButton button13 { get; }
+
+ IControllerTemplateButton button14 { get; }
+
+ IControllerTemplateButton button15 { get; }
+
+ IControllerTemplateButton button16 { get; }
+
+ IControllerTemplateButton button17 { get; }
+
+ IControllerTemplateButton button18 { get; }
+
+ IControllerTemplateButton button19 { get; }
+
+ IControllerTemplateButton button20 { get; }
+
+ IControllerTemplateButton button21 { get; }
+
+ IControllerTemplateButton button22 { get; }
+
+ IControllerTemplateButton button23 { get; }
+
+ IControllerTemplateButton button24 { get; }
+
+ IControllerTemplateButton button25 { get; }
+
+ IControllerTemplateButton button26 { get; }
+
+ IControllerTemplateButton button27 { get; }
+
+ IControllerTemplateButton button28 { get; }
+
+ IControllerTemplateButton button29 { get; }
+
+ IControllerTemplateButton button30 { get; }
+
+ IControllerTemplateButton button31 { get; }
+
+ IControllerTemplateButton button32 { get; }
+
+ IControllerTemplateHat hat1 { get; }
+
+ IControllerTemplateHat hat2 { get; }
+
+ IControllerTemplateThrottle throttle1 { get; }
+
+ IControllerTemplateThrottle throttle2 { get; }
+
+ IControllerTemplateStick6D stick { get; }
+}
diff --git a/Thronefall_v1.0/Thronefall/Rewired/InputManager.cs b/Thronefall_v1.0/Thronefall/Rewired/InputManager.cs
new file mode 100644
index 0000000..1bae3e4
--- /dev/null
+++ b/Thronefall_v1.0/Thronefall/Rewired/InputManager.cs
@@ -0,0 +1,81 @@
+using System.ComponentModel;
+using System.Text.RegularExpressions;
+using Rewired.Platforms;
+using Rewired.Utils;
+using Rewired.Utils.Interfaces;
+using UnityEngine;
+using UnityEngine.SceneManagement;
+
+namespace Rewired;
+
+[AddComponentMenu("Rewired/Input Manager")]
+[EditorBrowsable(EditorBrowsableState.Never)]
+public sealed class InputManager : InputManager_Base
+{
+ private bool ignoreRecompile;
+
+ protected override void OnInitialized()
+ {
+ SubscribeEvents();
+ }
+
+ protected override void OnDeinitialized()
+ {
+ UnsubscribeEvents();
+ }
+
+ protected override void DetectPlatform()
+ {
+ scriptingBackend = ScriptingBackend.Mono;
+ scriptingAPILevel = ScriptingAPILevel.Net20;
+ editorPlatform = EditorPlatform.None;
+ platform = Platform.Unknown;
+ webplayerPlatform = WebplayerPlatform.None;
+ isEditor = false;
+ if (SystemInfo.deviceName == null)
+ {
+ _ = string.Empty;
+ }
+ if (SystemInfo.deviceModel == null)
+ {
+ _ = string.Empty;
+ }
+ platform = Platform.Windows;
+ scriptingBackend = ScriptingBackend.Mono;
+ scriptingAPILevel = ScriptingAPILevel.NetStandard20;
+ }
+
+ protected override void CheckRecompile()
+ {
+ }
+
+ protected override IExternalTools GetExternalTools()
+ {
+ return new ExternalTools();
+ }
+
+ private bool CheckDeviceName(string searchPattern, string deviceName, string deviceModel)
+ {
+ if (!Regex.IsMatch(deviceName, searchPattern, RegexOptions.IgnoreCase))
+ {
+ return Regex.IsMatch(deviceModel, searchPattern, RegexOptions.IgnoreCase);
+ }
+ return true;
+ }
+
+ private void SubscribeEvents()
+ {
+ UnsubscribeEvents();
+ SceneManager.sceneLoaded += OnSceneLoaded;
+ }
+
+ private void UnsubscribeEvents()
+ {
+ SceneManager.sceneLoaded -= OnSceneLoaded;
+ }
+
+ private void OnSceneLoaded(Scene scene, LoadSceneMode mode)
+ {
+ OnSceneLoaded();
+ }
+}
diff --git a/Thronefall_v1.0/Thronefall/Rewired/RacingWheelTemplate.cs b/Thronefall_v1.0/Thronefall/Rewired/RacingWheelTemplate.cs
new file mode 100644
index 0000000..85fb3c3
--- /dev/null
+++ b/Thronefall_v1.0/Thronefall/Rewired/RacingWheelTemplate.cs
@@ -0,0 +1,189 @@
+using System;
+
+namespace Rewired;
+
+public sealed class RacingWheelTemplate : ControllerTemplate, IRacingWheelTemplate, IControllerTemplate
+{
+ public static readonly Guid typeGuid = new Guid("104e31d8-9115-4dd5-a398-2e54d35e6c83");
+
+ public const int elementId_wheel = 0;
+
+ public const int elementId_accelerator = 1;
+
+ public const int elementId_brake = 2;
+
+ public const int elementId_clutch = 3;
+
+ public const int elementId_shiftDown = 4;
+
+ public const int elementId_shiftUp = 5;
+
+ public const int elementId_wheelButton1 = 6;
+
+ public const int elementId_wheelButton2 = 7;
+
+ public const int elementId_wheelButton3 = 8;
+
+ public const int elementId_wheelButton4 = 9;
+
+ public const int elementId_wheelButton5 = 10;
+
+ public const int elementId_wheelButton6 = 11;
+
+ public const int elementId_wheelButton7 = 12;
+
+ public const int elementId_wheelButton8 = 13;
+
+ public const int elementId_wheelButton9 = 14;
+
+ public const int elementId_wheelButton10 = 15;
+
+ public const int elementId_consoleButton1 = 16;
+
+ public const int elementId_consoleButton2 = 17;
+
+ public const int elementId_consoleButton3 = 18;
+
+ public const int elementId_consoleButton4 = 19;
+
+ public const int elementId_consoleButton5 = 20;
+
+ public const int elementId_consoleButton6 = 21;
+
+ public const int elementId_consoleButton7 = 22;
+
+ public const int elementId_consoleButton8 = 23;
+
+ public const int elementId_consoleButton9 = 24;
+
+ public const int elementId_consoleButton10 = 25;
+
+ public const int elementId_shifter1 = 26;
+
+ public const int elementId_shifter2 = 27;
+
+ public const int elementId_shifter3 = 28;
+
+ public const int elementId_shifter4 = 29;
+
+ public const int elementId_shifter5 = 30;
+
+ public const int elementId_shifter6 = 31;
+
+ public const int elementId_shifter7 = 32;
+
+ public const int elementId_shifter8 = 33;
+
+ public const int elementId_shifter9 = 34;
+
+ public const int elementId_shifter10 = 35;
+
+ public const int elementId_reverseGear = 44;
+
+ public const int elementId_select = 36;
+
+ public const int elementId_start = 37;
+
+ public const int elementId_systemButton = 38;
+
+ public const int elementId_horn = 43;
+
+ public const int elementId_dPadUp = 39;
+
+ public const int elementId_dPadRight = 40;
+
+ public const int elementId_dPadDown = 41;
+
+ public const int elementId_dPadLeft = 42;
+
+ public const int elementId_dPad = 45;
+
+ IControllerTemplateAxis IRacingWheelTemplate.wheel => GetElement<IControllerTemplateAxis>(0);
+
+ IControllerTemplateAxis IRacingWheelTemplate.accelerator => GetElement<IControllerTemplateAxis>(1);
+
+ IControllerTemplateAxis IRacingWheelTemplate.brake => GetElement<IControllerTemplateAxis>(2);
+
+ IControllerTemplateAxis IRacingWheelTemplate.clutch => GetElement<IControllerTemplateAxis>(3);
+
+ IControllerTemplateButton IRacingWheelTemplate.shiftDown => GetElement<IControllerTemplateButton>(4);
+
+ IControllerTemplateButton IRacingWheelTemplate.shiftUp => GetElement<IControllerTemplateButton>(5);
+
+ IControllerTemplateButton IRacingWheelTemplate.wheelButton1 => GetElement<IControllerTemplateButton>(6);
+
+ IControllerTemplateButton IRacingWheelTemplate.wheelButton2 => GetElement<IControllerTemplateButton>(7);
+
+ IControllerTemplateButton IRacingWheelTemplate.wheelButton3 => GetElement<IControllerTemplateButton>(8);
+
+ IControllerTemplateButton IRacingWheelTemplate.wheelButton4 => GetElement<IControllerTemplateButton>(9);
+
+ IControllerTemplateButton IRacingWheelTemplate.wheelButton5 => GetElement<IControllerTemplateButton>(10);
+
+ IControllerTemplateButton IRacingWheelTemplate.wheelButton6 => GetElement<IControllerTemplateButton>(11);
+
+ IControllerTemplateButton IRacingWheelTemplate.wheelButton7 => GetElement<IControllerTemplateButton>(12);
+
+ IControllerTemplateButton IRacingWheelTemplate.wheelButton8 => GetElement<IControllerTemplateButton>(13);
+
+ IControllerTemplateButton IRacingWheelTemplate.wheelButton9 => GetElement<IControllerTemplateButton>(14);
+
+ IControllerTemplateButton IRacingWheelTemplate.wheelButton10 => GetElement<IControllerTemplateButton>(15);
+
+ IControllerTemplateButton IRacingWheelTemplate.consoleButton1 => GetElement<IControllerTemplateButton>(16);
+
+ IControllerTemplateButton IRacingWheelTemplate.consoleButton2 => GetElement<IControllerTemplateButton>(17);
+
+ IControllerTemplateButton IRacingWheelTemplate.consoleButton3 => GetElement<IControllerTemplateButton>(18);
+
+ IControllerTemplateButton IRacingWheelTemplate.consoleButton4 => GetElement<IControllerTemplateButton>(19);
+
+ IControllerTemplateButton IRacingWheelTemplate.consoleButton5 => GetElement<IControllerTemplateButton>(20);
+
+ IControllerTemplateButton IRacingWheelTemplate.consoleButton6 => GetElement<IControllerTemplateButton>(21);
+
+ IControllerTemplateButton IRacingWheelTemplate.consoleButton7 => GetElement<IControllerTemplateButton>(22);
+
+ IControllerTemplateButton IRacingWheelTemplate.consoleButton8 => GetElement<IControllerTemplateButton>(23);
+
+ IControllerTemplateButton IRacingWheelTemplate.consoleButton9 => GetElement<IControllerTemplateButton>(24);
+
+ IControllerTemplateButton IRacingWheelTemplate.consoleButton10 => GetElement<IControllerTemplateButton>(25);
+
+ IControllerTemplateButton IRacingWheelTemplate.shifter1 => GetElement<IControllerTemplateButton>(26);
+
+ IControllerTemplateButton IRacingWheelTemplate.shifter2 => GetElement<IControllerTemplateButton>(27);
+
+ IControllerTemplateButton IRacingWheelTemplate.shifter3 => GetElement<IControllerTemplateButton>(28);
+
+ IControllerTemplateButton IRacingWheelTemplate.shifter4 => GetElement<IControllerTemplateButton>(29);
+
+ IControllerTemplateButton IRacingWheelTemplate.shifter5 => GetElement<IControllerTemplateButton>(30);
+
+ IControllerTemplateButton IRacingWheelTemplate.shifter6 => GetElement<IControllerTemplateButton>(31);
+
+ IControllerTemplateButton IRacingWheelTemplate.shifter7 => GetElement<IControllerTemplateButton>(32);
+
+ IControllerTemplateButton IRacingWheelTemplate.shifter8 => GetElement<IControllerTemplateButton>(33);
+
+ IControllerTemplateButton IRacingWheelTemplate.shifter9 => GetElement<IControllerTemplateButton>(34);
+
+ IControllerTemplateButton IRacingWheelTemplate.shifter10 => GetElement<IControllerTemplateButton>(35);
+
+ IControllerTemplateButton IRacingWheelTemplate.reverseGear => GetElement<IControllerTemplateButton>(44);
+
+ IControllerTemplateButton IRacingWheelTemplate.select => GetElement<IControllerTemplateButton>(36);
+
+ IControllerTemplateButton IRacingWheelTemplate.start => GetElement<IControllerTemplateButton>(37);
+
+ IControllerTemplateButton IRacingWheelTemplate.systemButton => GetElement<IControllerTemplateButton>(38);
+
+ IControllerTemplateButton IRacingWheelTemplate.horn => GetElement<IControllerTemplateButton>(43);
+
+ IControllerTemplateDPad IRacingWheelTemplate.dPad => GetElement<IControllerTemplateDPad>(45);
+
+ public RacingWheelTemplate(object payload)
+ : base(payload)
+ {
+ }
+}
diff --git a/Thronefall_v1.0/Thronefall/Rewired/SixDofControllerTemplate.cs b/Thronefall_v1.0/Thronefall/Rewired/SixDofControllerTemplate.cs
new file mode 100644
index 0000000..083b9bc
--- /dev/null
+++ b/Thronefall_v1.0/Thronefall/Rewired/SixDofControllerTemplate.cs
@@ -0,0 +1,229 @@
+using System;
+
+namespace Rewired;
+
+public sealed class SixDofControllerTemplate : ControllerTemplate, ISixDofControllerTemplate, IControllerTemplate
+{
+ public static readonly Guid typeGuid = new Guid("2599beb3-522b-43dd-a4ef-93fd60e5eafa");
+
+ public const int elementId_positionX = 1;
+
+ public const int elementId_positionY = 2;
+
+ public const int elementId_positionZ = 0;
+
+ public const int elementId_rotationX = 3;
+
+ public const int elementId_rotationY = 5;
+
+ public const int elementId_rotationZ = 4;
+
+ public const int elementId_throttle1Axis = 6;
+
+ public const int elementId_throttle1MinDetent = 50;
+
+ public const int elementId_throttle2Axis = 7;
+
+ public const int elementId_throttle2MinDetent = 51;
+
+ public const int elementId_extraAxis1 = 8;
+
+ public const int elementId_extraAxis2 = 9;
+
+ public const int elementId_extraAxis3 = 10;
+
+ public const int elementId_extraAxis4 = 11;
+
+ public const int elementId_button1 = 12;
+
+ public const int elementId_button2 = 13;
+
+ public const int elementId_button3 = 14;
+
+ public const int elementId_button4 = 15;
+
+ public const int elementId_button5 = 16;
+
+ public const int elementId_button6 = 17;
+
+ public const int elementId_button7 = 18;
+
+ public const int elementId_button8 = 19;
+
+ public const int elementId_button9 = 20;
+
+ public const int elementId_button10 = 21;
+
+ public const int elementId_button11 = 22;
+
+ public const int elementId_button12 = 23;
+
+ public const int elementId_button13 = 24;
+
+ public const int elementId_button14 = 25;
+
+ public const int elementId_button15 = 26;
+
+ public const int elementId_button16 = 27;
+
+ public const int elementId_button17 = 28;
+
+ public const int elementId_button18 = 29;
+
+ public const int elementId_button19 = 30;
+
+ public const int elementId_button20 = 31;
+
+ public const int elementId_button21 = 55;
+
+ public const int elementId_button22 = 56;
+
+ public const int elementId_button23 = 57;
+
+ public const int elementId_button24 = 58;
+
+ public const int elementId_button25 = 59;
+
+ public const int elementId_button26 = 60;
+
+ public const int elementId_button27 = 61;
+
+ public const int elementId_button28 = 62;
+
+ public const int elementId_button29 = 63;
+
+ public const int elementId_button30 = 64;
+
+ public const int elementId_button31 = 65;
+
+ public const int elementId_button32 = 66;
+
+ public const int elementId_hat1Up = 32;
+
+ public const int elementId_hat1UpRight = 33;
+
+ public const int elementId_hat1Right = 34;
+
+ public const int elementId_hat1DownRight = 35;
+
+ public const int elementId_hat1Down = 36;
+
+ public const int elementId_hat1DownLeft = 37;
+
+ public const int elementId_hat1Left = 38;
+
+ public const int elementId_hat1UpLeft = 39;
+
+ public const int elementId_hat2Up = 40;
+
+ public const int elementId_hat2UpRight = 41;
+
+ public const int elementId_hat2Right = 42;
+
+ public const int elementId_hat2DownRight = 43;
+
+ public const int elementId_hat2Down = 44;
+
+ public const int elementId_hat2DownLeft = 45;
+
+ public const int elementId_hat2Left = 46;
+
+ public const int elementId_hat2UpLeft = 47;
+
+ public const int elementId_hat1 = 48;
+
+ public const int elementId_hat2 = 49;
+
+ public const int elementId_throttle1 = 52;
+
+ public const int elementId_throttle2 = 53;
+
+ public const int elementId_stick = 54;
+
+ IControllerTemplateAxis ISixDofControllerTemplate.extraAxis1 => GetElement<IControllerTemplateAxis>(8);
+
+ IControllerTemplateAxis ISixDofControllerTemplate.extraAxis2 => GetElement<IControllerTemplateAxis>(9);
+
+ IControllerTemplateAxis ISixDofControllerTemplate.extraAxis3 => GetElement<IControllerTemplateAxis>(10);
+
+ IControllerTemplateAxis ISixDofControllerTemplate.extraAxis4 => GetElement<IControllerTemplateAxis>(11);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button1 => GetElement<IControllerTemplateButton>(12);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button2 => GetElement<IControllerTemplateButton>(13);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button3 => GetElement<IControllerTemplateButton>(14);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button4 => GetElement<IControllerTemplateButton>(15);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button5 => GetElement<IControllerTemplateButton>(16);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button6 => GetElement<IControllerTemplateButton>(17);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button7 => GetElement<IControllerTemplateButton>(18);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button8 => GetElement<IControllerTemplateButton>(19);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button9 => GetElement<IControllerTemplateButton>(20);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button10 => GetElement<IControllerTemplateButton>(21);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button11 => GetElement<IControllerTemplateButton>(22);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button12 => GetElement<IControllerTemplateButton>(23);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button13 => GetElement<IControllerTemplateButton>(24);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button14 => GetElement<IControllerTemplateButton>(25);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button15 => GetElement<IControllerTemplateButton>(26);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button16 => GetElement<IControllerTemplateButton>(27);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button17 => GetElement<IControllerTemplateButton>(28);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button18 => GetElement<IControllerTemplateButton>(29);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button19 => GetElement<IControllerTemplateButton>(30);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button20 => GetElement<IControllerTemplateButton>(31);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button21 => GetElement<IControllerTemplateButton>(55);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button22 => GetElement<IControllerTemplateButton>(56);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button23 => GetElement<IControllerTemplateButton>(57);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button24 => GetElement<IControllerTemplateButton>(58);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button25 => GetElement<IControllerTemplateButton>(59);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button26 => GetElement<IControllerTemplateButton>(60);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button27 => GetElement<IControllerTemplateButton>(61);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button28 => GetElement<IControllerTemplateButton>(62);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button29 => GetElement<IControllerTemplateButton>(63);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button30 => GetElement<IControllerTemplateButton>(64);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button31 => GetElement<IControllerTemplateButton>(65);
+
+ IControllerTemplateButton ISixDofControllerTemplate.button32 => GetElement<IControllerTemplateButton>(66);
+
+ IControllerTemplateHat ISixDofControllerTemplate.hat1 => GetElement<IControllerTemplateHat>(48);
+
+ IControllerTemplateHat ISixDofControllerTemplate.hat2 => GetElement<IControllerTemplateHat>(49);
+
+ IControllerTemplateThrottle ISixDofControllerTemplate.throttle1 => GetElement<IControllerTemplateThrottle>(52);
+
+ IControllerTemplateThrottle ISixDofControllerTemplate.throttle2 => GetElement<IControllerTemplateThrottle>(53);
+
+ IControllerTemplateStick6D ISixDofControllerTemplate.stick => GetElement<IControllerTemplateStick6D>(54);
+
+ public SixDofControllerTemplate(object payload)
+ : base(payload)
+ {
+ }
+}