mirror of
https://github.com/cemu-project/DS4Windows.git
synced 2024-11-26 11:04:21 +01:00
Added unchecked region
This commit is contained in:
parent
5b19dc76cd
commit
50109282f4
@ -1512,45 +1512,50 @@ namespace DS4Windows
|
||||
if (controlType == DS4StateFieldMapping.ControlType.AxisDir)
|
||||
//if (dcs.control > DS4Controls.None && dcs.control < DS4Controls.L1)
|
||||
{
|
||||
//int current = (int)dcs.control;
|
||||
//outputfieldMapping.axisdirs[current] = fieldMapping.axisdirs[current];
|
||||
customMapQueue[device].Enqueue(new ControlToXInput(dcs.control, dcs.control));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Queue<ControlToXInput> tempControl = customMapQueue[device];
|
||||
for (int i = 0, len = tempControl.Count; i < len; i++)
|
||||
//while(tempControl.Any())
|
||||
unchecked
|
||||
{
|
||||
ControlToXInput tempMap = tempControl.Dequeue();
|
||||
int controlNum = (int)tempMap.ds4input;
|
||||
int tempOutControl = (int)tempMap.xoutput;
|
||||
if (tempMap.xoutput >= DS4Controls.LXNeg && tempMap.xoutput <= DS4Controls.RYPos)
|
||||
for (int i = 0, len = tempControl.Count; i < len; i++)
|
||||
//while(tempControl.Any())
|
||||
{
|
||||
const byte axisDead = 128;
|
||||
DS4StateFieldMapping.ControlType controlType = DS4StateFieldMapping.mappedType[tempOutControl];
|
||||
bool alt = controlType == DS4StateFieldMapping.ControlType.AxisDir && tempOutControl % 2 == 0 ? true : false;
|
||||
byte axisMapping = getXYAxisMapping2(device, tempMap.ds4input, cState, eState, tp, fieldMapping, alt);
|
||||
if (axisMapping != axisDead)
|
||||
ControlToXInput tempMap = tempControl.Dequeue();
|
||||
int controlNum = (int)tempMap.ds4input;
|
||||
int tempOutControl = (int)tempMap.xoutput;
|
||||
if (tempMap.xoutput >= DS4Controls.LXNeg && tempMap.xoutput <= DS4Controls.RYPos)
|
||||
{
|
||||
int controlRelation = tempOutControl % 2 == 0 ? tempOutControl - 1 : tempOutControl + 1;
|
||||
outputfieldMapping.axisdirs[tempOutControl] = axisMapping;
|
||||
outputfieldMapping.axisdirs[controlRelation] = axisMapping;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (tempMap.xoutput == DS4Controls.L2 || tempMap.xoutput == DS4Controls.R2)
|
||||
{
|
||||
const byte axisZero = 0;
|
||||
byte axisMapping = getByteMapping2(device, tempMap.ds4input, cState, eState, tp, fieldMapping);
|
||||
if (axisMapping != axisZero)
|
||||
outputfieldMapping.triggers[tempOutControl] = axisMapping;
|
||||
const byte axisDead = 128;
|
||||
DS4StateFieldMapping.ControlType controlType = DS4StateFieldMapping.mappedType[tempOutControl];
|
||||
bool alt = controlType == DS4StateFieldMapping.ControlType.AxisDir && tempOutControl % 2 == 0 ? true : false;
|
||||
byte axisMapping = getXYAxisMapping2(device, tempMap.ds4input, cState, eState, tp, fieldMapping, alt);
|
||||
if (axisMapping != axisDead)
|
||||
{
|
||||
int controlRelation = tempOutControl % 2 == 0 ? tempOutControl - 1 : tempOutControl + 1;
|
||||
outputfieldMapping.axisdirs[tempOutControl] = axisMapping;
|
||||
outputfieldMapping.axisdirs[controlRelation] = axisMapping;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
bool value = getBoolMapping2(device, tempMap.ds4input, cState, eState, tp, fieldMapping);
|
||||
if (value)
|
||||
outputfieldMapping.buttons[tempOutControl] = value;
|
||||
if (tempMap.xoutput == DS4Controls.L2 || tempMap.xoutput == DS4Controls.R2)
|
||||
{
|
||||
const byte axisZero = 0;
|
||||
byte axisMapping = getByteMapping2(device, tempMap.ds4input, cState, eState, tp, fieldMapping);
|
||||
if (axisMapping != axisZero)
|
||||
outputfieldMapping.triggers[tempOutControl] = axisMapping;
|
||||
}
|
||||
else
|
||||
{
|
||||
bool value = getBoolMapping2(device, tempMap.ds4input, cState, eState, tp, fieldMapping);
|
||||
if (value)
|
||||
outputfieldMapping.buttons[tempOutControl] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user