Compare commits

...

2 Commits

Author SHA1 Message Date
Johannes Frohnmeyer 27ccde0bec
fix: additional null check
ci/woodpecker/push/jfmod Pipeline was successful Details
2023-11-19 14:07:10 +01:00
Johannes Frohnmeyer 2a371d627f
fix: patch Language instances created by Language.create() 2023-11-19 14:06:59 +01:00
2 changed files with 17 additions and 5 deletions

View File

@ -10,7 +10,8 @@ public class RenderScheduler {
public void scheduleRender() {
shouldRun.set(true);
if (MinecraftClient.getInstance().isOnThread()) performTask();
MinecraftClient mc = MinecraftClient.getInstance();
if (mc != null && mc.isOnThread()) performTask();
}
public void deschedule() {

View File

@ -4,10 +4,11 @@ import io.gitlab.jfronny.translater.Translater;
import net.minecraft.client.resource.language.TranslationStorage;
import net.minecraft.util.Language;
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.*;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import java.util.Map;
@Mixin(Language.class)
public class LanguageMixin {
@Inject(at = @At("HEAD"), method = "setInstance")
@ -15,7 +16,17 @@ public class LanguageMixin {
if (language instanceof TranslationStorage t) {
TranslationStorageAccessor ta = (TranslationStorageAccessor) t;
ta.setTranslations(Translater.getMap(ta.getTranslations()));
Translater.LOGGER.info("Set translater backend");
}
Translater.LOGGER.info("Set translater backend 2");
} else Translater.LOGGER.warn("Unsupported language configured: " + language);
}
@ModifyArg(
at = @At(value = "INVOKE", target = "Lnet/minecraft/util/Language$1;<init>(Ljava/util/Map;)V"),
method = "create()Lnet/minecraft/util/Language;",
index = 0
)
private static Map<String, String> postCreate(Map<String, String> par1) {
Translater.LOGGER.info("Set translater backend 1");
return Translater.getMap(par1);
}
}