diff --git a/common/src/main/java/org/embeddedt/modernfix/common/mixin/feature/remove_chat_signing/ChatTrustLevelMixin.java b/common/src/main/java/org/embeddedt/modernfix/common/mixin/feature/remove_chat_signing/ChatTrustLevelMixin.java new file mode 100644 index 00000000..30342885 --- /dev/null +++ b/common/src/main/java/org/embeddedt/modernfix/common/mixin/feature/remove_chat_signing/ChatTrustLevelMixin.java @@ -0,0 +1,17 @@ +package org.embeddedt.modernfix.common.mixin.feature.remove_chat_signing; + +import net.minecraft.client.multiplayer.chat.ChatTrustLevel; +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.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(ChatTrustLevel.class) +@ClientOnlyMixin +public class ChatTrustLevelMixin { + @Inject(method = "evaluate", at = @At("HEAD"), cancellable = true) + private static void alwaysShowSecure(CallbackInfoReturnable cir) { + cir.setReturnValue(ChatTrustLevel.SECURE); + } +} diff --git a/common/src/main/java/org/embeddedt/modernfix/common/mixin/feature/remove_chat_signing/ProfileKeyPairManagerMixin.java b/common/src/main/java/org/embeddedt/modernfix/common/mixin/feature/remove_chat_signing/ProfileKeyPairManagerMixin.java new file mode 100644 index 00000000..f55e9ce1 --- /dev/null +++ b/common/src/main/java/org/embeddedt/modernfix/common/mixin/feature/remove_chat_signing/ProfileKeyPairManagerMixin.java @@ -0,0 +1,23 @@ +package org.embeddedt.modernfix.common.mixin.feature.remove_chat_signing; + +import com.mojang.authlib.minecraft.UserApiService; +import net.minecraft.client.User; +import net.minecraft.client.multiplayer.ProfileKeyPairManager; +import org.embeddedt.modernfix.annotation.ClientOnlyMixin; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; + +import java.nio.file.Path; + +@Mixin(ProfileKeyPairManager.class) +@ClientOnlyMixin +public interface ProfileKeyPairManagerMixin { + /** + * @author embeddedt + * @reason never use the key pair + */ + @Overwrite + static ProfileKeyPairManager create(UserApiService userApiService, User user, Path gameDirectory) { + return ProfileKeyPairManager.EMPTY_KEY_MANAGER; + } +} diff --git a/common/src/main/java/org/embeddedt/modernfix/core/config/ModernFixEarlyConfig.java b/common/src/main/java/org/embeddedt/modernfix/core/config/ModernFixEarlyConfig.java index 7120e098..9402ddfe 100644 --- a/common/src/main/java/org/embeddedt/modernfix/core/config/ModernFixEarlyConfig.java +++ b/common/src/main/java/org/embeddedt/modernfix/core/config/ModernFixEarlyConfig.java @@ -174,6 +174,7 @@ public class ModernFixEarlyConfig { .put("mixin.perf.faster_item_rendering", false) .put("mixin.feature.spam_thread_dump", false) .put("mixin.feature.disable_unihex_font", false) + .put("mixin.feature.remove_chat_signing", false) .put("mixin.feature.snapshot_easter_egg", true) .put("mixin.feature.warn_missing_perf_mods", true) .put("mixin.feature.spark_profile_launch", false)