aboutsummaryrefslogtreecommitdiff
path: root/runtime
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2022-09-12 23:05:35 +0800
committershedaniel <daniel@shedaniel.me>2022-09-12 23:05:35 +0800
commitd938b32705594c995ad9f82b0f0b64897b6c423f (patch)
treee2cd09be1630093d69d6ce7d1942d861efa848f9 /runtime
parent47896cdd0e1d440ca85aef3cc8f24b229a18c949 (diff)
downloadRoughlyEnoughItems-feature/obfuscate.tar.gz
RoughlyEnoughItems-feature/obfuscate.tar.bz2
RoughlyEnoughItems-feature/obfuscate.zip
Obfuscate REI Internalsfeature/obfuscate
Diffstat (limited to 'runtime')
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/ClientHelperImpl.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/credits/CreditsScreen.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/common/plugins/PluginManagerImpl.java18
3 files changed, 19 insertions, 5 deletions
diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/ClientHelperImpl.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/ClientHelperImpl.java
index 8acb6c09e..6b97c8514 100644
--- a/runtime/src/main/java/me/shedaniel/rei/impl/client/ClientHelperImpl.java
+++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/ClientHelperImpl.java
@@ -227,7 +227,8 @@ public class ClientHelperImpl implements ClientHelper {
Minecraft.getInstance().player.displayClientMessage(Component.translatable("text.rei.too_long_nbt"), false);
}
try {
- Class.forName("me.shedaniel.rei.impl.client.%s.CommandSenderImpl".formatted(Platform.isForge() ? "forge" : "fabric"))
+ String s = "me.shedaniel.rei.impl.client.%s.CommandSenderImpl";
+ Class.forName(s.contains("%s") ? s.formatted(Platform.isForge() ? "forge" : "fabric") : s)
.getDeclaredMethod("sendCommand", String.class)
.invoke(null, StringUtils.removeStart(madeUpCommand, "/"));
} catch (IllegalAccessException | ClassNotFoundException | NoSuchMethodException | InvocationTargetException e) {
diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/credits/CreditsScreen.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/credits/CreditsScreen.java
index 830bcae36..13ba4db46 100644
--- a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/credits/CreditsScreen.java
+++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/credits/CreditsScreen.java
@@ -131,7 +131,8 @@ public class CreditsScreen extends Screen {
private static void fillTranslators(Exception[] exception, List<Tuple<String, List<TranslatorEntry>>> translators) {
try {
- Class.forName("me.shedaniel.rei.impl.client.gui.credits.%s.CreditsScreenImpl".formatted(Platform.isForge() ? "forge" : "fabric"))
+ String s = "me.shedaniel.rei.impl.client.gui.credits.%s.CreditsScreenImpl";
+ Class.forName(s.contains("%s") ? s.formatted(Platform.isForge() ? "forge" : "fabric") : s)
.getDeclaredMethod("fillTranslators", Exception[].class, List.class)
.invoke(null, exception, translators);
} catch (IllegalAccessException | ClassNotFoundException | NoSuchMethodException | InvocationTargetException e) {
diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/common/plugins/PluginManagerImpl.java b/runtime/src/main/java/me/shedaniel/rei/impl/common/plugins/PluginManagerImpl.java
index 1264b9abf..54342abdf 100644
--- a/runtime/src/main/java/me/shedaniel/rei/impl/common/plugins/PluginManagerImpl.java
+++ b/runtime/src/main/java/me/shedaniel/rei/impl/common/plugins/PluginManagerImpl.java
@@ -269,9 +269,21 @@ public class PluginManagerImpl<P extends REIPlugin<?>> implements PluginManager<
}
private static String name(Class<?> clazz) {
- String simpleName = clazz.getSimpleName();
- if (simpleName.isEmpty()) return clazz.getName();
- return simpleName;
+ for (Class<?> anInterface : clazz.getInterfaces()) {
+ if (!anInterface.getName().startsWith("me.shedaniel.rei.impl")) {
+ return _name(anInterface);
+ }
+ }
+
+ return _name(clazz);
+ }
+
+ private static String _name(Class<?> clazz) {
+ String name = clazz.getName();
+ if (name.contains(".")) {
+ name = name.substring(name.lastIndexOf(".") + 1);
+ }
+ return name.replace('$', '.');
}
@Override