diff options
author | Alexdoru <57050655+Alexdoru@users.noreply.github.com> | 2024-09-16 02:40:01 +0200 |
---|---|---|
committer | boubou19 <miisterunknown@gmail.com> | 2024-09-17 22:55:46 +0200 |
commit | b29015462cc29d889c77de16bd3f0935ef718109 (patch) | |
tree | 7162f0bfe5cfd8e74cda5eacefc7abb08f0a449c /src/main/java/bwcrossmod/cls | |
parent | d3d71cbd373a3629a1df36b82fd3138cf4294b80 (diff) | |
download | GT5-Unofficial-b29015462cc29d889c77de16bd3f0935ef718109.tar.gz GT5-Unofficial-b29015462cc29d889c77de16bd3f0935ef718109.tar.bz2 GT5-Unofficial-b29015462cc29d889c77de16bd3f0935ef718109.zip |
remove reflection from CLSCompat
Diffstat (limited to 'src/main/java/bwcrossmod/cls')
-rw-r--r-- | src/main/java/bwcrossmod/cls/CLSCompat.java | 63 |
1 files changed, 8 insertions, 55 deletions
diff --git a/src/main/java/bwcrossmod/cls/CLSCompat.java b/src/main/java/bwcrossmod/cls/CLSCompat.java index 9cb9c6fc9c..18033ea23b 100644 --- a/src/main/java/bwcrossmod/cls/CLSCompat.java +++ b/src/main/java/bwcrossmod/cls/CLSCompat.java @@ -13,92 +13,45 @@ package bwcrossmod.cls; -import java.lang.reflect.Field; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.util.Optional; +import java.io.IOException; +import alexiil.mods.load.MinecraftDisplayer; +import alexiil.mods.load.ProgressDisplayer; import bartworks.system.material.Werkstoff; -@SuppressWarnings({ "rawtypes", "unchecked" }) public class CLSCompat { private CLSCompat() {} private static final long MINIMAL_UPDATE_INTERVAL = 1000 / 30; // target 30 fps private static long lastUpdate = 0; - private static Class alexiilMinecraftDisplayer; - private static Class alexiilProgressDisplayer; - private static Method displayProgress; - private static Field isRegisteringBartWorks; - - static { - try { - alexiilMinecraftDisplayer = Class.forName("alexiil.mods.load.MinecraftDisplayer"); - alexiilProgressDisplayer = Class.forName("alexiil.mods.load.ProgressDisplayer"); - } catch (ClassNotFoundException e) { - e.printStackTrace(); - } - - Optional.ofNullable(alexiilMinecraftDisplayer) - .ifPresent(e -> { - try { - isRegisteringBartWorks = e.getField("isRegisteringBartWorks"); - } catch (NoSuchFieldException ex) { - ex.printStackTrace(); - } - }); - - Optional.ofNullable(alexiilProgressDisplayer) - .ifPresent(e -> { - try { - displayProgress = e.getMethod("displayProgress", String.class, float.class); - } catch (NoSuchMethodException ex) { - ex.printStackTrace(); - } - }); - } public static Integer[] initCls() { int sizeStep; int sizeStep2 = 1; - - try { - isRegisteringBartWorks.set(null, true); - } catch (IllegalAccessException e) { - e.printStackTrace(); - } - + MinecraftDisplayer.isRegisteringBartWorks = true; if (Werkstoff.werkstoffHashSet.size() >= 100) sizeStep = Werkstoff.werkstoffHashSet.size() / 100 - 1; else sizeStep = sizeStep2 = Werkstoff.werkstoffHashSet.size(); - return new Integer[] { sizeStep, sizeStep2, sizeStep }; } public static int invokeStepSize(Werkstoff werkstoff, Integer[] steps, int size) { --steps[0]; - long time = System.currentTimeMillis(); if (time - lastUpdate >= MINIMAL_UPDATE_INTERVAL) { try { - displayProgress.invoke(null, werkstoff.getDefaultName(), (float) size / 10000); - } catch (IllegalAccessException | InvocationTargetException e) { - e.printStackTrace(); + ProgressDisplayer.displayProgress(werkstoff.getDefaultName(), (float) size / 10000); + } catch (IOException e) { + throw new RuntimeException(e); } lastUpdate = time; } - if (steps[0] == 0 && Werkstoff.werkstoffHashSet.size() >= 100) steps[0] = steps[2]; - size += steps[1]; return size; } public static void disableCls() { - try { - isRegisteringBartWorks.set(null, false); - } catch (IllegalAccessException e) { - e.printStackTrace(); - } + MinecraftDisplayer.isRegisteringBartWorks = false; } } |