Small git shenanigans to actually (i really hope) revert all the bad stuff
This commit is contained in:
@@ -157,29 +157,30 @@ public class LExecutor{
|
|||||||
return v.isobj ? v.objval != null : Math.abs(v.numval) >= 0.00001;
|
return v.isobj ? v.objval != null : Math.abs(v.numval) >= 0.00001;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nullable
|
|
||||||
public double num(int index, boolean nullToNan){
|
|
||||||
Var v = var(index);
|
|
||||||
return v.isobj ? v.objval != null ? 1 : nullToNan ? Double.NaN : 0: invalid(v.numval) ? 0 : v.numval;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double num(int index){
|
public double num(int index){
|
||||||
return num(index, false);
|
Var v = var(index);
|
||||||
|
return v.isobj ? v.objval != null ? 1 : 0 : invalid(v.numval) ? 0 : v.numval;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nullable
|
/** Get num value from variable, convert null to NaN to handle it differently in some instructions */
|
||||||
public float numf(int index, boolean nullToNan){
|
public double numOrNan(int index){
|
||||||
Var v = var(index);
|
Var v = var(index);
|
||||||
return v.isobj ? v.objval != null ? 1 : nullToNan ? Float.NaN : 0: invalid(v.numval) ? 0 : (float)v.numval;
|
return v.isobj ? v.objval != null ? 1 : Double.NaN : invalid(v.numval) ? 0 : v.numval;
|
||||||
}
|
}
|
||||||
|
|
||||||
public float numf(int index){
|
public float numf(int index){
|
||||||
return numf(index, false);
|
Var v = var(index);
|
||||||
|
return v.isobj ? v.objval != null ? 1 : 0 : invalid(v.numval) ? 0 : (float)v.numval;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get float value from variable, convert null to NaN to handle it differently in some instructions */
|
||||||
|
public float numfOrNan(int index){
|
||||||
|
Var v = var(index);
|
||||||
|
return v.isobj ? v.objval != null ? 1 : Float.NaN : invalid(v.numval) ? 0 : (float)v.numval;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nullable
|
|
||||||
public int numi(int index){
|
public int numi(int index){
|
||||||
return (int)num(index, true);
|
return (int)num(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setbool(int index, boolean value){
|
public void setbool(int index, boolean value){
|
||||||
@@ -595,8 +596,7 @@ public class LExecutor{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
default -> {
|
default -> {}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -617,8 +617,7 @@ public class LExecutor{
|
|||||||
this.p4 = p4;
|
this.p4 = p4;
|
||||||
}
|
}
|
||||||
|
|
||||||
ControlI(){
|
ControlI(){}
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run(LExecutor exec){
|
public void run(LExecutor exec){
|
||||||
@@ -865,8 +864,7 @@ public class LExecutor{
|
|||||||
this.to = to;
|
this.to = to;
|
||||||
}
|
}
|
||||||
|
|
||||||
SetI(){
|
SetI(){}
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run(LExecutor exec){
|
public void run(LExecutor exec){
|
||||||
@@ -898,8 +896,7 @@ public class LExecutor{
|
|||||||
this.dest = dest;
|
this.dest = dest;
|
||||||
}
|
}
|
||||||
|
|
||||||
OpI(){
|
OpI(){}
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run(LExecutor exec){
|
public void run(LExecutor exec){
|
||||||
@@ -934,8 +931,7 @@ public class LExecutor{
|
|||||||
|
|
||||||
public static class NoopI implements LInstruction{
|
public static class NoopI implements LInstruction{
|
||||||
@Override
|
@Override
|
||||||
public void run(LExecutor exec){
|
public void run(LExecutor exec){}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class DrawI implements LInstruction{
|
public static class DrawI implements LInstruction{
|
||||||
@@ -1077,8 +1073,7 @@ public class LExecutor{
|
|||||||
this.value = value;
|
this.value = value;
|
||||||
}
|
}
|
||||||
|
|
||||||
PrintI(){
|
PrintI(){}
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run(LExecutor exec){
|
public void run(LExecutor exec){
|
||||||
@@ -2005,7 +2000,7 @@ public class LExecutor{
|
|||||||
marker.setTexture(res.toString());
|
marker.setTexture(res.toString());
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
marker.control(type, exec.num(p1, true), exec.num(p2, true), exec.num(p3, true));
|
marker.control(type, exec.numOrNan(p1), exec.numOrNan(p2), exec.numOrNan(p3));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2037,7 +2032,7 @@ public class LExecutor{
|
|||||||
int mid = exec.numi(id);
|
int mid = exec.numi(id);
|
||||||
if(exec.bool(replace) || !state.markers.containsKey(mid)){
|
if(exec.bool(replace) || !state.markers.containsKey(mid)){
|
||||||
var marker = cons.get();
|
var marker = cons.get();
|
||||||
marker.control(LMarkerControl.pos, exec.num(x, true), exec.num(y, true), 0);
|
marker.control(LMarkerControl.pos, exec.num(x), exec.num(y), 0);
|
||||||
state.markers.put(mid, marker);
|
state.markers.put(mid, marker);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user