mirror of
https://github.com/SCToolsfactory/SCJMapper-V2.git
synced 2024-11-10 13:10:25 +00:00
improved on #17 allows js1..js8
adopt for AC 0.9 - add actionmaps flycam and spaceship_turret
This commit is contained in:
parent
8e46f91780
commit
4a06ab6654
@ -182,7 +182,7 @@ public Boolean UserSCPathUsed
|
||||
}
|
||||
|
||||
[UserScopedSettingAttribute( )]
|
||||
[DefaultSettingValueAttribute( ",multiplayer,player,singleplayer," )] // empty Note: comma separated list, must have a comma at the begining and the end (to find 'player' on its own...)
|
||||
[DefaultSettingValueAttribute( ",multiplayer,player,flycam,singleplayer," )] // empty Note: comma separated list, must have a comma at the begining and the end (to find 'player' on its own...)
|
||||
public String IgnoreActionmaps
|
||||
{
|
||||
get { return ( String )this["IgnoreActionmaps"]; }
|
||||
|
2
Form1.Designer.cs
generated
2
Form1.Designer.cs
generated
@ -15,7 +15,7 @@ protected override void Dispose( bool disposing )
|
||||
{
|
||||
timer1.Stop( );
|
||||
// Unacquire all DirectInput objects.
|
||||
foreach ( JoystickCls js in m_JS ) js.FinishDX( );
|
||||
foreach ( JoystickCls js in m_Joystick ) js.FinishDX( );
|
||||
|
||||
if ( disposing && ( components != null ) ) {
|
||||
components.Dispose( );
|
||||
|
118
Form1.cs
118
Form1.cs
@ -24,7 +24,7 @@ public partial class MainForm : Form
|
||||
///<remarks>
|
||||
/// Holds the DXInput Joystick List
|
||||
///</remarks>
|
||||
private JoystickList m_JS = new JoystickList( );
|
||||
private JoystickList m_Joystick = new JoystickList( );
|
||||
|
||||
///<remarks>
|
||||
/// Holds the ActionTree that manages the TreeView and the action lists
|
||||
@ -98,6 +98,7 @@ private void MainForm_Load( object sender, System.EventArgs e )
|
||||
|
||||
String version = Application.ProductVersion; // get the version information
|
||||
lblTitle.Text += " - V " + version.Substring( 0, version.IndexOf( ".", version.IndexOf( "." ) + 1 ) ); // get the first two elements
|
||||
log.InfoFormat( "Application Version: {0}", version.ToString( ) );
|
||||
|
||||
// tooltips where needed
|
||||
toolTip1.SetToolTip( this.linkLblReleases, c_GithubLink ); // allow to see where the link may head
|
||||
@ -244,14 +245,14 @@ private void InitActionTree( Boolean addDefaultBinding )
|
||||
m_AT.LoadTree( m_AppSettings.DefProfileName, addDefaultBinding ); // Init with default profile filepath
|
||||
|
||||
// default JS to Joystick mapping - can be changed and reloaded from XML
|
||||
if ( m_JS.Count > 0 ) { m_JS[0].JSAssignment = 1; m_AT.ActionMaps.js1 = m_JS[0].DevName; m_AT.ActionMaps.js1GUID = m_JS[0].DevInstanceGUID; }
|
||||
if ( m_JS.Count > 1 ) { m_JS[1].JSAssignment = 2; m_AT.ActionMaps.js2 = m_JS[1].DevName; m_AT.ActionMaps.js2GUID = m_JS[1].DevInstanceGUID; }
|
||||
if ( m_JS.Count > 2 ) { m_JS[2].JSAssignment = 0; } // unmapped ones go with default 0
|
||||
if ( m_JS.Count > 3 ) { m_JS[3].JSAssignment = 0; }
|
||||
if ( m_JS.Count > 4 ) { m_JS[4].JSAssignment = 0; }
|
||||
if ( m_JS.Count > 5 ) { m_JS[5].JSAssignment = 0; }
|
||||
if ( m_JS.Count > 6 ) { m_JS[6].JSAssignment = 0; }
|
||||
if ( m_JS.Count > 7 ) { m_JS[7].JSAssignment = 0; }
|
||||
if ( m_Joystick.Count > 0 ) { m_Joystick[0].JSAssignment = 1; m_AT.ActionMaps.jsN[0] = m_Joystick[0].DevName; m_AT.ActionMaps.jsNGUID[0] = m_Joystick[0].DevInstanceGUID; }
|
||||
if ( m_Joystick.Count > 1 ) { m_Joystick[1].JSAssignment = 2; m_AT.ActionMaps.jsN[1] = m_Joystick[1].DevName; m_AT.ActionMaps.jsNGUID[1] = m_Joystick[1].DevInstanceGUID; }
|
||||
if ( m_Joystick.Count > 2 ) { m_Joystick[2].JSAssignment = 0; } // unmapped ones go with default 0
|
||||
if ( m_Joystick.Count > 3 ) { m_Joystick[3].JSAssignment = 0; }
|
||||
if ( m_Joystick.Count > 4 ) { m_Joystick[4].JSAssignment = 0; }
|
||||
if ( m_Joystick.Count > 5 ) { m_Joystick[5].JSAssignment = 0; }
|
||||
if ( m_Joystick.Count > 6 ) { m_Joystick[6].JSAssignment = 0; }
|
||||
if ( m_Joystick.Count > 7 ) { m_Joystick[7].JSAssignment = 0; }
|
||||
}
|
||||
|
||||
|
||||
@ -298,7 +299,7 @@ public bool InitDirectInput( )
|
||||
log.Debug( "Create Joystick instance" );
|
||||
js = new JoystickCls( jsDevice, this, tabs + 1, uUC_JoyPanelNew, tc1.TabPages[tabs] ); // does all device related activities for that particular item
|
||||
}
|
||||
m_JS.Add( js ); // add to joystick list
|
||||
m_Joystick.Add( js ); // add to joystick list
|
||||
|
||||
tc1.TabPages[tabs].Tag = js.DevName; // used to find the tab via JS mapping
|
||||
tc1.TabPages[tabs].BackColor = MyColors.JColor[tabs]; // each tab has its own color
|
||||
@ -355,62 +356,32 @@ private void Grab( )
|
||||
{
|
||||
log.Debug( "Grab - Entry" );
|
||||
|
||||
m_JS.ResetJsNAssignment( );
|
||||
m_Joystick.ResetJsNAssignment( );
|
||||
m_AT.ActionMaps.fromXML( rtb.Text );
|
||||
// JS mapping for js1 .. js4 can be changed and reloaded from XML
|
||||
// JS mapping for js1 .. js8 can be changed and reloaded from XML
|
||||
// note - unmapped ones remain what they were
|
||||
// This is includes similar procedures as reassigning of the jsN items
|
||||
JoystickCls j = null;
|
||||
if ( !String.IsNullOrEmpty( m_AT.ActionMaps.js1GUID ) ) {
|
||||
j = m_JS.Find_jsInstance( m_AT.ActionMaps.js1GUID );
|
||||
|
||||
// for all supported jsN
|
||||
for ( int i=0; i < JoystickCls.JSnum_MAX; i++ ) {
|
||||
j = null;
|
||||
if ( !String.IsNullOrEmpty( m_AT.ActionMaps.jsNGUID[i] ) ) {
|
||||
j = m_Joystick.Find_jsInstance( m_AT.ActionMaps.jsNGUID[i] );
|
||||
}
|
||||
else if ( !String.IsNullOrEmpty( m_AT.ActionMaps.js1 ) ) {
|
||||
j = m_JS.Find_jsDev( m_AT.ActionMaps.js1 );
|
||||
else if ( !String.IsNullOrEmpty( m_AT.ActionMaps.jsN[i] ) ) {
|
||||
j = m_Joystick.Find_jsDev( m_AT.ActionMaps.jsN[i] );
|
||||
}
|
||||
if ( j != null ) {
|
||||
m_AT.ActionMaps.js1GUID = j.DevInstanceGUID; // subst for missing one (version up etc.)
|
||||
j.JSAssignment = 1;
|
||||
m_AT.ActionMaps.jsNGUID[i] = j.DevInstanceGUID; // subst for missing one (version up etc.)
|
||||
j.JSAssignment = i+1;
|
||||
}
|
||||
}
|
||||
|
||||
j = null; ;
|
||||
if ( !String.IsNullOrEmpty( m_AT.ActionMaps.js2GUID ) ) {
|
||||
j = m_JS.Find_jsInstance( m_AT.ActionMaps.js2GUID );
|
||||
}
|
||||
else if ( !String.IsNullOrEmpty( m_AT.ActionMaps.js2 ) ) {
|
||||
j = m_JS.Find_jsDev( m_AT.ActionMaps.js2 );
|
||||
}
|
||||
if ( j != null ) {
|
||||
m_AT.ActionMaps.js2GUID = j.DevInstanceGUID; // subst for missing one (version up etc.)
|
||||
j.JSAssignment = 2;
|
||||
}
|
||||
|
||||
j = null; ;
|
||||
if ( !String.IsNullOrEmpty( m_AT.ActionMaps.js3GUID ) ) {
|
||||
j = m_JS.Find_jsInstance( m_AT.ActionMaps.js3GUID );
|
||||
}
|
||||
else if ( !String.IsNullOrEmpty( m_AT.ActionMaps.js3 ) ) {
|
||||
j = m_JS.Find_jsDev( m_AT.ActionMaps.js3 );
|
||||
}
|
||||
if ( j != null ) {
|
||||
m_AT.ActionMaps.js3GUID = j.DevInstanceGUID; // subst for missing one (version up etc.)
|
||||
j.JSAssignment = 3;
|
||||
}
|
||||
|
||||
j = null; ;
|
||||
if ( !String.IsNullOrEmpty( m_AT.ActionMaps.js4GUID ) ) {
|
||||
j = m_JS.Find_jsInstance( m_AT.ActionMaps.js4GUID );
|
||||
}
|
||||
else if ( !String.IsNullOrEmpty( m_AT.ActionMaps.js4 ) ) {
|
||||
j = m_JS.Find_jsDev( m_AT.ActionMaps.js4 );
|
||||
}
|
||||
if ( j != null ) {
|
||||
m_AT.ActionMaps.js4GUID = j.DevInstanceGUID; // subst for missing one (version up etc.)
|
||||
j.JSAssignment = 4;
|
||||
}
|
||||
|
||||
// maintain the new JsN assignment and update the colorlist
|
||||
List<int> newL = new List<int>( );
|
||||
foreach ( JoystickCls jj in m_JS ) {
|
||||
foreach ( JoystickCls jj in m_Joystick ) {
|
||||
newL.Add(jj.JSAssignment);
|
||||
}
|
||||
JoystickCls.ReassignJsColor( newL );
|
||||
@ -458,8 +429,8 @@ private void MainForm_FormClosing( object sender, FormClosingEventArgs e )
|
||||
|
||||
private void timer1_Tick( object sender, System.EventArgs e )
|
||||
{
|
||||
foreach ( JoystickCls jsc in m_JS ) { jsc.GetData( ); } // poll the devices
|
||||
String ctrl = JSStr( ) + m_JS[tc1.SelectedIndex].GetLastChange( ); // show last handled JS control
|
||||
foreach ( JoystickCls jsc in m_Joystick ) { jsc.GetData( ); } // poll the devices
|
||||
String ctrl = JSStr( ) + m_Joystick[tc1.SelectedIndex].GetLastChange( ); // show last handled JS control
|
||||
lblLastJ.Text = ctrl;
|
||||
if ( JoystickCls.CanThrottle( ctrl ) ) {
|
||||
cbxThrottle.Enabled = true;
|
||||
@ -773,7 +744,7 @@ private void btSettings_Click( object sender, EventArgs e )
|
||||
// indicates (in)valid folders
|
||||
SCFileIndication( );
|
||||
// now update the contents according to new settings
|
||||
foreach ( JoystickCls j in m_JS ) j.ApplySettings( ); // update Seetings
|
||||
foreach ( JoystickCls j in m_Joystick ) j.ApplySettings( ); // update Seetings
|
||||
m_AT.IgnoreMaps = m_AppSettings.IgnoreActionmaps;
|
||||
// and start over with an empty tree
|
||||
InitActionTree( false );
|
||||
@ -786,38 +757,21 @@ private void btJsReassign_Click( object sender, EventArgs e )
|
||||
{
|
||||
// have to stop polling while the Reassign window is open
|
||||
timer1.Enabled = false;
|
||||
if ( m_JS.ShowReassign( ) != System.Windows.Forms.DialogResult.Cancel ) {
|
||||
if ( m_Joystick.ShowReassign( ) != System.Windows.Forms.DialogResult.Cancel ) {
|
||||
// copy the action tree while reassigning the jsN mappings from OLD to NEW
|
||||
ActionTree newTree = m_AT.ReassignJsN( m_JS.JsReassingList );
|
||||
ActionTree newTree = m_AT.ReassignJsN( m_Joystick.JsReassingList );
|
||||
|
||||
// we have still the old assignment in the ActionMap - change it here (map does not know about the devices)
|
||||
JoystickCls j = null;
|
||||
j = m_JS.Find_jsN( 1 );
|
||||
// for all supported jsN devices
|
||||
for ( int i=0; i < JoystickCls.JSnum_MAX; i++ ) {
|
||||
j = m_Joystick.Find_jsN( i+1 );
|
||||
if ( j != null ) {
|
||||
newTree.ActionMaps.js1 = j.DevName; newTree.ActionMaps.js1GUID = j.DevInstanceGUID;
|
||||
newTree.ActionMaps.jsN[i] = j.DevName; newTree.ActionMaps.jsNGUID[i] = j.DevInstanceGUID;
|
||||
}
|
||||
else {
|
||||
newTree.ActionMaps.js1 = ""; newTree.ActionMaps.js1GUID = "";
|
||||
newTree.ActionMaps.jsN[i] = ""; newTree.ActionMaps.jsNGUID[i] = "";
|
||||
}
|
||||
j = m_JS.Find_jsN( 2 );
|
||||
if ( j != null ) {
|
||||
newTree.ActionMaps.js2 = j.DevName; newTree.ActionMaps.js2GUID = j.DevInstanceGUID;
|
||||
}
|
||||
else {
|
||||
newTree.ActionMaps.js2 = ""; newTree.ActionMaps.js2GUID = "";
|
||||
}
|
||||
j = m_JS.Find_jsN( 3 );
|
||||
if ( j != null ) {
|
||||
newTree.ActionMaps.js3 = j.DevName; newTree.ActionMaps.js3GUID = j.DevInstanceGUID;
|
||||
}
|
||||
else {
|
||||
newTree.ActionMaps.js3 = ""; newTree.ActionMaps.js3GUID = "";
|
||||
}
|
||||
j = m_JS.Find_jsN( 4 );
|
||||
if ( j != null ) {
|
||||
newTree.ActionMaps.js4 = j.DevName; newTree.ActionMaps.js4GUID = j.DevInstanceGUID;
|
||||
}
|
||||
else {
|
||||
newTree.ActionMaps.js4 = ""; newTree.ActionMaps.js4GUID = "";
|
||||
}
|
||||
|
||||
m_AT = newTree; // make it the valid one
|
||||
|
@ -23,22 +23,33 @@ class ActionMapsCls : List<ActionMapCls>
|
||||
private static readonly log4net.ILog log = log4net.LogManager.GetLogger( System.Reflection.MethodBase.GetCurrentMethod( ).DeclaringType );
|
||||
|
||||
// actionmap names to gather (do we need them to be cofigurable ??)
|
||||
public static String[] ActionMaps = { "multiplayer", "singleplayer", "player", "spaceship_general", "spaceship_view", "spaceship_movement", "spaceship_targeting", "spaceship_weapons", "spaceship_missiles",
|
||||
"spaceship_defensive", "spaceship_auto_weapons", "spaceship_radar" , "spaceship_hud" , "IFCS_controls" };
|
||||
public static String[] ActionMaps = { "multiplayer", "singleplayer", "player", "flycam", "spaceship_general", "spaceship_view", "spaceship_movement", "spaceship_targeting", "spaceship_turret",
|
||||
"spaceship_weapons", "spaceship_missiles", "spaceship_defensive", "spaceship_auto_weapons", "spaceship_radar" , "spaceship_hud" , "IFCS_controls" };
|
||||
|
||||
|
||||
|
||||
public String version { get; set; }
|
||||
// own additions for JS mapping - should not harm..
|
||||
public String js1 { get; set; }
|
||||
public String js2 { get; set; }
|
||||
public String js3 { get; set; }
|
||||
public String js4 { get; set; }
|
||||
|
||||
public String js1GUID { get; set; }
|
||||
public String js2GUID { get; set; }
|
||||
public String js3GUID { get; set; }
|
||||
public String js4GUID { get; set; }
|
||||
// own additions for JS mapping - should not harm..
|
||||
private String[] m_js;
|
||||
private String[] m_GUIDs;
|
||||
|
||||
/// <summary>
|
||||
/// get/set jsN assignment (use 0-based index i.e. js1 -> [0])
|
||||
/// </summary>
|
||||
public String[] jsN
|
||||
{
|
||||
get { return m_js; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// get/set jsN GUID assignment (use 0-based index i.e. js1GUID -> [0])
|
||||
/// </summary>
|
||||
public String[] jsNGUID
|
||||
{
|
||||
get { return m_GUIDs; }
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ctor
|
||||
@ -46,8 +57,13 @@ class ActionMapsCls : List<ActionMapCls>
|
||||
public ActionMapsCls( )
|
||||
{
|
||||
version = "0";
|
||||
js1 = ""; js2 = ""; js3 = ""; js4 = "";
|
||||
js1GUID = ""; js2GUID = ""; js3GUID = ""; js4GUID = "";
|
||||
|
||||
// create the Joystick assignments
|
||||
Array.Resize( ref m_js, JoystickCls.JSnum_MAX + 1 );
|
||||
Array.Resize( ref m_GUIDs, JoystickCls.JSnum_MAX + 1 );
|
||||
for ( int i=0; i < JoystickCls.JSnum_MAX; i++ ) {
|
||||
m_js[i] = ""; m_GUIDs[i] = "";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -60,10 +76,9 @@ public ActionMapsCls ReassignJsN( Dictionary<int, int> newJsList )
|
||||
{
|
||||
ActionMapsCls newMaps = new ActionMapsCls( );
|
||||
// full copy from 'this'
|
||||
newMaps.js1 = this.js1; newMaps.js1GUID = this.js1GUID;
|
||||
newMaps.js2 = this.js2; newMaps.js2GUID = this.js2GUID;
|
||||
newMaps.js3 = this.js3; newMaps.js3GUID = this.js3GUID;
|
||||
newMaps.js4 = this.js4; newMaps.js4GUID = this.js4GUID;
|
||||
for ( int i=0; i < JoystickCls.JSnum_MAX; i++ ) {
|
||||
newMaps.jsN[i] = this.jsN[i]; newMaps.jsNGUID[i] = this.jsNGUID[i];
|
||||
}
|
||||
|
||||
foreach ( ActionMapCls am in this ) {
|
||||
newMaps.Add( am.ReassignJsN( newJsList ) );
|
||||
@ -103,14 +118,11 @@ public String toXML( )
|
||||
log.Debug( "toXML - Entry" );
|
||||
|
||||
String r = String.Format( "<ActionMaps version=\"{0}\" \n", version );
|
||||
if ( !String.IsNullOrEmpty( js1 ) ) r += String.Format( "\tjs1=\"{0}\" ", js1 );
|
||||
if ( !String.IsNullOrEmpty( js1GUID ) ) r += String.Format( "js1G=\"{0}\" ", js1GUID ); r += String.Format( "\n" );
|
||||
if ( !String.IsNullOrEmpty( js2 ) ) r += String.Format( "\tjs2=\"{0}\" ", js2 );
|
||||
if ( !String.IsNullOrEmpty( js2GUID ) ) r += String.Format( "js2G=\"{0}\" ", js2GUID ); r += String.Format( "\n" );
|
||||
if ( !String.IsNullOrEmpty( js3 ) ) r += String.Format( "\tjs3=\"{0}\" ", js3 );
|
||||
if ( !String.IsNullOrEmpty( js3GUID ) ) r += String.Format( "js3G=\"{0}\" ", js3GUID ); r += String.Format( "\n" );
|
||||
if ( !String.IsNullOrEmpty( js4 ) ) r += String.Format( "\tjs4=\"{0}\" ", js4 );
|
||||
if ( !String.IsNullOrEmpty( js4GUID ) ) r += String.Format( "js4G=\"{0}\" ", js4GUID ); r += String.Format( "\n" );
|
||||
for ( int i=0; i < JoystickCls.JSnum_MAX; i++ ) {
|
||||
if ( !String.IsNullOrEmpty( jsN[i] ) ) r += String.Format( "\tjs{0}=\"{1}\" ", i+1, jsN[i] );
|
||||
if ( !String.IsNullOrEmpty( jsNGUID[i] ) ) r += String.Format( "js{0}G=\"{1}\" \n", i + 1, jsNGUID[i] );
|
||||
}
|
||||
|
||||
r += String.Format( ">\n" );
|
||||
foreach ( ActionMapCls amc in this ) {
|
||||
r += String.Format( "{0}\n", amc.toXML( ) );
|
||||
@ -143,14 +155,10 @@ public Boolean fromXML( String xml )
|
||||
if ( reader.HasAttributes ) {
|
||||
version = reader["version"];
|
||||
// get the joystick mapping if there is one
|
||||
js1 = reader["js1"];
|
||||
js2 = reader["js2"];
|
||||
js3 = reader["js3"];
|
||||
js4 = reader["js4"];
|
||||
js1GUID = reader["js1G"];
|
||||
js2GUID = reader["js2G"];
|
||||
js3GUID = reader["js3G"];
|
||||
js4GUID = reader["js4G"];
|
||||
for ( int i=0; i < JoystickCls.JSnum_MAX; i++ ) {
|
||||
jsN[i] = reader[String.Format( "js{0}", i + 1 )];
|
||||
jsNGUID[i] = reader[String.Format( "js{0}G", i + 1 )];
|
||||
}
|
||||
}
|
||||
else {
|
||||
return false;
|
||||
|
@ -426,10 +426,9 @@ public String ReportActions( )
|
||||
|
||||
String repList = "";
|
||||
// JS assignments
|
||||
if ( !String.IsNullOrEmpty( ActionMaps.js1 ) ) repList += String.Format( "** js1 = {0}\n", ActionMaps.js1 );
|
||||
if ( !String.IsNullOrEmpty( ActionMaps.js2 ) ) repList += String.Format( "** js2 = {0}\n", ActionMaps.js2 );
|
||||
if ( !String.IsNullOrEmpty( ActionMaps.js3 ) ) repList += String.Format( "** js3 = {0}\n", ActionMaps.js3 );
|
||||
if ( !String.IsNullOrEmpty( ActionMaps.js4 ) ) repList += String.Format( "** js4 = {0}\n", ActionMaps.js4 );
|
||||
for ( int i=0; i < JoystickCls.JSnum_MAX; i++ ) {
|
||||
if ( !String.IsNullOrEmpty( ActionMaps.jsN[i] ) ) repList += String.Format( "** js{0} = {1}\n", i+1, ActionMaps.jsN[i] );
|
||||
}
|
||||
// now the mapped actions
|
||||
repList += String.Format( "\n" );
|
||||
foreach ( ActionMapCls acm in ActionMaps ) {
|
||||
|
48
Joystick/FormReassign.Designer.cs
generated
48
Joystick/FormReassign.Designer.cs
generated
@ -121,7 +121,11 @@ private void InitializeComponent( )
|
||||
"js1",
|
||||
"js2",
|
||||
"js3",
|
||||
"js4"});
|
||||
"js4",
|
||||
"js5",
|
||||
"js6",
|
||||
"js7",
|
||||
"js8"});
|
||||
this.cbxStick8.Location = new System.Drawing.Point(562, 217);
|
||||
this.cbxStick8.Name = "cbxStick8";
|
||||
this.cbxStick8.Size = new System.Drawing.Size(84, 21);
|
||||
@ -135,7 +139,11 @@ private void InitializeComponent( )
|
||||
"js1",
|
||||
"js2",
|
||||
"js3",
|
||||
"js4"});
|
||||
"js4",
|
||||
"js5",
|
||||
"js6",
|
||||
"js7",
|
||||
"js8"});
|
||||
this.cbxStick7.Location = new System.Drawing.Point(562, 189);
|
||||
this.cbxStick7.Name = "cbxStick7";
|
||||
this.cbxStick7.Size = new System.Drawing.Size(84, 21);
|
||||
@ -149,7 +157,11 @@ private void InitializeComponent( )
|
||||
"js1",
|
||||
"js2",
|
||||
"js3",
|
||||
"js4"});
|
||||
"js4",
|
||||
"js5",
|
||||
"js6",
|
||||
"js7",
|
||||
"js8"});
|
||||
this.cbxStick6.Location = new System.Drawing.Point(562, 161);
|
||||
this.cbxStick6.Name = "cbxStick6";
|
||||
this.cbxStick6.Size = new System.Drawing.Size(84, 21);
|
||||
@ -163,7 +175,11 @@ private void InitializeComponent( )
|
||||
"js1",
|
||||
"js2",
|
||||
"js3",
|
||||
"js4"});
|
||||
"js4",
|
||||
"js5",
|
||||
"js6",
|
||||
"js7",
|
||||
"js8"});
|
||||
this.cbxStick5.Location = new System.Drawing.Point(562, 133);
|
||||
this.cbxStick5.Name = "cbxStick5";
|
||||
this.cbxStick5.Size = new System.Drawing.Size(84, 21);
|
||||
@ -177,7 +193,11 @@ private void InitializeComponent( )
|
||||
"js1",
|
||||
"js2",
|
||||
"js3",
|
||||
"js4"});
|
||||
"js4",
|
||||
"js5",
|
||||
"js6",
|
||||
"js7",
|
||||
"js8"});
|
||||
this.cbxStick4.Location = new System.Drawing.Point(562, 105);
|
||||
this.cbxStick4.Name = "cbxStick4";
|
||||
this.cbxStick4.Size = new System.Drawing.Size(84, 21);
|
||||
@ -191,7 +211,11 @@ private void InitializeComponent( )
|
||||
"js1",
|
||||
"js2",
|
||||
"js3",
|
||||
"js4"});
|
||||
"js4",
|
||||
"js5",
|
||||
"js6",
|
||||
"js7",
|
||||
"js8"});
|
||||
this.cbxStick3.Location = new System.Drawing.Point(562, 77);
|
||||
this.cbxStick3.Name = "cbxStick3";
|
||||
this.cbxStick3.Size = new System.Drawing.Size(84, 21);
|
||||
@ -205,7 +229,11 @@ private void InitializeComponent( )
|
||||
"js1",
|
||||
"js2",
|
||||
"js3",
|
||||
"js4"});
|
||||
"js4",
|
||||
"js5",
|
||||
"js6",
|
||||
"js7",
|
||||
"js8"});
|
||||
this.cbxStick2.Location = new System.Drawing.Point(562, 49);
|
||||
this.cbxStick2.Name = "cbxStick2";
|
||||
this.cbxStick2.Size = new System.Drawing.Size(84, 21);
|
||||
@ -219,7 +247,11 @@ private void InitializeComponent( )
|
||||
"js1",
|
||||
"js2",
|
||||
"js3",
|
||||
"js4"});
|
||||
"js4",
|
||||
"js5",
|
||||
"js6",
|
||||
"js7",
|
||||
"js8"});
|
||||
this.cbxStick1.Location = new System.Drawing.Point(562, 21);
|
||||
this.cbxStick1.Name = "cbxStick1";
|
||||
this.cbxStick1.Size = new System.Drawing.Size(84, 21);
|
||||
|
@ -52,7 +52,7 @@ private void LoadSettings( )
|
||||
m_owner.JsReassingList.Clear( );
|
||||
m_owner.NewJsList.Clear( );
|
||||
foreach ( JoystickCls j in m_owner ) {
|
||||
m_cb[textIdx].SelectedIndex = ( j.JSAssignment <= 4 ) ? j.JSAssignment : 0;
|
||||
m_cb[textIdx].SelectedIndex = ( j.JSAssignment <= 8 ) ? j.JSAssignment : 0;
|
||||
m_owner.NewJsList.Add( m_cb[textIdx].SelectedIndex ); // old for now - new depends on Leave Button
|
||||
textIdx++;
|
||||
}
|
||||
@ -77,12 +77,12 @@ private void SaveSettings( )
|
||||
|
||||
private Boolean IsOK( )
|
||||
{
|
||||
int[] jsx = {0,0,0,0,0};
|
||||
int[] jsx = { 0, 0, 0, 0, 0, 0, 0, 0, 0 };
|
||||
foreach ( ComboBox cb in m_cb ) {
|
||||
if ( cb.SelectedIndex>0) jsx[cb.SelectedIndex]++;
|
||||
}
|
||||
|
||||
return ( ( jsx[1] < 2 ) && ( jsx[2] < 2 ) && ( jsx[3] < 2 ) && ( jsx[4] < 2 ) ); // each Js can be set only once
|
||||
return ( ( jsx[1] < 2 ) && ( jsx[2] < 2 ) && ( jsx[3] < 2 ) && ( jsx[4] < 2 ) && ( jsx[5] < 2 ) && ( jsx[6] < 2 ) && ( jsx[7] < 2 ) && ( jsx[8] < 2 ) ); // each Js can be set only once
|
||||
}
|
||||
|
||||
|
||||
|
@ -28,7 +28,7 @@ class JoystickCls
|
||||
public const String BlendedJsInput = JsUnknown + "reserved"; // the device name used throughout this app
|
||||
|
||||
static private int JSnum_UNKNOWN = 0;
|
||||
static private int JSnum_MAX = 4; // can only assign 4 jsN devices in SC
|
||||
static public int JSnum_MAX = 8; // can only assign 4 jsN devices in SC
|
||||
|
||||
static public System.Drawing.Color[] JColor = (System.Drawing.Color[])MyColors.JColor.Clone(); // default
|
||||
|
||||
|
89
Joystick/UC_JoyPanel.Designer.cs
generated
89
Joystick/UC_JoyPanel.Designer.cs
generated
@ -62,11 +62,8 @@ private void InitializeComponent( )
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||
this.rbJsNA = new System.Windows.Forms.RadioButton();
|
||||
this.rbJs4 = new System.Windows.Forms.RadioButton();
|
||||
this.rbJs3 = new System.Windows.Forms.RadioButton();
|
||||
this.rbJs2 = new System.Windows.Forms.RadioButton();
|
||||
this.rbJs1 = new System.Windows.Forms.RadioButton();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.lblJsAssignment = new System.Windows.Forms.Label();
|
||||
this.gBox.SuspendLayout();
|
||||
this.gBoxCap.SuspendLayout();
|
||||
this.groupBox1.SuspendLayout();
|
||||
@ -434,11 +431,8 @@ private void InitializeComponent( )
|
||||
//
|
||||
// groupBox1
|
||||
//
|
||||
this.groupBox1.Controls.Add(this.rbJsNA);
|
||||
this.groupBox1.Controls.Add(this.rbJs4);
|
||||
this.groupBox1.Controls.Add(this.rbJs3);
|
||||
this.groupBox1.Controls.Add(this.rbJs2);
|
||||
this.groupBox1.Controls.Add(this.rbJs1);
|
||||
this.groupBox1.Controls.Add(this.lblJsAssignment);
|
||||
this.groupBox1.Controls.Add(this.label1);
|
||||
this.groupBox1.Location = new System.Drawing.Point(3, 236);
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Size = new System.Drawing.Size(232, 46);
|
||||
@ -446,62 +440,24 @@ private void InitializeComponent( )
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "jsN - Assignment";
|
||||
//
|
||||
// rbJsNA
|
||||
// label1
|
||||
//
|
||||
this.rbJsNA.AutoSize = true;
|
||||
this.rbJsNA.Checked = true;
|
||||
this.rbJsNA.Enabled = false;
|
||||
this.rbJsNA.Location = new System.Drawing.Point(182, 19);
|
||||
this.rbJsNA.Name = "rbJsNA";
|
||||
this.rbJsNA.Size = new System.Drawing.Size(37, 17);
|
||||
this.rbJsNA.TabIndex = 4;
|
||||
this.rbJsNA.TabStop = true;
|
||||
this.rbJsNA.Text = "jsx";
|
||||
this.rbJsNA.UseVisualStyleBackColor = true;
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(9, 21);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(119, 13);
|
||||
this.label1.TabIndex = 0;
|
||||
this.label1.Text = "This device is listed as: ";
|
||||
//
|
||||
// rbJs4
|
||||
// lblJsAssignment
|
||||
//
|
||||
this.rbJs4.AutoSize = true;
|
||||
this.rbJs4.Enabled = false;
|
||||
this.rbJs4.Location = new System.Drawing.Point(138, 19);
|
||||
this.rbJs4.Name = "rbJs4";
|
||||
this.rbJs4.Size = new System.Drawing.Size(38, 17);
|
||||
this.rbJs4.TabIndex = 3;
|
||||
this.rbJs4.Text = "js4";
|
||||
this.rbJs4.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// rbJs3
|
||||
//
|
||||
this.rbJs3.AutoSize = true;
|
||||
this.rbJs3.Enabled = false;
|
||||
this.rbJs3.Location = new System.Drawing.Point(94, 19);
|
||||
this.rbJs3.Name = "rbJs3";
|
||||
this.rbJs3.Size = new System.Drawing.Size(38, 17);
|
||||
this.rbJs3.TabIndex = 2;
|
||||
this.rbJs3.Text = "js3";
|
||||
this.rbJs3.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// rbJs2
|
||||
//
|
||||
this.rbJs2.AutoSize = true;
|
||||
this.rbJs2.Enabled = false;
|
||||
this.rbJs2.Location = new System.Drawing.Point(50, 19);
|
||||
this.rbJs2.Name = "rbJs2";
|
||||
this.rbJs2.Size = new System.Drawing.Size(38, 17);
|
||||
this.rbJs2.TabIndex = 1;
|
||||
this.rbJs2.Text = "js2";
|
||||
this.rbJs2.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// rbJs1
|
||||
//
|
||||
this.rbJs1.AutoSize = true;
|
||||
this.rbJs1.Enabled = false;
|
||||
this.rbJs1.Location = new System.Drawing.Point(6, 19);
|
||||
this.rbJs1.Name = "rbJs1";
|
||||
this.rbJs1.Size = new System.Drawing.Size(38, 17);
|
||||
this.rbJs1.TabIndex = 0;
|
||||
this.rbJs1.Text = "js1";
|
||||
this.rbJs1.UseVisualStyleBackColor = true;
|
||||
this.lblJsAssignment.AutoSize = true;
|
||||
this.lblJsAssignment.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.lblJsAssignment.Location = new System.Drawing.Point(134, 21);
|
||||
this.lblJsAssignment.Name = "lblJsAssignment";
|
||||
this.lblJsAssignment.Size = new System.Drawing.Size(22, 13);
|
||||
this.lblJsAssignment.TabIndex = 1;
|
||||
this.lblJsAssignment.Text = "jsx";
|
||||
//
|
||||
// UC_JoyPanel
|
||||
//
|
||||
@ -559,10 +515,7 @@ private void InitializeComponent( )
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.GroupBox groupBox1;
|
||||
private System.Windows.Forms.RadioButton rbJsNA;
|
||||
private System.Windows.Forms.RadioButton rbJs4;
|
||||
private System.Windows.Forms.RadioButton rbJs3;
|
||||
private System.Windows.Forms.RadioButton rbJs2;
|
||||
private System.Windows.Forms.RadioButton rbJs1;
|
||||
private System.Windows.Forms.Label lblJsAssignment;
|
||||
private System.Windows.Forms.Label label1;
|
||||
}
|
||||
}
|
||||
|
@ -265,15 +265,11 @@ public int JsAssignment
|
||||
set
|
||||
{
|
||||
m_jsAssignment = value;
|
||||
switch ( m_jsAssignment ) {
|
||||
case 1: rbJs1.Checked = true; break;
|
||||
case 2: rbJs2.Checked = true; break;
|
||||
case 3: rbJs3.Checked = true; break;
|
||||
case 4: rbJs4.Checked = true; break;
|
||||
default:
|
||||
rbJsNA.Checked = true;
|
||||
m_jsAssignment = value;
|
||||
break;
|
||||
if ( ( m_jsAssignment >= 1 ) && ( m_jsAssignment <= 8 ) ) {
|
||||
lblJsAssignment.Text = String.Format( "js{0}", m_jsAssignment );
|
||||
}
|
||||
else {
|
||||
lblJsAssignment.Text = "not assigned";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -32,5 +32,5 @@
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion( "2.3.0.23" )]
|
||||
[assembly: AssemblyFileVersion( "2.3.0.23" )]
|
||||
[assembly: AssemblyVersion( "2.4.0.24" )]
|
||||
[assembly: AssemblyFileVersion( "2.4.0.24" )]
|
||||
|
@ -26,8 +26,8 @@
|
||||
<UpdatePeriodically>false</UpdatePeriodically>
|
||||
<UpdateRequired>false</UpdateRequired>
|
||||
<MapFileExtensions>true</MapFileExtensions>
|
||||
<ApplicationRevision>23</ApplicationRevision>
|
||||
<ApplicationVersion>2.3.0.%2a</ApplicationVersion>
|
||||
<ApplicationRevision>24</ApplicationRevision>
|
||||
<ApplicationVersion>2.4.0.%2a</ApplicationVersion>
|
||||
<UseApplicationTrust>false</UseApplicationTrust>
|
||||
<BootstrapperEnabled>true</BootstrapperEnabled>
|
||||
</PropertyGroup>
|
||||
|
@ -11,6 +11,67 @@
|
||||
<action name="v_attack1_group3" />
|
||||
</actiongroup>
|
||||
|
||||
<CustomisationUIHeader>
|
||||
<keyboard label="Default" description="@ui_KeyboardDefaultDesc" image="KeyboardDefault" />
|
||||
<xboxpad label="Default" description="@ui_GamepadDefaultDesc" image="GamePadDefault" />
|
||||
<joystick label="Default" description="@ui_JoystickDefaultDesc" image="JoystickDefault" />
|
||||
</CustomisationUIHeader>
|
||||
|
||||
<!-- Setup default input options -->
|
||||
<optiontree type="shared" name="root">
|
||||
<!-- Digital -->
|
||||
<optiongroup name="pilot">
|
||||
<optiongroup name="pilot_aim" sensitivity="0.025" />
|
||||
</optiongroup>
|
||||
</optiontree>
|
||||
<optiontree type="keyboard" name="root">
|
||||
<!-- Mouse axis -->
|
||||
<optiongroup name="pilot">
|
||||
<optiongroup name="pilot_movepitch" invert_cvar="v_mouseInvert" />
|
||||
</optiongroup>
|
||||
</optiontree>
|
||||
<optiontree type="xboxpad" name="root">
|
||||
<!-- LS / RS -->
|
||||
<optiongroup name="pilot" sensitivity_cvar="v_gamepadSensitivity" exponent_cvar="v_gamepadNonLinearity">
|
||||
<nonlinearity_curve>
|
||||
<point in="0.1" out="0.001"/>
|
||||
<point in="0.25" out="0.02"/>
|
||||
<point in="0.5" out="0.1"/>
|
||||
<point in="0.75" out="0.125"/>
|
||||
<point in="0.85" out="0.15"/>
|
||||
<point in="0.90" out="0.175"/>
|
||||
<point in="0.925" out="0.25"/>
|
||||
<point in="0.94" out="0.45"/>
|
||||
<point in="0.95" out="0.75"/>
|
||||
</nonlinearity_curve>
|
||||
<optiongroup name="pilot_aim" sensitivity_cvar="v_gamepadAimSensitivity" exponent_cvar="v_gamepadAimNonLinearity">
|
||||
<optiongroup name="pilot_aimpitch" invert_cvar="v_gamepadInvert" />
|
||||
</optiongroup>
|
||||
<optiongroup name="pilot_move">
|
||||
<optiongroup name="pilot_movepitch" invert_cvar="v_gamepadInvert" />
|
||||
<optiongroup name="pilot_moveyaw" invert_cvar="cl_invertYaw" />
|
||||
</optiongroup>
|
||||
<optiongroup name="pilot_view">
|
||||
<nonlinearity_curve reset="1" />
|
||||
<optiongroup name="pilot_viewpitch" invert_cvar="cl_invertController" />
|
||||
</optiongroup>
|
||||
</optiongroup>
|
||||
</optiontree>
|
||||
<optiontree type="joystick" instances="4" name="root">
|
||||
<!-- Normal and twist axis -->
|
||||
<optiongroup name="pilot" sensitivity_cvar="v_joystickSensitivity" exponent_cvar="v_joystickNonLinearity">
|
||||
<optiongroup name="pilot_move">
|
||||
<optiongroup name="pilot_moveyaw" invert_cvar="cl_invertYaw" />
|
||||
</optiongroup>
|
||||
</optiongroup>
|
||||
<optiongroup name="pilot_rot" sensitivity_cvar="v_joystickTwistSensitivity" exponent_cvar="v_joystickTwistNonLinearity">
|
||||
<optiongroup name="pilot_rot_move">
|
||||
<optiongroup name="pilot_rot_moveyaw" invert_cvar="cl_invertYaw" />
|
||||
</optiongroup>
|
||||
</optiongroup>
|
||||
<optiongroup name="pilot_throttle" invert="1"/>
|
||||
</optiontree>
|
||||
|
||||
<actionmap name="debug" version="22">
|
||||
<!-- debug keys - move to debug when we can switch devmode-->
|
||||
<action name="flymode" onPress="1" noModifiers="1" keyboard="f3" />
|
||||
@ -19,39 +80,38 @@
|
||||
<action name="ai_DebugCenterViewAgent" onPress="1" noModifiers="1" keyboard="np_divide" />
|
||||
<action name="togglepdrawhelpers" onPress="1" noModifiers="1" keyboard="f10" />
|
||||
<action name="ulammo" onPress="1" noModifiers="1" keyboard="" />
|
||||
<!--<action name="debug" onPress="1" keyboard="7" />-->
|
||||
<!--<action name="thirdperson" onPress="1" noModifiers="1" keyboard="f1" xboxpad="xi_dpad_up" ps3pad="pad_up"/>-->
|
||||
<!-- debug keys - end -->
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="multiplayer" version="24">
|
||||
<actionmap name="multiplayer" version="25">
|
||||
<!-- multiplayer specific keys -->
|
||||
<action name="self_destruct" onHold="1" holdRepeatDelay="-1" holdTriggerDelay="0.5" keyboard="ralt+backspace" xboxpad="" joystick="" />
|
||||
<action name="respawn" onPress="1" keyboard="x" xboxpad="xi_x" />
|
||||
<action name="retry" onPress="1" keyboard="x" xboxpad="xi_x" />
|
||||
<action name="ready" onPress="1" keyboard="x" xboxpad="xi_x" />
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="singleplayer" version="22">
|
||||
<actionmap name="singleplayer" version="23">
|
||||
<!-- singleplayer specific keys -->
|
||||
<action name="save" onPress="1" consoleCmd="1" keyboard="f5" />
|
||||
<action name="loadLastSave" onPress="1" consoleCmd="1" keyboard="f9" />
|
||||
<action name="load" onPress="1" consoleCmd="1" keyboard="f8" />
|
||||
<action name="retry" onPress="1" keyboard="x" xboxpad="xi_x" />
|
||||
<action name="ready" onPress="1" keyboard="x" xboxpad="xi_x" />
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="default" version="24">
|
||||
<action name="hmd_toggle" onPress="1" keyboard="np_1" />
|
||||
<action name="hmd_center" onPress="1" keyboard="np_2" />
|
||||
<!-- default keys -->
|
||||
<action name="screenshot" onPress="1" keyboard="f12" />
|
||||
|
||||
<action name="skip_cutscene" onPress="1" noModifiers="1" keyboard="space" />
|
||||
<action name="cancel_cinematic" onPress="1" noModifiers="1" keyboard="space" xboxpad="xi_back"/>
|
||||
<action name="cam_toggle_cinematic" onPress="1" keyboard="ralt+c" />
|
||||
<action name="objectives" onPress="1" onRelease="1" noModifiers="0" keyboard="o" />
|
||||
<!-- UI keys -->
|
||||
<action name="ui_toggle_pause" onPress="1" xboxpad="xi_start" ps3pad="pad_start"/>
|
||||
<action name="ui_start_pause" onPress="1" keyboard="escape"/>
|
||||
<!-- CIG BEGIN - nfaletra @ IllFonic - The ui_start_pause menu can't be closed in FPS mode. Moving the key to be a toggle instead -->
|
||||
<action name="ui_toggle_pause" onPress="1" keyboard="escape" xboxpad="xi_start" ps3pad="pad_start"/>
|
||||
<!--<action name="ui_start_pause" onPress="1" keyboard="escape"/>-->
|
||||
<!-- CIG END -->
|
||||
<action name="ui_click" onPress="1" onRelease="1" xboxpad="xi_a" ps3pad="pad_cross">
|
||||
<keyboard>
|
||||
<inputdata input="enter"/>
|
||||
@ -127,12 +187,9 @@
|
||||
<action name="ui_confirm" onPress="1" onRelease="1" xboxpad="xi_y" ps3pad="pad_triangle"/>
|
||||
<action name="ui_reset" onPress="1" onRelease="1" xboxpad="xi_x" ps3pad="pad_square"/>
|
||||
<action name="ui_skip_video" onPress="1" onRelease="1" keyboard="space" xboxpad="xi_a" ps3pad="pad_cross"/>
|
||||
|
||||
<!-- Trap alt+tab to stop actions on alt or tab from firing -->
|
||||
<action name="windows_tabbing" keyboard="lalt+tab" />
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="player" version="24">
|
||||
<actionmap name="player" version="25">
|
||||
<!-- player keys -->
|
||||
<action name="use" onPress="1" onRelease="1" keyboard="f" xboxpad="xi_y" ps3pad="pad_triangle" />
|
||||
<action name="attack1" onPress="1" onRelease="1" onHold="1" keyboard="mouse1" xboxpad="xi_triggerr_btn" ps3pad="pad_r2" joystick="js1_button1"/>
|
||||
@ -140,16 +197,22 @@
|
||||
<action name="xi_zoom" onPress="1" onRelease="1" onHold="1" xboxpad="xi_triggerl_btn" ps3pad="pad_l2"/>
|
||||
<action name="firemode" onPress="1" keyboard="x" xboxpad="xi_dpad_down" ps3pad="pad_down"/>
|
||||
<action name="cycle_spectator_mode" onPress="1" keyboard="space" />
|
||||
<action name="prev_spectator_target" onPress="1" keyboard="left" xboxpad="xi_dpad_right" ps3pad="pad_right"/>
|
||||
<action name="next_spectator_target" onPress="1" keyboard="right" xboxpad="xi_dpad_left" ps3pad="pad_left"/>
|
||||
<action name="revive" onPress="1" keyboard="mouse1" xboxpad="xi_triggerr_btn" ps3pad="pad_r2"/>
|
||||
<action name="stabilize" onPress="1" onRelease="1" keyboard="lshift" xboxpad="xi_thumbl" ps3pad="pad_l1" />
|
||||
<action name="prone" onPress="1" keyboard="x" xboxpad="xi_dpad_down" ps3pad="pad_down"/>
|
||||
<action name="cycle_spectator_mode" onPress="1" keyboard="space" />
|
||||
<action name="spectate_next_target" onPress="1" keyboard="mouse2" xboxpad="xi_shoulderr" joystick="js1_button1"/>
|
||||
<action name="spectate_prev_target" onPress="1" keyboard="mouse1" xboxpad="xi_shoulderl" joystick="js1_button2"/>
|
||||
<action name="spectate_zoom" keyboard="maxis_z"/>
|
||||
<action name="spectate_zoom_in" onPress="1" onHold="1" xboxpad="xi_triggerr_btn" joystick="js1_hat1_up"/>
|
||||
<action name="spectate_zoom_out" onPress="1" onHold="1" xboxpad="xi_triggerl_btn" joystick="js1_hat1_down"/>
|
||||
<action name="spectate_rotateyaw" joystick="js1_x" xboxpad="xi_thumblx" ps3pad="pad_sticklx"/>
|
||||
<action name="spectate_rotatepitch" joystick="js1_y" xboxpad="xi_thumbly" ps3pad="pad_stickly"/>
|
||||
<action name="moveleft" onPress="1" onRelease="1" retriggerable="1" keyboard="a" />
|
||||
<action name="moveright" onPress="1" onRelease="1" retriggerable="1" keyboard="d" />
|
||||
<action name="moveforward" onPress="1" onRelease="1" retriggerable="1" keyboard="w" />
|
||||
<action name="moveback" onPress="1" onRelease="1" retriggerable="1" keyboard="s" />
|
||||
<action name="jump" onPress="1" onRelease="1" keyboard="space"/>
|
||||
<action name="crouch" onPress="1" onRelease="1" retriggerable="1" keyboard="c"/>
|
||||
<action name="prone" onPress="1" onHold="1" keyboard="z" />
|
||||
<action name="sprint" onPress="1" onRelease="1" retriggerable="1" keyboard="lshift" xboxpad="xi_thumbl" ps3pad="pad_l1" />
|
||||
<action name="special" onPress="1" onRelease="1" keyboard="t" xboxpad="xi_thumbr" />
|
||||
<action name="leanleft" onPress="1" onRelease="1" onHold="1" keyboard="q" />
|
||||
@ -158,11 +221,6 @@
|
||||
<action name="drop" onPress="1" onRelease="1" keyboard="j"/>
|
||||
<action name="nextitem" onPress="1" keyboard="mwheel_up" xboxpad="xi_dpad_right" ps3pad="pad_right"/>
|
||||
<action name="previtem" onPress="1" keyboard="mwheel_down" />
|
||||
<action name="small" onPress="1" keyboard="1" />
|
||||
<action name="medium" onPress="1" keyboard="2" />
|
||||
<action name="explosive" onPress="1" keyboard="3" />
|
||||
<action name="suitmode" onPress="1" keyboard="4" />
|
||||
<action name="utility" onPress="1" keyboard="5" />
|
||||
<action name="handgrenade" onPress="1" keyboard="h" />
|
||||
<action name="grenade" onPress="1" onRelease="1" keyboard="g" />
|
||||
<action name="rotateyaw" keyboard="maxis_x" />
|
||||
@ -175,6 +233,9 @@
|
||||
</action>
|
||||
<!-- CIG BEGIN - ernst @ IllFonic : Adding magnetic boot support. -->
|
||||
<action name="toggle_magnetic_boots" onPress="1" keyboard="b" xboxpad="xi_x" ps3pad="pad_square"/>
|
||||
<!-- CIG BEGIN - nick @ IllFonic : Adding visor mode switching. -->
|
||||
<action name="visor_next_mode" onPress="1" keyboard="semicolon" />
|
||||
<action name="visor_prev_mode" onPress="1" keyboard="apostrophe" />
|
||||
<!-- CIG END -->
|
||||
<!-- CONSOLE SPECIFIC CONTROLS START -->
|
||||
<action name="xi_movey" xboxpad="xi_thumbly" ps3pad="pad_stickly"/>
|
||||
@ -186,8 +247,7 @@
|
||||
|
||||
<!-- CONSOLE SPECIFIC CONTROLS END -->
|
||||
<action name="thirdperson" onPress="1" noModifiers="1" keyboard="insert" xboxpad="xi_triggerl_btn+xi_thumbr" ps3pad="pad_up"/>
|
||||
<action name="enable_mouse_input" onPress="1" onRelease="0" retriggerable="0" keyboard="tab"/>
|
||||
<action name="disable_mouse_input" onPress="0" onRelease="1" retriggerable="0" keyboard="tab"/>
|
||||
<action name="toggle_cursor_input" onPress="1" onRelease="1" retriggerable="0" keyboard="tab" xboxpad="xi_back" />
|
||||
<action name="free_thirdperson_camera" onPress="1" onRelease="1" retriggerable="0" keyboard="g" xboxpad="xi_dpad_left"/>
|
||||
<!-- HMD -->
|
||||
<action name="hmd_rotateyaw" keyboard="HMD_Yaw" />
|
||||
@ -222,7 +282,7 @@
|
||||
<action name="flycam_clear" onPress="1" keyboard="c" xboxpad="xi_y" ps3pad="pad_triangle"/>
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="vehicle_general" version="26">
|
||||
<actionmap name="vehicle_general" version="27">
|
||||
<!-- vehicle keys -->
|
||||
<action name="v_boost" onPress="1" onRelease="1" keyboard="lshift" xboxpad="xi_thumbr" ps3pad="pad_l1"/>
|
||||
<action name="v_exit" onPress="1" onRelease="1" onHold="1" xboxpad="xi_y" ps3pad="pad_triangle" keyboard="f"/>
|
||||
@ -238,10 +298,8 @@
|
||||
<action name="v_view_pitch_mouse" keyboard="maxis_y"/>
|
||||
<action name="v_view_yaw" xboxpad="xi_thumbrx" ps3pad="pad_stickrx"/>
|
||||
<action name="v_view_pitch" xboxpad="xi_thumbry" ps3pad="pad_stickry"/>
|
||||
<action name="v_enable_mouse_input" onPress="1" onRelease="0" retriggerable="0" keyboard="tab"/>
|
||||
<action name="v_disable_mouse_input" onPress="0" onRelease="1" retriggerable="0" keyboard="tab"/>
|
||||
<action name="v_toggle_cursor_input" onPress="0" onRelease="1" retriggerable="0" keyboard="tab" xboxpad="xi_back" />
|
||||
<action name="v_target_cycle_all_fwd" onPress="0" onRelease="1" retriggerable="0" keyboard="lshift"/>
|
||||
<action name="v_target_toggle_lock_selected" onPress="1" onHold="1" onRelease="1" retriggerable="0" keyboard="capslock"/>
|
||||
<!-- This needs to be in vehicle_general to allow the weapons mount to fire in the hangar -->
|
||||
<action name="v_attack1_group1" onPress="1" onRelease="1" onHold="1" keyboard="mouse1" xboxpad="xi_triggerr_btn" ps3pad="pad_r2" joystick="js1_button1" />
|
||||
|
||||
@ -273,112 +331,6 @@
|
||||
|
||||
<!-- STAR CITIZEN ACTION MAPS START -->
|
||||
|
||||
<actionmap name="spaceship" version="29">
|
||||
<!-- NOTE These inputs are in ADDITION to the action map "vehicle_general" which is always initialized -->
|
||||
<!-- Flight Control System Inputs, Keyboard -->
|
||||
<action name="v_yaw_left" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard="a" />
|
||||
<action name="v_yaw_right" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard="d" />
|
||||
<action name="v_pitch_down" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard="w"/>
|
||||
<action name="v_pitch_up" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard="s"/>
|
||||
<action name="v_roll_left" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard="q"/>
|
||||
<action name="v_roll_right" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard="e"/>
|
||||
<action name="v_use_docking" onPress="1" onRelease="1" onHold="1" keyboard="space" xboxpad="xi_a" ps3pad="pad_cross"/>
|
||||
|
||||
<!-- Head look Inputs, Keyboard -->
|
||||
<action name="v_view_yaw_right" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard="right"/>
|
||||
<action name="v_view_yaw_left" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard="left"/>
|
||||
<action name="v_view_pitch_up" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard="up"/>
|
||||
<action name="v_view_pitch_down" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard="down"/>
|
||||
|
||||
<!-- Flight Control System Inputs, Gamepad/Joystick -->
|
||||
<action name="v_pitch" xboxpad="xi_thumbly" ps3pad="pad_stickly" joystick="js1_y"/>
|
||||
<action name="v_pitch_gamepad" xboxpad="xi_thumbly" ps3pad="pad_stickly"/>
|
||||
<action name="v_pitch_flightstick" joystick="js1_y"/>
|
||||
<action name="v_yaw" xboxpad="xi_thumblx" ps3pad="pad_sticklx" joystick="js1_rotz"/>
|
||||
<action name="v_roll" xboxpad="xi_triggerl_btn+xi_thumblx" joystick="js1_x"/>
|
||||
|
||||
<!--<action name="v_throttle_up" onPress="1" onHold="1" keyboard="equals" xboxpad="xi_shoulderr" ps3pad="pad_r1"/>
|
||||
<action name="v_throttle_down" onPress="1" onHold="1" keyboard="minus" xboxpad="xi_shoulderl" ps3pad="pad_l1"/>-->
|
||||
<action name="v_throttle" joystick="js1_throttlez"/>
|
||||
<action name="v_afterburner" onPress="1" onRelease="1" onHold="1" keyboard="lshift" xboxpad="xi_a" ps3pad="pad_cross" />
|
||||
<action name="v_brake" onPress="1" onRelease="1" onHold="1" keyboard="space" xboxpad="xi_b" ps3pad="pad_circle" />
|
||||
|
||||
<!-- Camera views Inputs -->
|
||||
<action name="v_view_mode" onPress="1" onRelease="1" keyboard="tab" xboxpad="xi_thumbr" ps3pad="pad_r3"/>
|
||||
<action name="v_view_option" onPress="1" onRelease="1" keyboard="pgup" xboxpad="xi_triggerl_btn" joystick=""/>
|
||||
|
||||
<!-- Weapon System Inputs -->
|
||||
<action name="v_attack1_group1" onPress="1" onRelease="1" onHold="1" keyboard="mouse1" xboxpad="xi_triggerr_btn" ps3pad="pad_r2" joystick="js1_button1" />
|
||||
<action name="v_attack1_group2" onPress="1" onRelease="1" onHold="1" keyboard="mouse2" xboxpad="xi_a" ps3pad="pad_cross" joystick="js1_button2" />
|
||||
<action name="v_weapon_cycle_firemode_fwd" onPress="1" keyboard="f" />
|
||||
<action name="v_weapon_cycle_ammo_fwd" onPress="1" keyboard="b" />
|
||||
<action name="v_weapon_toggle_ai" onPress="1" keyboard="l" />
|
||||
|
||||
<!-- Missile Inputs -->
|
||||
<action name="v_weapon_cycle_missile_fwd" onPress="1" keyboard="n" />
|
||||
<action name="v_weapon_toggle_arm_missile" onPress="1" onHold="1" holdRepeatDelay="-1" holdTriggerDelay="0.4" onRelease="1" keyboard="m" xboxpad="xi_reserved" joystick=""/>
|
||||
<action name="v_weapon_launch_missile" onPress="1" keyboard="mouse2" />
|
||||
|
||||
<!-- Lights -->
|
||||
<!--
|
||||
ju - moved to vehicle_default for buggy usage
|
||||
<action name="v_lights" onPress="1" keyboard="o" />
|
||||
-->
|
||||
|
||||
<!-- Debuging / Test Inputs -->
|
||||
<action name="v_debug_1" onPress="1" onRelease="1" keyboard="" />
|
||||
|
||||
<!-- HMD -->
|
||||
<action name="v_view_yaw_absolute" keyboard="HMD_Yaw" />
|
||||
<action name="v_view_pitch_absolute" keyboard="HMD_Pitch" />
|
||||
<action name="v_view_roll_absolute" keyboard="HMD_Roll" />
|
||||
|
||||
<!-- Shields -->
|
||||
<action name="v_shield_raise_level_forward" onPress="1" onRelease="1" onHold="1" keyboard="rctrl+np_8"/>
|
||||
<action name="v_shield_raise_level_back" onPress="1" onRelease="1" onHold="1" keyboard="rctrl+np_2"/>
|
||||
<action name="v_shield_raise_level_left" onPress="1" onRelease="1" onHold="1" keyboard="rctrl+np_4"/>
|
||||
<action name="v_shield_raise_level_right" onPress="1" onRelease="1" onHold="1" keyboard="rctrl+np_6"/>
|
||||
<action name="v_shield_raise_level_up" onPress="1" onRelease="1" onHold="1" keyboard="rctrl+np_9"/>
|
||||
<action name="v_shield_raise_level_down" onPress="1" onRelease="1" onHold="1" keyboard="rctrl+np_7"/>
|
||||
<action name="v_shield_reset_level" onPress="0" onRelease="1" onHold="0" keyboard="rctrl+np_5"/>
|
||||
|
||||
<!-- Exit -->
|
||||
<action name="v_eject" onPress="1" onHold="1" keyboard="ralt+l"/>
|
||||
|
||||
<!-- Input options -->
|
||||
<options>
|
||||
<option sensitivity_cvar="v_gamepadSensitivity" nonlinearity="2">
|
||||
<optiondata input="xi_thumblx" action="v_yaw" invert_cvar="cl_invertYaw" />
|
||||
<optiondata input="xi_thumblx" />
|
||||
<optiondata input="xi_thumbly" action="v_pitch" invert_cvar="v_gamepadInvert" />
|
||||
<optiondata input="xi_thumbly" />
|
||||
</option>
|
||||
<option sensitivity_cvar="v_joystickSensitivity" nonlinearity="2">
|
||||
<optiondata input="js1_x" />
|
||||
<optiondata input="js1_y" action="v_yaw" invert_cvar="cl_invertYaw" />
|
||||
<optiondata input="js1_y" />
|
||||
</option>
|
||||
<option sensitivity_cvar="v_joystickTwistSensitivity" nonlinearity_cvar="v_joystickTwistNonLinearity">
|
||||
<optiondata input="js1_rotz" />
|
||||
</option>
|
||||
</options>
|
||||
|
||||
<!-- LEGACY -->
|
||||
<options>
|
||||
<option input="xboxpad" sensitivity_cvar="v_gamepadSensitivity" nonlinearity="2">
|
||||
<optiondata action="v_pitch" invert_cvar="cl_invertControllerFlight" />
|
||||
<optiondata action="v_yaw" />
|
||||
<optiondata action="v_roll" />
|
||||
</option>
|
||||
<option input="joystick" sensitivity_cvar="v_joystickSensitivity" nonlinearity="2">
|
||||
<optiondata action="v_pitch" />
|
||||
<optiondata action="v_yaw" />
|
||||
<optiondata action="v_roll" />
|
||||
</option>
|
||||
</options>
|
||||
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="spaceship_general" version="2">
|
||||
<!-- Action map for a spaceship bits and pieces -->
|
||||
|
||||
@ -389,11 +341,18 @@
|
||||
<!-- Power managements -->
|
||||
<action name="v_power_cycle_preset_fwd" onPress="1" keyboard="u" xboxpad="" joystick="" />
|
||||
<action name="v_power_cycle_preset_back" onPress="1" keyboard="i" xboxpad="" joystick="" />
|
||||
<action name="v_power_focus_group_1" onPress="1" onRelease="1" onHold="1" holdTriggerDelay="0.15" keyboard="1" xboxpad="" joystick="" />
|
||||
<action name="v_power_focus_group_2" onPress="1" onRelease="1" onHold="1" holdTriggerDelay="0.15" keyboard="2" xboxpad="" joystick="" />
|
||||
<action name="v_power_focus_group_3" onPress="1" onRelease="1" onHold="1" holdTriggerDelay="0.15" keyboard="3" xboxpad="" joystick="" />
|
||||
<action name="v_power_reset_focus" onPress="1" onRelease="1" onHold="1" holdTriggerDelay="0.15" keyboard="4" xboxpad="" joystick="" />
|
||||
|
||||
<!-- Exit -->
|
||||
<action name="v_exit" onPress="1" onRelease="1" onHold="1" keyboard="f" xboxpad="xi_a" joystick="" />
|
||||
<action name="v_eject" onPress="1" onHold="1" keyboard="ralt+l" xboxpad="xi_triggerl_btn+xi_back" joystick="jsx_reserved" />
|
||||
|
||||
<!-- Self destruct -->
|
||||
<action name="v_self_destruct" onHold="1" holdRepeatDelay="-1" holdTriggerDelay="0.5" keyboard="ralt+backspace" xboxpad="" joystick="" />
|
||||
|
||||
<!-- Debuging / Test Inputs -->
|
||||
<action name="v_debug_1" onPress="1" onRelease="1" keyboard="" />
|
||||
<!-- CIG BEGIN David Campbell BHVR -->
|
||||
@ -401,139 +360,202 @@
|
||||
<!-- CIG END David Campbell BHVR -->
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="spaceship_view" version="16">
|
||||
<actionmap name="spaceship_view" version="19">
|
||||
<!-- Camera view -->
|
||||
<action name="v_view_yaw_left" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard=" " joystick="js1_hat2_left"/>
|
||||
<action name="v_view_yaw_right" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard=" " joystick="js1_hat2_right"/>
|
||||
<action name="v_view_yaw" xboxpad="xi_thumbrx" joystick="jsx_reserved"/>
|
||||
<action name="v_view_aim_yaw" xboxpad="xi_taxisrx" joystick="jsx_reserved"/>
|
||||
<action name="v_view_yaw_toggled_mouse" keyboard="maxis_x"/>
|
||||
<action name="v_view_yaw_mouse" keyboard="maxis_x"/>
|
||||
<action name="v_view_yaw_absolute" keyboard="HMD_Yaw"/>
|
||||
<action name="v_view_pitch_up" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard=" " joystick="js1_hat2_down"/>
|
||||
<action name="v_view_pitch_down" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard=" " joystick="js1_hat2_up"/>
|
||||
<action name="v_view_pitch" xboxpad="xi_thumbry" joystick="jsx_reserved"/>
|
||||
<action name="v_view_aim_pitch" xboxpad="xi_taxisry" joystick="jsx_reserved"/>
|
||||
<action name="v_view_pitch_toggled_mouse" keyboard="maxis_y"/>
|
||||
<action name="v_view_pitch_mouse" keyboard="maxis_y"/>
|
||||
<action name="v_view_pitch_absolute" keyboard="HMD_Pitch"/>
|
||||
<action name="v_view_roll_absolute" keyboard="HMD_Roll" />
|
||||
<action name="v_view_cycle_fwd" onPress="1" keyboard="insert" xboxpad="xi_triggerl_btn+xi_thumbr" joystick="js1_button6"/>
|
||||
<action name="v_view_cycle_internal_fwd" onPress="1" keyboard="home" xboxpad="" joystick=""/>
|
||||
<action name="v_view_option" onPress="1" onRelease="1" keyboard="tab" xboxpad="xi_triggerl_btn" joystick="jsx_reserved"/>
|
||||
<action name="v_view_option" onPress="1" onRelease="1" keyboard=" " xboxpad="xi_reserved" joystick="jsx_reserved"/>
|
||||
<action name="v_view_mode" onPress="1" onRelease="1" keyboard="pgup" xboxpad="xi_thumbr" joystick="jsx_reserved"/>
|
||||
<action name="v_view_zoom_in" onPress="1" onHold ="1" keyboard="mwheel_up" xboxpad="xi_dpad_up" joystick="js1_hat1_up" />
|
||||
<action name="v_view_zoom_out" onPress="1" onHold ="1" keyboard="mwheel_down" xboxpad="xi_dpad_down" joystick="js1_hat1_down" />
|
||||
<action name="v_view_interact" onPress="1" onRelease="1" keyboard="f" xboxpad="xi_a" joystick=""/>
|
||||
<action name="v_view_toggle_mouse" onRelease="1" keyboard="tab" releaseTriggerThreshold="0.25"/>
|
||||
<action name="v_view_dynamic_focus_in" onPress="1" keyboard="mwheel_up"/>
|
||||
<action name="v_view_dynamic_focus_out" onPress="1" keyboard="mwheel_down"/>
|
||||
<action name="v_view_cycle_headlook_mode" onRelease="1" releaseTriggerThreshold="0.25" keyboard="tab" xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_view_dynamic_focus" keyboard="maxis_z"/>
|
||||
<action name="v_view_dynamic_focus_toggle" onPress="1" xboxpad="xi_thumbr" joystick="js1_button11"/>
|
||||
<action name="v_view_track_target" onPress="1" onRelease="1" keyboard="lctrl+tab" xboxpad="" joystick=""/>
|
||||
|
||||
<!-- Input options -->
|
||||
<options>
|
||||
<!--<option sensitivity="0.0015" sensitivity_cvar="cl_sensitivity">
|
||||
<optiondata input="maxis_y" />
|
||||
<optiondata input="maxis_x" />
|
||||
</option>-->
|
||||
<option sensitivity_cvar="v_gamepadAimSensitivity" nonlinearity_cvar="v_gamepadAimNonLinearity">
|
||||
<nonlinearity_curve>
|
||||
<point in="0.1" out="0.006"/>
|
||||
<point in="0.25" out="0.04"/>
|
||||
<point in="0.5" out="0.15"/>
|
||||
<point in="0.75" out="0.37"/>
|
||||
<point in="0.85" out="0.5"/>
|
||||
</nonlinearity_curve>
|
||||
<optiondata input="xi_taxisrx" action="v_view_aim_yaw" />
|
||||
<optiondata input="xi_taxisry" action="v_view_aim_pitch" invert_cvar="cl_invertController" />
|
||||
</option>
|
||||
<option>
|
||||
<optiondata input="xi_thumbry" invert_cvar="cl_invertController" />
|
||||
</option>
|
||||
</options>
|
||||
<!-- Pad stick input options -->
|
||||
<optiongroup type="xboxpad">
|
||||
<option group="pilot_view" />
|
||||
<!-- currently done directly in PlayerInput code: <option action="v_view_pitch" group="pilot_viewpitch" /> -->
|
||||
</optiongroup>
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="spaceship_movement" version="10">
|
||||
<actionmap name="spaceship_movement" version="13" UILabel="@ui_CustomisationGroupSpaceFlight">
|
||||
<!-- Action map for a spaceship piloting -->
|
||||
|
||||
<!-- IFCS (requires avionics) -->
|
||||
<action name="v_pitch_up" onHold="1" onRelease="1" retriggerable="1" keyboard=" " xboxpad="" joystick=""/>
|
||||
<action name="v_pitch_down" onHold="1" onRelease="1" retriggerable="1" keyboard=" " xboxpad="" joystick=""/>
|
||||
<action name="v_pitch" xboxpad="xi_taxisly" joystick="js1_y"/>
|
||||
<action name="v_pitch_up" onPress="1" onRelease="1" retriggerable="1" keyboard=" " xboxpad="" joystick="" UILabel="@ui_CustomisationInputPitchUp" UIDescription="@ui_CustomisationInputPitchUpDesc" />
|
||||
<action name="v_pitch_down" onPress="1" onRelease="1" retriggerable="1" keyboard=" " xboxpad="" joystick=""/>
|
||||
<action name="v_pitch" xboxpad="xi_thumbly" joystick="js1_y" UILabel="@ui_CustomisationInputPitch" UIDescription="@ui_CustomisationInputPitchDesc" />
|
||||
<action name="v_pitch_mouse" keyboard="maxis_y"/>
|
||||
<action name="v_yaw_left" onHold="1" onRelease="1" retriggerable="1" keyboard=" " xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_yaw_right" onHold="1" onRelease="1" retriggerable="1" keyboard=" " xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_yaw" xboxpad="xi_taxislx" joystick="js1_rotz"/>
|
||||
<action name="v_yaw_left" onPress="1" onRelease="1" retriggerable="1" keyboard=" " xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_yaw_right" onPress="1" onRelease="1" retriggerable="1" keyboard=" " xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_yaw" xboxpad="xi_thumblx" joystick="js1_rotz"/>
|
||||
<action name="v_yaw_mouse" keyboard="maxis_x"/>
|
||||
<action name="v_toggle_relative_mouse_mode" onPress="1" onRelease="1" keyboard="lctrl+f" xboxpad="" joystick=""/>
|
||||
<action name="v_roll_left" onHold="1" onRelease="1" retriggerable="1" keyboard="a" xboxpad="" joystick=""/>
|
||||
<action name="v_roll_right" onHold="1" onRelease="1" retriggerable="1" keyboard="d" xboxpad="" joystick=""/>
|
||||
<action name="v_roll" xboxpad="xi_triggerl_btn+xi_taxislx" joystick="js1_x"/>
|
||||
<action name="v_toggle_relative_mouse_mode" onPress="1" onRelease="1" keyboard="lctrl+c" xboxpad="" joystick=""/>
|
||||
<action name="v_roll_left" onPress="1" onRelease="1" retriggerable="1" keyboard="a" xboxpad="" joystick=""/>
|
||||
<action name="v_roll_right" onPress="1" onRelease="1" retriggerable="1" keyboard="d" xboxpad="" joystick=""/>
|
||||
<action name="v_roll" xboxpad="xi_triggerl_btn+xi_thumblx" joystick="js1_x"/>
|
||||
<action name="v_throttle_toggle_minmax" onPress="1" keyboard="backspace" xboxpad="" joystick="" />
|
||||
<action name="v_throttle_zero" onPress="1" keyboard="" joystick="" >
|
||||
<action name="v_throttle_zero" onPress="1" joystick="" >
|
||||
<xboxpad multiTap="2" input="xi_shoulderl" />
|
||||
<keyboard multiTap="2" input="s" />
|
||||
</action>
|
||||
<action name="v_throttle_100" onPress="1" keyboard="" xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_throttle_up" onPress="1" onHold="1" onRelease="1" keyboard="w" xboxpad="xi_shoulderr" joystick="" />
|
||||
<action name="v_throttle_down" onPress="1" onHold="1" onRelease="1" keyboard ="s" xboxpad="xi_shoulderl" joystick=""/>
|
||||
<action name="v_throttle" keyboard="" xboxpad="" joystick="js1_throttlez" />
|
||||
<action name="v_throttle_100" onPress="1" joystick="jsx_reserved" >
|
||||
<xboxpad multiTap="2" input="xi_shoulderr" />
|
||||
<keyboard multiTap="2" input="w" />
|
||||
</action>
|
||||
<action name="v_throttle_up" onPress="1" onRelease="1" keyboard="w" xboxpad="xi_shoulderr" joystick="" />
|
||||
<action name="v_throttle_down" onPress="1" onRelease="1" keyboard ="s" xboxpad="xi_shoulderl" joystick=""/>
|
||||
<action name="v_throttle" keyboard="" xboxpad="xi_reserved" joystick="js1_throttlez" />
|
||||
<action name="v_brake" onPress="1" onHold="1" onRelease="1" keyboard="space" xboxpad="xi_shoulderl+xi_shoulderr" joystick="jsx_reserved" />
|
||||
<action name="v_target_match_vel" onPress="1" onRelease="1" keyboard="m" joystick="js1_button8" >
|
||||
<xboxpad multiTap="2" input="xi_shoulderr" />
|
||||
</action>
|
||||
<!-- Advanced IFCS on (requires IFCS) -->
|
||||
<action name="v_ifcs_toggle_vector_decoupling" onPress="1" onRelease="1" keyboard="capslock" xboxpad="xi_thumbl" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_up" onHold="1" onRelease="1" retriggerable="1" keyboard="e" xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_down" onHold="1" onRelease="1" retriggerable="1" keyboard="q" xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_vertical" xboxpad="xi_triggerl_btn+xi_taxisly" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_left" onHold="1" onRelease="1" retriggerable="1" keyboard="a" xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_right" onHold="1" onRelease="1" retriggerable="1" keyboard="d" xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_lateral" xboxpad="xi_triggerl_btn+xi_taxislx" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_forward" onHold="1" onRelease="1" retriggerable="1" keyboard="w" xboxpad="xi_shoulderr" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_back" onHold="1" onRelease="1" retriggerable="1" keyboard="s" xboxpad="xi_shoulderl" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_longitudinal" joystick="jsx_reserved" />
|
||||
<action name="v_newtonian_yaw" xboxpad="xi_taxislx" joystick="js1_x" />
|
||||
<action name="v_newtonian_pitch" xboxpad="xi_taxisly" joystick="js1_y" />
|
||||
<action name="v_newtonian_brake" onPress="1" onRelease="1" keyboard="space" xboxpad="xi_triggerl_btn+xi_shoulderl" joystick="jsx_reserved" />
|
||||
<action name="v_ifcs_toggle_safety" onPress="1" onRelease="1" keyboard="lctrl+capslock" xboxpad="xi_triggerl_btn+xi_thumbl" joystick="jsx_reserved" />
|
||||
<action name="v_ifcs_toggle_vector_decoupling" onPress="1" keyboard="capslock" xboxpad="xi_thumbl" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_up" onPress="1" onRelease="1" retriggerable="1" keyboard="r" xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_down" onPress="1" onRelease="1" retriggerable="1" keyboard="f" xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_vertical" xboxpad="xi_triggerl_btn+xi_thumbry" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_left" onPress="1" onRelease="1" retriggerable="1" keyboard="q" xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_right" onPress="1" onRelease="1" retriggerable="1" keyboard="e" xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_lateral" xboxpad="xi_triggerl_btn+xi_thumbrx" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_forward" onPress="1" onRelease="1" retriggerable="1" keyboard=" " xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_back" onPress="1" onRelease="1" retriggerable="1" keyboard=" " xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_strafe_longitudinal" xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_ifcs_toggle_safeties" onPress="1" keyboard="lctrl+capslock" xboxpad="xi_triggerl_btn+xi_thumbl" joystick="jsx_reserved" />
|
||||
<action name="v_ifcs_toggle_gforce_safety" onPress="1" keyboard=" " xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_ifcs_toggle_comstab" onPress="1" keyboard=" " xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<!-- Decoupled flight mode (requires advanced IFCS) -->
|
||||
<action name="v_decoupled_strafe_up" onPress="1" onRelease="1" retriggerable="1" keyboard="r" xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_decoupled_strafe_down" onPress="1" onRelease="1" retriggerable="1" keyboard="f" xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_decoupled_strafe_vertical" xboxpad="xi_triggerl_btn+xi_thumbry" joystick="jsx_reserved" />
|
||||
<action name="v_decoupled_strafe_left" onPress="1" onRelease="1" retriggerable="1" keyboard="q" xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_decoupled_strafe_right" onPress="1" onRelease="1" retriggerable="1" keyboard="e" xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_decoupled_strafe_lateral" xboxpad="xi_triggerl_btn+xi_thumbrx" joystick="jsx_reserved" />
|
||||
<action name="v_decoupled_strafe_forward" onPress="1" onRelease="1" retriggerable="1" keyboard="w" xboxpad="xi_shoulderr" joystick="jsx_reserved" />
|
||||
<action name="v_decoupled_strafe_back" onPress="1" onRelease="1" retriggerable="1" keyboard="s" xboxpad="xi_shoulderl" joystick="jsx_reserved" />
|
||||
<action name="v_decoupled_strafe_longitudinal" xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_decoupled_yaw" xboxpad="xi_thumblx" joystick="js1_rotz" />
|
||||
<action name="v_decoupled_yaw_left" onPress="1" onRelease="1" retriggerable="1" keyboard=" " />
|
||||
<action name="v_decoupled_yaw_right" onPress="1" onRelease="1" retriggerable="1" keyboard=" " />
|
||||
<action name="v_decoupled_pitch" xboxpad="xi_thumbly" joystick="js1_y" />
|
||||
<action name="v_decoupled_pitch_up" onPress="1" onRelease="1" retriggerable="1" keyboard=" " />
|
||||
<action name="v_decoupled_pitch_down" onPress="1" onRelease="1" retriggerable="1" keyboard=" " />
|
||||
<action name="v_decoupled_roll_left" onPress="1" onRelease="1" retriggerable="1" keyboard="a" />
|
||||
<action name="v_decoupled_roll_right" onPress="1" onRelease="1" retriggerable="1" keyboard="d" />
|
||||
<action name="v_decoupled_roll" xboxpad="xi_triggerl_btn+xi_thumblx" joystick="js1_x" />
|
||||
<action name="v_decoupled_brake" onPress="1" onRelease="1" keyboard="space" xboxpad="xi_shoulderr+xi_shoulderl" joystick="jsx_reserved" />
|
||||
<!-- Afterburner installed (requires IFCS) -->
|
||||
<action name="v_afterburner" onPress="1" onRelease="1" onHold="1" keyboard="lshift" xboxpad="xi_b" joystick="js1_button7" />
|
||||
<action name="v_toggle_landing_gear" onPress="1" onRelease="1" keyboard="end" joystick="jsx_reserved" />
|
||||
|
||||
<!-- Input options -->
|
||||
<options>
|
||||
<option invert_cvar="v_mouseInvert">
|
||||
<optiondata input="maxis_y" />
|
||||
</option>
|
||||
<option sensitivity_cvar="v_gamepadSensitivity" nonlinearity_cvar="v_gamepadNonLinearity">
|
||||
<nonlinearity_curve>
|
||||
<point in="0.1" out="0.006"/>
|
||||
<point in="0.25" out="0.04"/>
|
||||
<point in="0.5" out="0.15"/>
|
||||
<point in="0.75" out="0.37"/>
|
||||
<point in="0.85" out="0.5"/>
|
||||
</nonlinearity_curve>
|
||||
<optiondata input="xi_taxislx" action="v_yaw" invert_cvar="cl_invertYaw" />
|
||||
<optiondata input="xi_taxislx" />
|
||||
<optiondata input="xi_taxisly" invert_cvar="v_gamepadInvert" />
|
||||
<optiondata input="xi_taxisrx" action="v_newtonian_yaw" invert_cvar="cl_invertYaw" />
|
||||
<optiondata input="xi_taxisry" invert_cvar="v_gamepadInvert" />
|
||||
</option>
|
||||
<option sensitivity_cvar="v_joystickSensitivity" nonlinearity_cvar="v_joystickNonLinearity">
|
||||
<optiondata input="js1_x" />
|
||||
<optiondata input="js1_y" action="v_yaw" invert_cvar="cl_invertYaw" />
|
||||
<optiondata input="js1_y" action="v_newtonian_yaw" invert_cvar="cl_invertYaw" />
|
||||
<optiondata input="js1_y" />
|
||||
</option>
|
||||
<option sensitivity_cvar="v_joystickTwistSensitivity" nonlinearity_cvar="v_joystickTwistNonLinearity">
|
||||
<optiondata input="js1_rotz" action="v_yaw" invert_cvar="cl_invertYaw" />
|
||||
<optiondata input="js1_rotz" action="v_newtonian_yaw" invert_cvar="cl_invertYaw" />
|
||||
<optiondata input="js1_rotz" />
|
||||
</option>
|
||||
</options>
|
||||
<!-- Mouse input options -->
|
||||
<optiongroup type="keyboard">
|
||||
<option input="_y" group="pilot_movepitch" />
|
||||
</optiongroup>
|
||||
<!-- Pad stick input options -->
|
||||
<optiongroup type="xboxpad">
|
||||
<option group="pilot_move" />
|
||||
<option action="v_yaw" group="pilot_moveyaw" />
|
||||
<option action="v_decoupled_yaw" group="pilot_moveyaw" />
|
||||
<option action="v_pitch" group="pilot_movepitch" />
|
||||
<option action="v_decoupled_pitch" group="pilot_movepitch" />
|
||||
</optiongroup>
|
||||
<!-- Joystick input options -->
|
||||
<optiongroup type="joystick">
|
||||
<!-- main stick -->
|
||||
<option input="_x" group="pilot_move" />
|
||||
<option input="_y" group="pilot_move" />
|
||||
<option input="_y" action="v_yaw" group="pilot_moveyaw" />
|
||||
<option input="_y" action="v_decoupled_yaw" group="pilot_moveyaw" />
|
||||
<!-- twist -->
|
||||
<option input="_rotz" group="pilot_rot_move" />
|
||||
<option input="_rotz" action="v_yaw" group="pilot_rot_moveyaw" />
|
||||
<option input="_rotz" action="v_decoupled_yaw" group="pilot_rot_moveyaw" />
|
||||
<!-- throttle -->
|
||||
<option action="v_throttle" group="pilot_throttle" />
|
||||
</optiongroup>
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="spaceship_targeting" version="4">
|
||||
<actionmap name="spaceship_targeting" version="7">
|
||||
<!-- Action map for a spaceship targeting controls -->
|
||||
|
||||
<!-- Aiming -->
|
||||
<action name="v_aim_yaw" xboxpad="xi_thumbrx" joystick="jsx_reserved" />
|
||||
<action name="v_aim_yaw_left" onPress="1" onRelease="1" retriggerable="1" keyboard=" " joystick="js1_hat2_left"/>
|
||||
<action name="v_aim_yaw_right" onPress="1" onRelease="1" retriggerable="1" keyboard=" " joystick="js1_hat2_right"/>
|
||||
<action name="v_aim_pitch" xboxpad="xi_thumbry" joystick="jsx_reserved" />
|
||||
<action name="v_aim_pitch_up" onPress="1" onRelease="1" retriggerable="1" keyboard=" " joystick="js1_hat2_down"/>
|
||||
<action name="v_aim_pitch_down" onPress="1" onRelease="1" retriggerable="1" keyboard=" " joystick="js1_hat2_up"/>
|
||||
<action name="v_aim_yaw_mouse" keyboard="maxis_x" />
|
||||
<action name="v_aim_pitch_mouse" keyboard="maxis_y" />
|
||||
<action name="v_aim_snap" onPress="1" joystick="jsx_reserved" >
|
||||
<xboxpad multiTap="2" input="xi_thumbr" />
|
||||
</action>
|
||||
<!-- Targeting computer controls (requires avionics) -->
|
||||
<action name="v_target_toggle_computer_onoff" onPress="1" onRelease="1" keyboard="" xboxpad="" joystick=""/>
|
||||
<action name="v_target_cycle_all_fwd" onPress="1" onRelease="1" keyboard="y" xboxpad="xi_dpad_up" joystick="js1_hat1_up"/>
|
||||
<action name="v_target_cycle_all_back" onPress="1" onRelease="1" keyboard="lctrl+y" xboxpad="xi_dpad_down" joystick="js1_hat1_down"/>
|
||||
<action name="v_target_cycle_friendly_fwd" onPress="1" onRelease="1" keyboard="h" xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_target_cycle_friendly_back" onPress="1" onRelease="1" keyboard="lctrl+h" xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_target_toggle_pinned_focused" onPress="1" onRelease="1" keyboard="g" xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_target_missile_lock_focused" onPress="1" onRelease="1" keyboard="mouse3" xboxpad="xi_y" joystick="js1_button4" />
|
||||
<!--Additional targeting computer controls (requires flight avionics) -->
|
||||
<action name="v_target_cycle_hostile_fwd" onPress="1" onRelease="1" keyboard="t" xboxpad="xi_dpad_right" joystick="js1_hat1_right"/>
|
||||
<action name="v_target_cycle_hostile_back" onPress="1" onRelease="1" keyboard="lctrl+t" xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_target_nearest_hostile" onPress="1" onRelease="1" keyboard="c" xboxpad="xi_dpad_left" joystick="js1_hat1_left"/>
|
||||
<action name="v_target_nearest_landzone" onPress="1" onRelease="1" keyboard="n" xboxpad="" joystick=""/>
|
||||
<action name="v_target_pin_reticule" onPress="1" onRelease="1" keyboard="lctrl+g" xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_target_cycle_subsystem_fwd" onPress="1" onRelease="1" keyboard="b" xboxpad="" joystick=""/>
|
||||
<action name="v_target_cycle_subsystem_back" onPress="1" onRelease="1" keyboard="lctrl+b" xboxpad="" joystick=""/>
|
||||
|
||||
<optiongroup type="shared">
|
||||
<!-- Digital buttons input options -->
|
||||
<option action="v_aim_yaw_left" group="pilot_aim" />
|
||||
<option action="v_aim_yaw_right" group="pilot_aim" />
|
||||
<option action="v_aim_pitch_up" group="pilot_aim" />
|
||||
<option action="v_aim_pitch_down" group="pilot_aim" />
|
||||
</optiongroup>
|
||||
<optiongroup type="keyboard">
|
||||
<!-- Mouse input options -->
|
||||
<option input="_y" group="pilot_movepitch" />
|
||||
</optiongroup>
|
||||
<optiongroup type="xboxpad">
|
||||
<!-- Pad stick input options -->
|
||||
<option group="pilot_aim" />
|
||||
<option action="v_aim_yaw" group="pilot_aim" />
|
||||
<option action="v_aim_pitch" group="pilot_aimpitch" />
|
||||
</optiongroup>
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="spaceship_turret" version="1">
|
||||
<!-- Action map for a spaceship targeting controls -->
|
||||
|
||||
<!-- Aiming -->
|
||||
<action name="v_aim_yaw" xboxpad="xi_thumblx" joystick="jsx_reserved" />
|
||||
<action name="v_aim_yaw_left" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard=" " joystick="js1_hat2_left"/>
|
||||
<action name="v_aim_yaw_right" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard=" " joystick="js1_hat2_right"/>
|
||||
<action name="v_aim_pitch" xboxpad="xi_thumbly" joystick="jsx_reserved" />
|
||||
<action name="v_aim_pitch_up" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard=" " joystick="js1_hat2_down"/>
|
||||
<action name="v_aim_pitch_down" onPress="1" onHold ="1" onRelease="1" retriggerable="1" keyboard=" " joystick="js1_hat2_up"/>
|
||||
<action name="v_aim_yaw_mouse" keyboard="maxis_x" />
|
||||
<action name="v_aim_pitch_mouse" keyboard="maxis_y" />
|
||||
<action name="v_aim_snap" onPress="1" joystick="jsx_reserved" >
|
||||
<xboxpad multiTap="2" input="xi_thumbr" />
|
||||
</action>
|
||||
<!-- Targeting computer controls (requires avionics) -->
|
||||
<action name="v_target_toggle_computer_onoff" onPress="1" onRelease="1" keyboard="" xboxpad="" joystick=""/>
|
||||
<action name="v_target_cycle_all_fwd" onPress="1" onRelease="1" keyboard="y" xboxpad="xi_dpad_up" joystick="js1_hat1_up"/>
|
||||
@ -550,6 +572,24 @@
|
||||
<action name="v_target_pin_reticule" onPress="1" onRelease="1" keyboard="lctrl+g" xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_target_cycle_subsystem_fwd" onPress="1" onRelease="1" keyboard="b" xboxpad="" joystick=""/>
|
||||
<action name="v_target_cycle_subsystem_back" onPress="1" onRelease="1" keyboard="lctrl+b" xboxpad="" joystick=""/>
|
||||
|
||||
<optiongroup type="shared">
|
||||
<!-- Digital buttons input options -->
|
||||
<option action="v_aim_yaw_left" group="pilot_aim" />
|
||||
<option action="v_aim_yaw_right" group="pilot_aim" />
|
||||
<option action="v_aim_pitch_up" group="pilot_aim" />
|
||||
<option action="v_aim_pitch_down" group="pilot_aim" />
|
||||
</optiongroup>
|
||||
<optiongroup type="keyboard">
|
||||
<!-- Mouse input options -->
|
||||
<option input="_y" group="pilot_movepitch" />
|
||||
</optiongroup>
|
||||
<optiongroup type="xboxpad">
|
||||
<!-- Pad stick input options -->
|
||||
<option group="pilot_aim" />
|
||||
<option action="v_aim_yaw" group="pilot_aim" />
|
||||
<option action="v_aim_pitch" group="pilot_aimpitch" />
|
||||
</optiongroup>
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="spaceship_weapons" version="2">
|
||||
@ -577,18 +617,18 @@
|
||||
<!-- Action map for a spaceship countermeasures and shields -->
|
||||
|
||||
<!-- Countermeasures installed (requires weapons control on) -->
|
||||
<action name="v_weapon_launch_countermeasure" onPress="1" keyboard="z" xboxpad="xi_triggerl_btn+xi_y" joystick="js1_button5" />
|
||||
<action name="v_weapon_launch_countermeasure" onPress="1" onRelease="1" keyboard="z" xboxpad="xi_triggerl_btn+xi_y" joystick="js1_button5" />
|
||||
<action name="v_weapon_cycle_countermeasure_fwd" onPress="1" keyboard="x" xboxpad="xi_reserved" joystick="js1_button8" />
|
||||
<action name="v_weapon_cycle_countermeasure_back" onPress="1" keyboard="" xboxpad="" joystick=""/>
|
||||
|
||||
<!-- Shields -->
|
||||
<action name="v_shield_raise_level_forward" onPress="1" onRelease="1" onHold="1" keyboard="rctrl+np_8"/>
|
||||
<action name="v_shield_raise_level_back" onPress="1" onRelease="1" onHold="1" keyboard="rctrl+np_2"/>
|
||||
<action name="v_shield_raise_level_left" onPress="1" onRelease="1" onHold="1" keyboard="rctrl+np_4"/>
|
||||
<action name="v_shield_raise_level_right" onPress="1" onRelease="1" onHold="1" keyboard="rctrl+np_6"/>
|
||||
<action name="v_shield_raise_level_up" onPress="1" onRelease="1" onHold="1" keyboard="rctrl+np_9"/>
|
||||
<action name="v_shield_raise_level_down" onPress="1" onRelease="1" onHold="1" keyboard="rctrl+np_7"/>
|
||||
<action name="v_shield_reset_level" onPress="0" onRelease="1" onHold="0" keyboard="rctrl+np_5"/>
|
||||
<action name="v_shield_raise_level_forward" onPress="1" onRelease="1" onHold="1" holdTriggerDelay="0.15" keyboard="np_8"/>
|
||||
<action name="v_shield_raise_level_back" onPress="1" onRelease="1" onHold="1" holdTriggerDelay="0.15" keyboard="np_2"/>
|
||||
<action name="v_shield_raise_level_left" onPress="1" onRelease="1" onHold="1" holdTriggerDelay="0.15" keyboard="np_4"/>
|
||||
<action name="v_shield_raise_level_right" onPress="1" onRelease="1" onHold="1" holdTriggerDelay="0.15" keyboard="np_6"/>
|
||||
<action name="v_shield_raise_level_up" onPress="1" onRelease="1" onHold="1" holdTriggerDelay="0.15" keyboard="np_9"/>
|
||||
<action name="v_shield_raise_level_down" onPress="1" onRelease="1" onHold="1" holdTriggerDelay="0.15" keyboard="np_7"/>
|
||||
<action name="v_shield_reset_level" onPress="0" onRelease="1" onHold="0" holdTriggerDelay="0.15" keyboard="np_5"/>
|
||||
<!-- Shields control (requires flight avionics) -->
|
||||
<action name="v_shield_toggle_generator_onoff" onPress="1" keyboard="" xboxpad="" joystick=""/>
|
||||
<action name="v_shield_power_up" onPress="1" keyboard="equal" xboxpad="" joystick=""/>
|
||||
@ -622,12 +662,14 @@
|
||||
<action name="v_radar_toggle_view_focus" onPress="1" keyboard="" xboxpad="" joystick=""/>
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="spaceship_hud" version="1">
|
||||
<actionmap name="spaceship_hud" version="2">
|
||||
<!-- Action map for a spaceship HUD controls-->
|
||||
|
||||
<!-- HUD controls (general) -->
|
||||
<action name="v_hud_cycle_mode_fwd" onPress="1" onRelease="1" keyboard="semicolon" xboxpad="" joystick=""/>
|
||||
<action name="v_hud_cycle_mode_back" onPress="1" onRelease="1" keyboard="apostrophe" xboxpad="" joystick=""/>
|
||||
<action name="v_hud_cycle_mode_fwd" onPress="1" onRelease="1" keyboard="semicolon" xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_hud_cycle_mode_back" onPress="1" onRelease="1" keyboard="apostrophe" xboxpad="" joystick="jsx_reserved" />
|
||||
<action name="v_hud_focused_cycle_mode_fwd" onPress="1" onRelease="1" keyboard="" xboxpad="xi_shoulderr" joystick="" />
|
||||
<action name="v_hud_focused_cycle_mode_back" onPress="1" onRelease="1" keyboard="" xboxpad="xi_shoulderl" joystick="" />
|
||||
<action name="v_hud_toggle_cursor_input" onHold="1" onRelease="1" holdTriggerDelay="0.25" holdRepeatDelay="-1" retriggerable="0" keyboard="tab" xboxpad="xi_start" joystick=""/>
|
||||
<!-- HUD controls (quick keys) -->
|
||||
<action name="v_hud_open_tab1" onPress="1" onRelease="1" keyboard="f1" xboxpad="" joystick="jsx_reserved" />
|
||||
@ -640,6 +682,8 @@
|
||||
<action name="v_hud_open_tab8" onPress="1" onRelease="1" keyboard="f8" xboxpad="" joystick=""/>
|
||||
<action name="v_hud_open_tab9" onPress="1" onRelease="1" keyboard="f9" xboxpad="" joystick=""/>
|
||||
<action name="v_hud_open_tab10" onPress="1" onRelease="1" keyboard="f10" xboxpad="" joystick=""/>
|
||||
<!-- commenting out for GamesCom to avoid conflict with shield management -->
|
||||
<!--
|
||||
<action name="v_hud_num_zero" onPress="1" onRelease="1" keyboard="np_0" xboxpad="" joystick=""/>
|
||||
<action name="v_hud_num_del" onPress="1" onRelease="1" keyboard="np_period" xboxpad="" joystick=""/>
|
||||
<action name="v_hud_num_1" onPress="1" onRelease="1" keyboard="np_1" xboxpad="" joystick=""/>
|
||||
@ -651,24 +695,17 @@
|
||||
<action name="v_hud_num_7" onPress="1" onRelease="1" keyboard="np_7" xboxpad="" joystick=""/>
|
||||
<action name="v_hud_num_8" onPress="1" onRelease="1" keyboard="np_8" xboxpad="" joystick=""/>
|
||||
<action name="v_hud_num_9" onPress="1" onRelease="1" keyboard="np_9" xboxpad="" joystick=""/>
|
||||
-->
|
||||
<action name="v_hud_open_scoreboard" onPress="1" onRelease="1" keyboard="lalt" xboxpad="xi_reserved" joystick="jsx_reserved" />
|
||||
<action name="v_hud_toggle_maximised" onPress="1" onRelease="1" keyboard="f11" xboxpad="" joystick=""/>
|
||||
<!-- HUD controls (interaction) -->
|
||||
<action name="v_hud_confirm" onPress="1" onRelease="1" xboxpad="xi_triggerL_btn+xi_a" joystick="">
|
||||
<keyboard>
|
||||
<inputdata input="enter"/>
|
||||
</keyboard>
|
||||
</action>
|
||||
<action name="v_hud_interact" onPress="1" onRelease="1" keyboard="" xboxpad="xi_triggerl_btn" joystick=""/>
|
||||
<action name="v_hud_cancel" onPress="1" onRelease="1" keyboard="" xboxpad="xi_triggerl_btn+xi_b" joystick=""/>
|
||||
<action name="v_hud_left_panel_up" onPress="1" onRelease="1" keyboard="up" xboxpad="xi_triggerl_btn+xi_dpad_up" joystick=""/>
|
||||
<action name="v_hud_left_panel_down" onPress="1" onRelease="1" keyboard="down" xboxpad="xi_triggerl_btn+xi_dpad_down" joystick=""/>
|
||||
<action name="v_hud_left_panel_left" onPress="1" onRelease="1" keyboard="left" xboxpad="xi_triggerl_btn+xi_dpad_left" joystick=""/>
|
||||
<action name="v_hud_left_panel_right" onPress="1" onRelease="1" keyboard="right" xboxpad="xi_triggerl_btn+xi_dpad_right" joystick=""/>
|
||||
<action name="v_hud_slash" onPress="1" onRelease="1" keyboard="np_divide" xboxpad="p" joystick=""/>
|
||||
<action name="v_hud_star" onPress="1" onRelease="1" keyboard="np_multiply" xboxpad="" joystick=""/>
|
||||
<action name="v_hud_minus" onPress="1" onRelease="1" keyboard="np_subtract" xboxpad="" joystick=""/>
|
||||
<action name="v_hud_plus" onPress="1" onRelease="1" keyboard="np_add" xboxpad="" joystick=""/>
|
||||
<action name="v_hud_interact_toggle" onPress="1" onRelease="0" keyboard="home" xboxpad="xi_back" joystick="jsx_reserved" />
|
||||
<action name="v_hud_confirm" onPress="1" onRelease="1" keyboard="enter" xboxpad="xi_a" joystick="jsx_reserved" />
|
||||
<action name="v_hud_cancel" onPress="1" onRelease="1" keyboard="rctrl" xboxpad="xi_b" joystick="jsx_reserved" />
|
||||
<action name="v_hud_left_panel_up" onPress="1" onRelease="1" keyboard="up" xboxpad="xi_dpad_up" joystick=""/>
|
||||
<action name="v_hud_left_panel_down" onPress="1" onRelease="1" keyboard="down" xboxpad="xi_dpad_down" joystick=""/>
|
||||
<action name="v_hud_left_panel_left" onPress="1" onRelease="1" keyboard="left" xboxpad="xi_dpad_left" joystick=""/>
|
||||
<action name="v_hud_left_panel_right" onPress="1" onRelease="1" keyboard="right" xboxpad="xi_dpad_right" joystick=""/>
|
||||
|
||||
<!-- Comm system controls -->
|
||||
<action name="v_comm_open_chat" onPress="1" onRelease="1" keyboard="backslash" xboxpad="" joystick=""/>
|
||||
@ -679,32 +716,50 @@
|
||||
<action name="v_comm_select_precanned_3" onPress="1" onRelease="1" keyboard="" xboxpad="" joystick=""/>
|
||||
<action name="v_comm_select_precanned_4" onPress="1" onRelease="1" keyboard="" xboxpad="" joystick=""/>
|
||||
<action name="v_comm_select_precanned_5" onPress="1" onRelease="1" keyboard="" xboxpad="" joystick=""/>
|
||||
|
||||
<!-- Comm system controls -->
|
||||
<!--
|
||||
<action name="v_preset_load_current_1" onPress="1" onRelease="0" keyboard="1" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_load_current_2" onPress="1" onRelease="0" keyboard="2" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_load_current_3" onPress="1" onRelease="0" keyboard="3" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_load_current_4" onPress="1" onRelease="0" keyboard="4" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_load_current_5" onPress="1" onRelease="0" keyboard="5" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_load_global_1" onPress="1" onRelease="0" keyboard="lctrl+1" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_load_global_2" onPress="1" onRelease="0" keyboard="lctrl+2" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_load_global_3" onPress="1" onRelease="0" keyboard="lctrl+3" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_load_global_4" onPress="1" onRelease="0" keyboard="lctrl+4" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_load_global_5" onPress="1" onRelease="0" keyboard="lctrl+5" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_save_current_1" onPress="1" onRelease="0" keyboard="lshift+1" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_save_current_2" onPress="1" onRelease="0" keyboard="lshift+2" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_save_current_3" onPress="1" onRelease="0" keyboard="lshift+3" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_save_current_4" onPress="1" onRelease="0" keyboard="lshift+4" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_save_current_5" onPress="1" onRelease="0" keyboard="lshift+5" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_save_global_1" onPress="1" onRelease="0" keyboard="lshift+lctrl+1" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_save_global_2" onPress="1" onRelease="0" keyboard="lshift+lctrl+2" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_save_global_3" onPress="1" onRelease="0" keyboard="lshift+lctrl+3" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_save_global_4" onPress="1" onRelease="0" keyboard="lshift+lctrl+4" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_save_global_5" onPress="1" onRelease="0" keyboard="lshift+lctrl+5" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_clear_current_1" onPress="1" onRelease="0" keyboard="lalt+1" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_clear_current_2" onPress="1" onRelease="0" keyboard="lalt+2" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_clear_current_3" onPress="1" onRelease="0" keyboard="lalt+3" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_clear_current_4" onPress="1" onRelease="0" keyboard="lalt+4" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_clear_current_5" onPress="1" onRelease="0" keyboard="lalt+5" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_clear_global_1" onPress="1" onRelease="0" keyboard="lalt+lctrl+1" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_clear_global_2" onPress="1" onRelease="0" keyboard="lalt+lctrl+2" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_clear_global_3" onPress="1" onRelease="0" keyboard="lalt+lctrl+3" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_clear_global_4" onPress="1" onRelease="0" keyboard="lalt+lctrl+4" xboxpad="" joystick=""/>
|
||||
<action name="v_preset_clear_global_5" onPress="1" onRelease="0" keyboard="lalt+lctrl+5" xboxpad="" joystick=""/>
|
||||
-->
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="zero_gravity_general" version="1">
|
||||
<!-- general zero-gravity keys, applies to thruster and non-thruster movement -->
|
||||
<action name="z_brake" onPress="1" onRelease="1" keyboard="lctrl+b" xboxpad="xi_triggerl_btn+xi_x" ps3pad="pad_l2+pad_square" joystick=""/>
|
||||
<action name="z_override_joystick" onPress="1" onRelease="1" retriggerable="1" xboxpad="xi_triggerl_btn" ps3pad="pad_l2"/>
|
||||
|
||||
<action name="z_roll" xboxpad="xi_triggerl_btn+xi_thumblx" ps3pad="pad_l2+pad_sticklx" joystick="js1_x"/>
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="gforce_tuning_mode" version="2">
|
||||
<action name="v_gforce_save" onPress="1" xboxpad="xi_start"/>
|
||||
<action name="v_gforce_lock" onPress="1" onRelease="1" xboxpad="xi_thumbr"/>
|
||||
<action name="v_gforce_movey" xboxpad="xi_thumbly"/>
|
||||
<action name="v_gforce_movex" xboxpad="xi_thumblx"/>
|
||||
<action name="v_gforce_toggle" onPress="1" onRelease="1" onHold="" xboxpad="xi_a"/>
|
||||
<action name="v_gforce_mag_down" onPress="1" onHold="1" xboxpad="xi_shoulderl"/>
|
||||
<action name="v_gforce_mag_up" onPress="1" onHold="1" xboxpad="xi_shoulderr"/>
|
||||
<action name="v_gforce_body_toggle" onPress="1" onRelease="1" onHold="" xboxpad="xi_b"/>
|
||||
<action name="v_gforce_head_toggle" onPress="1" onRelease="1" onHold="" xboxpad="xi_x"/>
|
||||
<action name="v_gforce_toggle_menu" onPress="1" onRelease="1" onHold="" xboxpad="xi_y"/>
|
||||
<action name="v_gforce_menu_down" onPress="1" xboxpad="xi_dpad_down"/>
|
||||
<action name="v_gforce_menu_up" onPress="1" xboxpad="xi_dpad_up"/>
|
||||
<action name="v_gforce_param_inc" onPress="1" onHold ="1" xboxpad="xi_dpad_left"/>
|
||||
<action name="v_gforce_param_dec" onPress="1" onHold ="1" xboxpad="xi_dpad_right"/>
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="IFCS_controls" version="2">
|
||||
<action name="v_IFCS_A" onPress="1" onRelease="1" onHold="" xboxpad="xi_a" keyboard="rctrl+a"/>
|
||||
<action name="v_IFCS_B" onPress="1" onRelease="1" onHold="" xboxpad="xi_b" keyboard="rctrl+b"/>
|
||||
@ -712,18 +767,4 @@
|
||||
<action name="v_IFCS_Y" onPress="1" onRelease="1" onHold="" xboxpad="xi_y" keyboard="rctrl+y"/>
|
||||
</actionmap>
|
||||
|
||||
<actionmap name="vehicle_gforce_tuning" version="2">
|
||||
<!-- vehicle keys for gforce tuning mode -->
|
||||
<action name="v_boost" onPress="1" onRelease="1" keyboard="lshift" xboxpad="xi_thumbr" ps3pad="pad_l1"/>
|
||||
<action name="v_view_option" onPress="1" onRelease="1" keyboard="k" xboxpad="xi_thumbl" ps3pad="pad_l3"/>
|
||||
<action name="v_view_yaw_mouse" keyboard="maxis_x"/>
|
||||
<action name="v_view_pitch_mouse" keyboard="maxis_y"/>
|
||||
<action name="v_view_yaw" xboxpad="xi_thumbrx" ps3pad="pad_stickrx"/>
|
||||
<action name="v_view_pitch" xboxpad="xi_thumbry" ps3pad="pad_stickry"/>
|
||||
<action name="v_enable_mouse_input" onPress="1" onRelease="0" retriggerable="0" keyboard="tab"/>
|
||||
<action name="v_disable_mouse_input" onPress="0" onRelease="1" retriggerable="0" keyboard="tab"/>
|
||||
<action name="v_target_cycle_all_fwd" onPress="0" onRelease="1" retriggerable="0" keyboard="lshift"/>
|
||||
<action name="v_target_toggle_lock_selected" onPress="1" onHold="1" onRelease="1" retriggerable="0" keyboard="capslock"/>
|
||||
</actionmap>
|
||||
|
||||
</profile>
|
||||
|
@ -1,5 +1,5 @@
|
||||
SC Joystick Mapper V 2.3
|
||||
(c) Cassini, StandardToaster - 31-August-2014
|
||||
SC Joystick Mapper V 2.4
|
||||
(c) Cassini, StandardToaster - 14-September-2014
|
||||
|
||||
Contains 9 files:
|
||||
|
||||
@ -11,7 +11,7 @@ Ionic.Zip.Reduced.dll Managed Zip Assembly - MUST be in th
|
||||
log4net.dll Managed Logging Assembly - MUST be in the same folder as the Exe file
|
||||
log4net.config.OFF Config file for logging - To use it - rename as log4net.config and run the program
|
||||
then look for trace.log in the same folder
|
||||
SCJMapper_QGuide V2.3.pdf Quick Guide
|
||||
SCJMapper_QGuide V2.4.pdf Quick Guide
|
||||
ReadMe.txt This file
|
||||
|
||||
Read the Guide first RTFM ;-)
|
||||
@ -24,6 +24,10 @@ Scanned for viruses before packing...
|
||||
cassini@burri-web.org
|
||||
|
||||
Changelog:
|
||||
V 2.4
|
||||
- improvement - add new actionmaps for AC 0.9 (flycam, spaceship_turret)
|
||||
- improvement - supports now assignment of js1 .. js8 - SC may not support all though...
|
||||
- Update of the Guide for V2.4
|
||||
V 2.3
|
||||
- new feature - allow reassignment of the jsN group
|
||||
- improvement - uniquely identified devices with the same name (use GUID)
|
||||
@ -31,17 +35,19 @@ V 2.3
|
||||
- improvement - detection of the SC install path extended to one more Registry entry
|
||||
- fix - blend unmapped works properly now
|
||||
- fix - manual entry of SC directory works now
|
||||
- Update of the Guide for V2.3
|
||||
V 2.2
|
||||
- new feature - option to ignore actionmaps in Settings
|
||||
- improvement - add actionmaps for multiplayer, singleplayer, player
|
||||
- improvement - GUI layout of Joystick tabs for more than 4 devices
|
||||
- Update of the Guide for V2.2
|
||||
V 2.1
|
||||
- program is maintained at "https://github.com/SCToolsfactory/SCJMapper-V2/releases"
|
||||
- new feature - option to blend unmapped actions
|
||||
- improvement - ignore buttons in Settings
|
||||
- improvement - override the built in detection of the SC folder in Settings
|
||||
- added - trace log for resolving crash and other issues
|
||||
- Update of the Guide for V2.0
|
||||
- Update of the Guide for V2.1
|
||||
V 2.0
|
||||
- program is maintained at "https://github.com/bm98/SCJMapper-V2/releases"
|
||||
- new feature - get defaultProfile.xml from game assets
|
||||
|
BIN
doc/SCJMapper_QGuide V2.4.pdf
Normal file
BIN
doc/SCJMapper_QGuide V2.4.pdf
Normal file
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user