diff --git a/src/main/java/meteordevelopment/meteorclient/mixin/TranslatableTextContentMixin.java b/src/main/java/meteordevelopment/meteorclient/mixin/TranslatableTextContentMixin.java index 108fe739e4..f81c78d9b8 100644 --- a/src/main/java/meteordevelopment/meteorclient/mixin/TranslatableTextContentMixin.java +++ b/src/main/java/meteordevelopment/meteorclient/mixin/TranslatableTextContentMixin.java @@ -9,29 +9,27 @@ import net.minecraft.text.TranslatableTextContent; import net.minecraft.util.Language; import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Unique; import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.Redirect; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; - -import java.util.Arrays; @Mixin(TranslatableTextContent.class) public class TranslatableTextContentMixin { - @Unique private boolean forceEnglish = false; - private static final Language EN_US = LanguageAccessor.create(); + // Force English translation in Names.get() as Custom Fonts currently doesn't support English @Redirect(method = "updateTranslations", at = @At(value = "INVOKE", target = "Lnet/minecraft/util/Language;getInstance()Lnet/minecraft/util/Language;")) + @SuppressWarnings("removal") private Language onUpdateTranslation() { - return forceEnglish ? EN_US : Language.getInstance(); - } - - // Force English translation in Names.get() as Custom Fonts currently doesn't support English - @Inject(method = "", at = @At("TAIL")) - private void onInit(String key, String fallback, Object[] args, CallbackInfo info) { - if (Arrays.stream(Thread.currentThread().getStackTrace()).anyMatch(e -> e.getClassName().equals(Names.class.getName()))) - forceEnglish = true; + for (Class clazz : new SecurityManager() { + @Override + public Class[] getClassContext() { + return super.getClassContext(); + } + }.getClassContext()) { + if (clazz.equals(Names.class)) { + return EN_US; + } + } + return Language.getInstance(); } }