b = box_in2.removeDataForShip();
box_out.addDataFromShip(a-b); // SUB
break;
- case 9:
+
+ case 9: // MAXMERGE
if (box_in1.peekDataForShip()<0 && box_in2.peekDataForShip()<0) {
a = box_in1.removeDataForShip();
b = box_in2.removeDataForShip();
box_out.addDataFromShip(a, false);
break;
}
- // fall through
+ // fall through to MAX
case 4:
a = box_in1.peekDataForShip();
b = box_in2.peekDataForShip();
box_out.addDataFromShip(Math.max(a,b), !(a>b)); // MAX
- if (a<b) box_in1.removeDataForShip(); else box_in2.removeDataForShip();
+ if (a>b) box_in1.removeDataForShip(); else box_in2.removeDataForShip();
break;
+
case 5:
a = box_in1.peekDataForShip();
b = box_in2.peekDataForShip();
box_out.addDataFromShip(Math.min(a,b), a>b); // MIN
- if (a>b) box_in1.removeDataForShip(); else box_in2.removeDataForShip();
+ if (a<b) box_in1.removeDataForShip(); else box_in2.removeDataForShip();
break;
case 6:
a = box_in1.removeDataForShip();