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..5ee27be4 --- /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 net.minecraft.client.multiplayer.ProfileKeyPairManager; +import org.embeddedt.modernfix.annotation.ClientOnlyMixin; +import org.embeddedt.modernfix.core.config.Option; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; + +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +@Mixin(ProfileKeyPairManager.class) +@ClientOnlyMixin +public class ProfileKeyPairManagerMixin { + /** + * @author embeddedt + * @reason never use the key pair + */ + @Overwrite + private CompletableFuture> readOrFetchProfileKeyPair(Optional optional) { + return CompletableFuture.completedFuture(Optional.empty()); + } +} 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 7a0beb8b..864a8893 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 @@ -173,6 +173,7 @@ public class ModernFixEarlyConfig { .put("mixin.feature.integrated_server_watchdog", true) .put("mixin.perf.faster_item_rendering", false) .put("mixin.feature.spam_thread_dump", 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)