Method inlined

This commit is contained in:
2025-03-01 16:52:25 -05:00
parent 3af6cab92e
commit d5b787430e
5 changed files with 45 additions and 30 deletions
+34 -20
View File
@@ -377,24 +377,33 @@ public class WpakPowerManager {
}
public static int getRecycleTime(Power power, int trains) { // returns cast time in ms
if (power.curves.get("RECYCLETIME") != null)
return (int) (((power.recycle_time + (power.curves.get("RECYCLETIME").getValue() * trains)) * 1000) + getCastTime(power, trains));
else
return (int) (((power.recycle_time * (1 + (power.curves.get("RECYCLETIME").getValue() * trains))) * 1000) + getCastTime(power, trains));
if (power.curves.get("RECYCLETIME") != null) {
mbEnums.CompoundCurveType compoundCurveType = power.curves.get("RECYCLETIME");
return (int) (((power.recycle_time + (compoundCurveType.value * trains)) * 1000) + getCastTime(power, trains));
} else {
mbEnums.CompoundCurveType compoundCurveType = power.curves.get("RECYCLETIME");
return (int) (((power.recycle_time * (1 + (compoundCurveType.value * trains))) * 1000) + getCastTime(power, trains));
}
}
public static int getCastTime(Power power, int trains) { // returns cast time in ms
if (power.curves.get("INITTIME") != null)
return (int) ((power.init_time + (power.curves.get("INITTIME").getValue() * trains)) * 1000);
else
return (int) ((power.init_time * (1 + (power.curves.get("INITTIME").getValue() * trains))) * 1000);
if (power.curves.get("INITTIME") != null) {
mbEnums.CompoundCurveType compoundCurveType = power.curves.get("INITTIME");
return (int) ((power.init_time + (compoundCurveType.value * trains)) * 1000);
} else {
mbEnums.CompoundCurveType compoundCurveType = power.curves.get("INITTIME");
return (int) ((power.init_time * (1 + (compoundCurveType.value * trains))) * 1000);
}
}
public static float getCost(Power power, int trains) {
if (power.curves.get("COSTAMT") != null)
return power.cost + (power.curves.get("COSTAMT").getValue() * trains);
else
return power.cost * (1 + (power.curves.get("COSTAMT").getValue() * trains));
if (power.curves.get("COSTAMT") != null) {
mbEnums.CompoundCurveType compoundCurveType = power.curves.get("COSTAMT");
return power.cost + (compoundCurveType.value * trains);
} else {
mbEnums.CompoundCurveType compoundCurveType = power.curves.get("COSTAMT");
return power.cost * (1 + (compoundCurveType.value * trains));
}
}
@@ -413,7 +422,7 @@ public class WpakPowerManager {
Pair<Float, Float> outData = new Pair<>(0f, 0f);
if (modifierEntry.percentage != 0f) {
outData.first = modifierEntry.percentage + (modifierEntry.compoundCurveType.getValue() * rank);
outData.first = modifierEntry.percentage + (modifierEntry.compoundCurveType.value * rank);
outData.first = outData.first * 0.01f;
return outData;
}
@@ -426,14 +435,19 @@ public class WpakPowerManager {
// These all have "SIVL" in the curve name suggesting
// interpolation between min max. Not something currently done.
outData.first = modifierEntry.compoundCurveType.type.equals(mbEnums.ModificationType.MULTIPLY) ?
modifierEntry.min * (1 + (modifierEntry.compoundCurveType.getValue() * rank)) :
modifierEntry.min + (modifierEntry.compoundCurveType.getValue() * rank);
if (modifierEntry.compoundCurveType.type.equals(mbEnums.ModificationType.MULTIPLY)) {
outData.first = modifierEntry.min * (1 + (modifierEntry.compoundCurveType.value * rank));
} else {
outData.first = modifierEntry.min + (modifierEntry.compoundCurveType.value * rank);
}
if (modifierEntry.max != 0)
outData.second = modifierEntry.compoundCurveType.type.equals(mbEnums.ModificationType.MULTIPLY) ?
modifierEntry.max * (1 + (modifierEntry.compoundCurveType.getValue() * rank)) :
modifierEntry.max + (modifierEntry.compoundCurveType.getValue() * rank);
if (modifierEntry.max != 0) {
if (modifierEntry.compoundCurveType.type.equals(mbEnums.ModificationType.MULTIPLY)) {
outData.second = modifierEntry.max * (1 + (modifierEntry.compoundCurveType.value * rank));
} else {
outData.second = modifierEntry.max + (modifierEntry.compoundCurveType.value * rank);
}
}
return outData;
}