diff options
author | GlodBlock <1356392126@qq.com> | 2021-08-19 20:31:53 +0800 |
---|---|---|
committer | GlodBlock <1356392126@qq.com> | 2021-08-19 20:31:53 +0800 |
commit | 82f768f48e8964d6dee6b2b64f042ccc755bfb6a (patch) | |
tree | d9d23b29daebfbc2974240206a912f25b59ddea2 /src/main/java/GoodGenerator/util | |
parent | 0aff8fdce56cac3738a2dddc62bcecfea2219ca2 (diff) | |
download | GT5-Unofficial-82f768f48e8964d6dee6b2b64f042ccc755bfb6a.tar.gz GT5-Unofficial-82f768f48e8964d6dee6b2b64f042ccc755bfb6a.tar.bz2 GT5-Unofficial-82f768f48e8964d6dee6b2b64f042ccc755bfb6a.zip |
add Neutron Activator and NEI compact
Diffstat (limited to 'src/main/java/GoodGenerator/util')
-rw-r--r-- | src/main/java/GoodGenerator/util/CharExchanger.java | 8 | ||||
-rw-r--r-- | src/main/java/GoodGenerator/util/ItemRefer.java | 1 | ||||
-rw-r--r-- | src/main/java/GoodGenerator/util/MyRecipeAdder.java | 30 |
3 files changed, 37 insertions, 2 deletions
diff --git a/src/main/java/GoodGenerator/util/CharExchanger.java b/src/main/java/GoodGenerator/util/CharExchanger.java index e2b95c040b..566afdfeed 100644 --- a/src/main/java/GoodGenerator/util/CharExchanger.java +++ b/src/main/java/GoodGenerator/util/CharExchanger.java @@ -66,10 +66,14 @@ public class CharExchanger { public static boolean compareExpression(String exp, int num) { int op = getOperator(exp); String NumExp = exp; - String[] opChar = new String[]{">", "<", "<=", ">=", "==", "!="}; + String[] opChar = new String[]{">", "<", "=", "!"}; if (op == -1) throw new IllegalArgumentException(); for (String re: opChar) NumExp = NumExp.replace(re, ""); - int num2 = Integer.getInteger(NumExp); + long num2 = 0; + for (char c: NumExp.toCharArray()) { + num2 *=10; + num2 += c - '0'; + } switch (op) { case 1: return num > num2; case 2: return num < num2; diff --git a/src/main/java/GoodGenerator/util/ItemRefer.java b/src/main/java/GoodGenerator/util/ItemRefer.java index 6d20636d1e..4a76951224 100644 --- a/src/main/java/GoodGenerator/util/ItemRefer.java +++ b/src/main/java/GoodGenerator/util/ItemRefer.java @@ -24,6 +24,7 @@ public final class ItemRefer { public static ItemRefer Aluminum_Nitride_Dust = getItemStack(aluminumNitride); public static ItemRefer Special_Ceramics_Dust = getItemStack(specialCeramics); public static ItemRefer Special_Ceramics_Plate = getItemStack(specialCeramicsPlate); + public static ItemRefer Radioactive_Waste = getItemStack(radioactiveWaste); public static ItemRefer Field_Restriction_Casing = getItemStack(MAR_Casing); public static ItemRefer Naquadah_Fuel_Refinery_Casing = getItemStack(FRF_Casings); diff --git a/src/main/java/GoodGenerator/util/MyRecipeAdder.java b/src/main/java/GoodGenerator/util/MyRecipeAdder.java index 85c36a1ea8..0f773a2807 100644 --- a/src/main/java/GoodGenerator/util/MyRecipeAdder.java +++ b/src/main/java/GoodGenerator/util/MyRecipeAdder.java @@ -40,6 +40,18 @@ public class MyRecipeAdder { true ); + public final NeutronActivatorMapper NA = new NeutronActivatorMapper( + new HashSet<>(150), + "gg.recipe.neutron_activator", + StatCollector.translateToLocal("tile.neutron_activator"), + null, + "goodgenerator:textures/gui/neutron_activator", + 6, 6, 0, 0, 0, + null, 0, null, + false, + false + ); + public static class liquidMentalFuelMapper extends GT_Recipe.GT_Recipe_Map_Fuel{ int lasting = 0; @@ -70,4 +82,22 @@ public class MyRecipeAdder { public void addNaquadahFuelRefineRecipe(FluidStack[] input1, ItemStack[] input2, FluidStack output, int EUt, int ticks, int tier){ FRF.addNaqFuelRefineRecipe(input1, input2, output, EUt, ticks, tier); } + + public static class NeutronActivatorMapper extends GT_Recipe.GT_Recipe_Map{ + public NeutronActivatorMapper(Collection<GT_Recipe> aRecipeList, String aUnlocalizedName, String aLocalName, String aNEIName, String aNEIGUIPath, int aUsualInputCount, int aUsualOutputCount, int aMinimalInputItems, int aMinimalInputFluids, int aAmperage, String aNEISpecialValuePre, int aNEISpecialValueMultiplier, String aNEISpecialValuePost, boolean aShowVoltageAmperageInNEI, boolean aNEIAllowed){ + super(aRecipeList, aUnlocalizedName, aLocalName, aNEIName, aNEIGUIPath, aUsualInputCount, aUsualOutputCount, aMinimalInputItems, aMinimalInputFluids, aAmperage, aNEISpecialValuePre, aNEISpecialValueMultiplier, aNEISpecialValuePost, aShowVoltageAmperageInNEI, aNEIAllowed); + } + + public void addNARecipe(FluidStack[] input1, ItemStack[] input2, FluidStack[] output1, ItemStack[] output2, int ticks, int special) { + super.addRecipe(false, input2, output2, null, input1, output1, ticks, 0, special); + } + } + + public void addNeutronActivatorRecipe(FluidStack[] input1, ItemStack[] input2, FluidStack[] output1, ItemStack[] output2, int ticks, int maxNKE, int minNKE) { + if (maxNKE <= 0) maxNKE = 1; + if (maxNKE >= 280) maxNKE = 280; + if (minNKE < 0) minNKE = 0; + if (minNKE >= maxNKE) minNKE = maxNKE - 1; + NA.addNARecipe(input1, input2, output1, output2, ticks, maxNKE * 10000 + minNKE); + } } |