diff --git a/src/main/generated/assets/rocks/lang/de_de.json b/src/main/generated/assets/rocks/lang/de_de.json index e74276a..e5e53b2 100644 --- a/src/main/generated/assets/rocks/lang/de_de.json +++ b/src/main/generated/assets/rocks/lang/de_de.json @@ -45,6 +45,8 @@ "rocks.midnightconfig.category.sticks": "Stöcke", "rocks.midnightconfig.enablePolymerMode": "Aktiviere Polymer-Modus", "rocks.midnightconfig.enablePolymerMode.tooltip": "Erlaubt der Mod, komplett serverseitig zu funktionieren, wenn Polymer und FactoryTools installiert sind", + "rocks.midnightconfig.forcePolymerMode": "Erzwinge Polymer-Modus", + "rocks.midnightconfig.forcePolymerMode.tooltip": "Aktiviert den Polymer-Modus auch für Clients, die die ThisRocks! installiert haben", "rocks.midnightconfig.geyserLevitation": "Geysir Schwebeeffekt", "rocks.midnightconfig.needs_restart": "§cStarte das Spiel neu, nachdem du Änderungen vorgenommen hast!", "rocks.midnightconfig.needs_restart1": "§cStarte das Spiel neu, nachdem du Änderungen vorgenommen hast!", diff --git a/src/main/generated/assets/rocks/lang/en_us.json b/src/main/generated/assets/rocks/lang/en_us.json index 2f458db..4dd6c59 100644 --- a/src/main/generated/assets/rocks/lang/en_us.json +++ b/src/main/generated/assets/rocks/lang/en_us.json @@ -45,6 +45,8 @@ "rocks.midnightconfig.category.sticks": "Sticks", "rocks.midnightconfig.enablePolymerMode": "Enable Polymer Mode", "rocks.midnightconfig.enablePolymerMode.tooltip": "Allows the mod to work fully server-sided when used in combination with Polymer and FactoryTools", + "rocks.midnightconfig.forcePolymerMode": "Force Polymer Mode", + "rocks.midnightconfig.forcePolymerMode.tooltip": "Also enables Polymer mode for clients that have ThisRocks! installed", "rocks.midnightconfig.geyserLevitation": "Geyser Levitation", "rocks.midnightconfig.needs_restart": "§cRestart the game after changing options here!", "rocks.midnightconfig.needs_restart1": "§cRestart the game after changing options here!", diff --git a/src/main/java/eu/midnightdust/motschen/rocks/RocksMain.java b/src/main/java/eu/midnightdust/motschen/rocks/RocksMain.java index 657ed77..ff5bee7 100755 --- a/src/main/java/eu/midnightdust/motschen/rocks/RocksMain.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/RocksMain.java @@ -73,12 +73,14 @@ public class RocksMain implements ModInitializer { @Override public void onInitialize() { RocksConfig.init(MOD_ID, RocksConfig.class); - if (polymerMode) polymerMode = RocksConfig.enablePolymerMode && !PlatformFunctions.isClientEnv(); + if (polymerMode) polymerMode = RocksConfig.enablePolymerMode && (RocksConfig.forcePolymerMode || !PlatformFunctions.isClientEnv()); PayloadTypeRegistry.playC2S().register(HelloPayload.PACKET_ID, HelloPayload.codec); ServerPlayNetworking.registerGlobalReceiver(HelloPayload.PACKET_ID, (payload, context) -> { - playersWithMod.add(context.player()); - if (polymerMode) PolyUtil.hideElementHolders(context.player()); + if (!RocksConfig.forcePolymerMode) { + playersWithMod.add(context.player()); + if (polymerMode) PolyUtil.hideElementHolders(context.player()); + } }); ServerPlayConnectionEvents.DISCONNECT.register((playNetworkHandler, server) -> { playersWithMod.remove(playNetworkHandler.player); diff --git a/src/main/java/eu/midnightdust/motschen/rocks/config/RocksConfig.java b/src/main/java/eu/midnightdust/motschen/rocks/config/RocksConfig.java index c060cfe..41dc56d 100755 --- a/src/main/java/eu/midnightdust/motschen/rocks/config/RocksConfig.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/config/RocksConfig.java @@ -52,6 +52,7 @@ public class RocksConfig extends MidnightConfig { @Entry(category = effects) public static boolean netherGeyserDamage = true; @Entry(category = effects) public static boolean enablePolymerMode = true; + @Entry(category = effects) public static boolean forcePolymerMode = false; @Entry(category = effects, requiredMod = "factorytools", min = 0, max = 200, isSlider = true) public static int polymerViewDistance = 100; @Entry(category = effects) public static List biomeExclusions = new ArrayList<>(); } diff --git a/src/main/java/eu/midnightdust/motschen/rocks/datagen/Language.java b/src/main/java/eu/midnightdust/motschen/rocks/datagen/Language.java index 6b4966e..ac39fc6 100644 --- a/src/main/java/eu/midnightdust/motschen/rocks/datagen/Language.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/datagen/Language.java @@ -127,6 +127,8 @@ public abstract class Language extends FabricLanguageProvider { midnightconfig(translationBuilder, "enablePolymerMode", "Enable Polymer Mode"); midnightconfig(translationBuilder, "enablePolymerMode.tooltip", "Allows the mod to work fully server-sided when used in combination with Polymer and FactoryTools"); + midnightconfig(translationBuilder, "forcePolymerMode", "Force Polymer Mode"); + midnightconfig(translationBuilder, "forcePolymerMode.tooltip", "Also enables Polymer mode for clients that have ThisRocks! installed"); midnightconfig(translationBuilder, "polymerViewDistance", "Polymer View Distance"); } } @@ -172,6 +174,8 @@ public abstract class Language extends FabricLanguageProvider { midnightconfig(translationBuilder, "enablePolymerMode", "Aktiviere Polymer-Modus"); midnightconfig(translationBuilder, "enablePolymerMode.tooltip", "Erlaubt der Mod, komplett serverseitig zu funktionieren, wenn Polymer und FactoryTools installiert sind"); + midnightconfig(translationBuilder, "forcePolymerMode", "Erzwinge Polymer-Modus"); + midnightconfig(translationBuilder, "forcePolymerMode.tooltip", "Aktiviert den Polymer-Modus auch für Clients, die die ThisRocks! installiert haben"); midnightconfig(translationBuilder, "polymerViewDistance", "Polymer-Sichtweite"); } }