Added unchecked region

This commit is contained in:
Travis Nickles 2019-02-15 21:58:00 -06:00
parent 5b19dc76cd
commit 50109282f4

View File

@ -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;
}
}
}
}