From 739b1122be0a097293ec6ef7a8b1bd4862a32cc3 Mon Sep 17 00:00:00 2001 From: OL925 <105969587+Ol925@users.noreply.github.com> Date: Sat, 17 Aug 2024 21:34:48 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9C=A8Onetick=E6=A8=A1=E5=BC=8F=E4=B8=AD?= =?UTF-8?q?=E5=AF=B9=E9=B8=BF=E8=92=99=E9=85=8D=E6=96=B9=E8=BF=9B=E8=A1=8C?= =?UTF-8?q?=E4=BA=86=E4=BF=AE=E6=94=B9=20(#10)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 修改了硅岩燃料燃烧时间 * 修改了硅岩燃料燃烧时间 * delete proxy * 在Onetick模式中对鸿蒙之眼配方进行了修改 包括: 运行时间 1tick; 0L氢&氦需求; 基础成功概率为500% * 在Onetick模式中对鸿蒙之眼配方进行了修改 包括: 运行时间 1tick; 所有配方1000L氢&氦需求; 所有配方基础成功概率为500% 所有配方启动电能需求为114EU,产出为999999999 EU * 在Onetick模式中对鸿蒙之眼配方进行了修改 包括: 运行时间 1tick; 所有配方1L氢&氦需求; 所有配方基础成功概率为500% 所有配方启动电能需求为114EU,产出为999999999 EU --------- Co-authored-by: 初夏同学 <30284813+wohaopa@users.noreply.github.com> --- .../GTNHModify/strategies/OneTick.java | 111 ++++++++++++++++-- 1 file changed, 100 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/github/wohaopa/GTNHModify/strategies/OneTick.java b/src/main/java/com/github/wohaopa/GTNHModify/strategies/OneTick.java index b7b728d..f9e7acc 100644 --- a/src/main/java/com/github/wohaopa/GTNHModify/strategies/OneTick.java +++ b/src/main/java/com/github/wohaopa/GTNHModify/strategies/OneTick.java @@ -31,22 +31,111 @@ public int handler_FurnaceProcessingTime(Object owner, int number) { return 1; } - private Field field; + private Field miningTimeSecondsField; + private Field hydrogenRequirementField; + private Field heliumRequirementField; + private Field baseSuccessChanceField; + private Field euOutputField; + private Field euStartCostField; public void handler_EyeOfHarmonyRecipe(EyeOfHarmonyRecipe eyeOfHarmonyRecipe) { - if (field == null) { - try { - Class clazz = EyeOfHarmonyRecipe.class; - field = clazz.getDeclaredField("miningTimeSeconds"); - field.setAccessible(true); + Class clazz = EyeOfHarmonyRecipe.class; - } catch (NoSuchFieldException ignored) {} + // miningTimeSeconds + { + if (miningTimeSecondsField == null) { + try { + miningTimeSecondsField = clazz.getDeclaredField("miningTimeSeconds"); + miningTimeSecondsField.setAccessible(true); + } catch (NoSuchFieldException ignored) {} + } + if (miningTimeSecondsField != null) { + try { + miningTimeSecondsField.setLong(eyeOfHarmonyRecipe, 1); + } catch (IllegalAccessException ignored) {} + } + } + + // hydrogenRequirement + { + if (hydrogenRequirementField == null) { + try { + hydrogenRequirementField = clazz.getDeclaredField("hydrogenRequirement"); + hydrogenRequirementField.setAccessible(true); + + } catch (NoSuchFieldException ignored) {} + } + if (hydrogenRequirementField != null) { + try { + long hydrogenRequirement = hydrogenRequirementField.getLong(eyeOfHarmonyRecipe); + hydrogenRequirementField.setLong(eyeOfHarmonyRecipe, 1); + } catch (IllegalAccessException ignored) {} + } + } + + // heliumRequirement + { + if (heliumRequirementField == null) { + try { + heliumRequirementField = clazz.getDeclaredField("heliumRequirement"); + heliumRequirementField.setAccessible(true); + + } catch (NoSuchFieldException ignored) {} + } + if (heliumRequirementField != null) { + try { + long heliumRequirement = heliumRequirementField.getLong(eyeOfHarmonyRecipe); + heliumRequirementField.setLong(eyeOfHarmonyRecipe, 1); + } catch (IllegalAccessException ignored) {} + } } - try { - if (field != null) { - field.setLong(eyeOfHarmonyRecipe, 1); + + // baseSuccessChance + { + if (baseSuccessChanceField == null) { + try { + baseSuccessChanceField = clazz.getDeclaredField("baseSuccessChance"); + baseSuccessChanceField.setAccessible(true); + + } catch (NoSuchFieldException ignored) {} + } + if (baseSuccessChanceField != null) { + try { + double baseSuccessChance = baseSuccessChanceField.getDouble(eyeOfHarmonyRecipe); + baseSuccessChanceField.setDouble(eyeOfHarmonyRecipe, 5); + } catch (IllegalAccessException ignored) {} + } + } + + // euOutput + { + if (euOutputField == null) { + try { + euOutputField = clazz.getDeclaredField("euOutput"); + euOutputField.setAccessible(true); + } catch (NoSuchFieldException ignored) {} } - } catch (IllegalAccessException ignored) {} + if (euOutputField != null) { + try { + euOutputField.setLong(eyeOfHarmonyRecipe, 999999999); + } catch (IllegalAccessException ignored) {} + } + } + + // euStartCost + { + if (euStartCostField == null) { + try { + euStartCostField = clazz.getDeclaredField("euStartCost"); + euStartCostField.setAccessible(true); + } catch (NoSuchFieldException ignored) {} + } + if (euStartCostField != null) { + try { + euStartCostField.setLong(eyeOfHarmonyRecipe, 114); + } catch (IllegalAccessException ignored) {} + } + } } }