From 35c82b81c8633936a94a46bd2ed667190470df31 Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Thu, 28 Dec 2023 14:33:39 -0500 Subject: [PATCH 1/2] Mark WorldSelectionList mixin as client-only --- .../bugfix/world_screen_skipped/WorldSelectionListMixin.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/common/src/main/java/org/embeddedt/modernfix/common/mixin/bugfix/world_screen_skipped/WorldSelectionListMixin.java b/common/src/main/java/org/embeddedt/modernfix/common/mixin/bugfix/world_screen_skipped/WorldSelectionListMixin.java index 27f67f7a..7d816acd 100644 --- a/common/src/main/java/org/embeddedt/modernfix/common/mixin/bugfix/world_screen_skipped/WorldSelectionListMixin.java +++ b/common/src/main/java/org/embeddedt/modernfix/common/mixin/bugfix/world_screen_skipped/WorldSelectionListMixin.java @@ -3,6 +3,7 @@ package org.embeddedt.modernfix.common.mixin.bugfix.world_screen_skipped; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.screens.worldselection.CreateWorldScreen; import net.minecraft.client.gui.screens.worldselection.WorldSelectionList; +import org.embeddedt.modernfix.annotation.ClientOnlyMixin; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; @@ -11,6 +12,7 @@ import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; @Mixin(WorldSelectionList.WorldListEntry.class) +@ClientOnlyMixin public class WorldSelectionListMixin { @Shadow @Final private Minecraft minecraft; From cc1be852bbb660b6ae278de338f63e6a9253763e Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Thu, 28 Dec 2023 14:42:01 -0500 Subject: [PATCH 2/2] More ClientOnlyMixin --- .../modernfix/fabric/mixin/safety/DynamicTextureMixin.java | 2 ++ .../extra_experimental_screen/CreateWorldScreenMixin.java | 2 ++ 2 files changed, 4 insertions(+) diff --git a/fabric/src/main/java/org/embeddedt/modernfix/fabric/mixin/safety/DynamicTextureMixin.java b/fabric/src/main/java/org/embeddedt/modernfix/fabric/mixin/safety/DynamicTextureMixin.java index 5cc7f1ac..e120bc91 100644 --- a/fabric/src/main/java/org/embeddedt/modernfix/fabric/mixin/safety/DynamicTextureMixin.java +++ b/fabric/src/main/java/org/embeddedt/modernfix/fabric/mixin/safety/DynamicTextureMixin.java @@ -3,6 +3,7 @@ package org.embeddedt.modernfix.fabric.mixin.safety; import com.mojang.blaze3d.platform.NativeImage; import net.minecraft.client.renderer.texture.DynamicTexture; import org.embeddedt.modernfix.ModernFix; +import org.embeddedt.modernfix.annotation.ClientOnlyMixin; import org.jetbrains.annotations.Nullable; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; @@ -11,6 +12,7 @@ import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; @Mixin(DynamicTexture.class) +@ClientOnlyMixin public class DynamicTextureMixin { @Shadow @Nullable private NativeImage pixels; diff --git a/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/bugfix/extra_experimental_screen/CreateWorldScreenMixin.java b/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/bugfix/extra_experimental_screen/CreateWorldScreenMixin.java index a8696b54..10c3b6dd 100644 --- a/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/bugfix/extra_experimental_screen/CreateWorldScreenMixin.java +++ b/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/bugfix/extra_experimental_screen/CreateWorldScreenMixin.java @@ -4,11 +4,13 @@ import com.mojang.serialization.Lifecycle; import net.minecraft.client.gui.screens.worldselection.CreateWorldScreen; import net.minecraft.world.level.storage.PrimaryLevelData; import net.minecraft.world.level.storage.WorldData; +import org.embeddedt.modernfix.annotation.ClientOnlyMixin; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.ModifyArg; @Mixin(CreateWorldScreen.class) +@ClientOnlyMixin public class CreateWorldScreenMixin { /** * Fix experimental world dialog still being shown the first time you reopen a world that was created