mirror of
https://github.com/cemu-project/DS4Windows.git
synced 2025-02-02 18:12:32 +01:00
parent
098bbf057d
commit
8d4d4b0758
@ -364,6 +364,8 @@ namespace DS4Windows
|
|||||||
device.SyncChange += this.On_SyncChange;
|
device.SyncChange += this.On_SyncChange;
|
||||||
device.SyncChange += DS4Devices.UpdateSerial;
|
device.SyncChange += DS4Devices.UpdateSerial;
|
||||||
device.SerialChange += this.On_SerialChange;
|
device.SerialChange += this.On_SerialChange;
|
||||||
|
if (!useTempProfile[i])
|
||||||
|
{
|
||||||
if (device.isValidSerial() && containsLinkedProfile(device.getMacAddress()))
|
if (device.isValidSerial() && containsLinkedProfile(device.getMacAddress()))
|
||||||
{
|
{
|
||||||
ProfilePath[i] = getLinkedProfile(device.getMacAddress());
|
ProfilePath[i] = getLinkedProfile(device.getMacAddress());
|
||||||
@ -373,8 +375,10 @@ namespace DS4Windows
|
|||||||
ProfilePath[i] = OlderProfilePath[i];
|
ProfilePath[i] = OlderProfilePath[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
touchPad[i] = new Mouse(i, device);
|
|
||||||
LoadProfile(i, false, this, false, false);
|
LoadProfile(i, false, this, false, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
touchPad[i] = new Mouse(i, device);
|
||||||
device.LightBarColor = getMainColor(i);
|
device.LightBarColor = getMainColor(i);
|
||||||
|
|
||||||
if (!getDInputOnly(i) && device.isSynced())
|
if (!getDInputOnly(i) && device.isSynced())
|
||||||
@ -605,6 +609,8 @@ namespace DS4Windows
|
|||||||
device.SyncChange += this.On_SyncChange;
|
device.SyncChange += this.On_SyncChange;
|
||||||
device.SyncChange += DS4Devices.UpdateSerial;
|
device.SyncChange += DS4Devices.UpdateSerial;
|
||||||
device.SerialChange += this.On_SerialChange;
|
device.SerialChange += this.On_SerialChange;
|
||||||
|
if (!useTempProfile[Index])
|
||||||
|
{
|
||||||
if (device.isValidSerial() && containsLinkedProfile(device.getMacAddress()))
|
if (device.isValidSerial() && containsLinkedProfile(device.getMacAddress()))
|
||||||
{
|
{
|
||||||
ProfilePath[Index] = getLinkedProfile(device.getMacAddress());
|
ProfilePath[Index] = getLinkedProfile(device.getMacAddress());
|
||||||
@ -614,8 +620,10 @@ namespace DS4Windows
|
|||||||
ProfilePath[Index] = OlderProfilePath[Index];
|
ProfilePath[Index] = OlderProfilePath[Index];
|
||||||
}
|
}
|
||||||
|
|
||||||
touchPad[Index] = new Mouse(Index, device);
|
|
||||||
LoadProfile(Index, false, this, false, false);
|
LoadProfile(Index, false, this, false, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
touchPad[Index] = new Mouse(Index, device);
|
||||||
device.LightBarColor = getMainColor(Index);
|
device.LightBarColor = getMainColor(Index);
|
||||||
|
|
||||||
int tempIdx = Index;
|
int tempIdx = Index;
|
||||||
@ -1093,7 +1101,7 @@ namespace DS4Windows
|
|||||||
|
|
||||||
cState = Mapping.SetCurveAndDeadzone(ind, cState, TempState[ind]);
|
cState = Mapping.SetCurveAndDeadzone(ind, cState, TempState[ind]);
|
||||||
|
|
||||||
if (!recordingMacro && (!string.IsNullOrEmpty(tempprofilename[ind]) ||
|
if (!recordingMacro && (useTempProfile[ind] ||
|
||||||
containsCustomAction(ind) || containsCustomExtras(ind) ||
|
containsCustomAction(ind) || containsCustomExtras(ind) ||
|
||||||
getProfileActionCount(ind) > 0))
|
getProfileActionCount(ind) > 0))
|
||||||
{
|
{
|
||||||
|
@ -1317,7 +1317,7 @@ namespace DS4Windows
|
|||||||
//DS4StateFieldMapping outputfieldMapping = new DS4StateFieldMapping(cState, eState, tp);
|
//DS4StateFieldMapping outputfieldMapping = new DS4StateFieldMapping(cState, eState, tp);
|
||||||
|
|
||||||
SyntheticState deviceState = Mapping.deviceState[device];
|
SyntheticState deviceState = Mapping.deviceState[device];
|
||||||
if (getProfileActionCount(device) > 0 || !string.IsNullOrEmpty(tempprofilename[device]))
|
if (getProfileActionCount(device) > 0 || useTempProfile[device])
|
||||||
MapCustomAction(device, cState, MappedState, eState, tp, ctrl, fieldMapping, outputfieldMapping);
|
MapCustomAction(device, cState, MappedState, eState, tp, ctrl, fieldMapping, outputfieldMapping);
|
||||||
if (ctrl.DS4Controllers[device] == null) return;
|
if (ctrl.DS4Controllers[device] == null) return;
|
||||||
|
|
||||||
@ -1896,7 +1896,7 @@ namespace DS4Windows
|
|||||||
{
|
{
|
||||||
actionFound = true;
|
actionFound = true;
|
||||||
|
|
||||||
if (!actionDone[index].dev[device] && string.IsNullOrEmpty(tempprofilename[device]))
|
if (!actionDone[index].dev[device] && !useTempProfile[device])
|
||||||
{
|
{
|
||||||
actionDone[index].dev[device] = true;
|
actionDone[index].dev[device] = true;
|
||||||
untriggeraction[device] = action;
|
untriggeraction[device] = action;
|
||||||
@ -2286,7 +2286,7 @@ namespace DS4Windows
|
|||||||
if ((action.controls == action.ucontrols && !actionDone[index].dev[device]) || //if trigger and end trigger are the same
|
if ((action.controls == action.ucontrols && !actionDone[index].dev[device]) || //if trigger and end trigger are the same
|
||||||
action.controls != action.ucontrols)
|
action.controls != action.ucontrols)
|
||||||
{
|
{
|
||||||
if (!string.IsNullOrEmpty(tempprofilename[device]))
|
if (useTempProfile[device])
|
||||||
{
|
{
|
||||||
//foreach (DS4Controls dc in action.uTrigger)
|
//foreach (DS4Controls dc in action.uTrigger)
|
||||||
for (int i = 0, arlen = action.uTrigger.Count; i < arlen; i++)
|
for (int i = 0, arlen = action.uTrigger.Count; i < arlen; i++)
|
||||||
|
@ -237,6 +237,7 @@ namespace DS4Windows
|
|||||||
public static bool runHotPlug = false;
|
public static bool runHotPlug = false;
|
||||||
public const int XINPUT_UNPLUG_SETTLE_TIME = 250; // Inhibit races that occur with the asynchronous teardown of ScpVBus -> X360 driver instance.
|
public const int XINPUT_UNPLUG_SETTLE_TIME = 250; // Inhibit races that occur with the asynchronous teardown of ScpVBus -> X360 driver instance.
|
||||||
public static string[] tempprofilename = new string[5] { string.Empty, string.Empty, string.Empty, string.Empty, string.Empty };
|
public static string[] tempprofilename = new string[5] { string.Empty, string.Empty, string.Empty, string.Empty, string.Empty };
|
||||||
|
public static bool[] useTempProfile = new bool[5] { false, false, false, false, false };
|
||||||
public static bool[] tempprofileDistance = new bool[5] { false, false, false, false, false };
|
public static bool[] tempprofileDistance = new bool[5] { false, false, false, false, false };
|
||||||
public static bool[] useDInputOnly = new bool[5] { true, true, true, true, true };
|
public static bool[] useDInputOnly = new bool[5] { true, true, true, true, true };
|
||||||
public static bool[] linkedProfileCheck = new bool[4] { true, true, true, true };
|
public static bool[] linkedProfileCheck = new bool[4] { true, true, true, true };
|
||||||
@ -1308,6 +1309,7 @@ namespace DS4Windows
|
|||||||
{
|
{
|
||||||
m_Config.LoadProfile(device, launchprogram, control, "", xinputChange, postLoad);
|
m_Config.LoadProfile(device, launchprogram, control, "", xinputChange, postLoad);
|
||||||
tempprofilename[device] = string.Empty;
|
tempprofilename[device] = string.Empty;
|
||||||
|
useTempProfile[device] = false;
|
||||||
tempprofileDistance[device] = false;
|
tempprofileDistance[device] = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1316,6 +1318,7 @@ namespace DS4Windows
|
|||||||
{
|
{
|
||||||
m_Config.LoadProfile(device, launchprogram, control, appdatapath + @"\Profiles\" + name + ".xml");
|
m_Config.LoadProfile(device, launchprogram, control, appdatapath + @"\Profiles\" + name + ".xml");
|
||||||
tempprofilename[device] = name;
|
tempprofilename[device] = name;
|
||||||
|
useTempProfile[device] = true;
|
||||||
tempprofileDistance[device] = name.ToLower().Contains("distance");
|
tempprofileDistance[device] = name.ToLower().Contains("distance");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user