Update 1.19.4
ci/woodpecker/push/jfmod Pipeline failed Details
ci/woodpecker/tag/jfmod Pipeline was successful Details

This commit is contained in:
Johannes Frohnmeyer 2023-03-14 22:45:24 +01:00
parent ff8756dc1a
commit 56872f1309
Signed by: Johannes
GPG Key ID: E76429612C2929F4
4 changed files with 12 additions and 14 deletions

View File

@ -11,5 +11,5 @@ dependencies {
// Dev env
modLocalRuntime("io.gitlab.jfronny.libjf:libjf-config-ui-tiny-v1:${prop("libjf_version")}")
modLocalRuntime("io.gitlab.jfronny.libjf:libjf-devutil:${prop("libjf_version")}")
modLocalRuntime("com.terraformersmc:modmenu:5.0.2")
modLocalRuntime("com.terraformersmc:modmenu:6.1.0-rc.1")
}

View File

@ -1,7 +1,7 @@
# https://fabricmc.net/develop/
minecraft_version=1.19.3
yarn_mappings=build.5
loader_version=0.14.12
minecraft_version=1.19.4
yarn_mappings=build.1
loader_version=0.14.17
maven_group=io.gitlab.jfronny
archives_base_name=globalization
@ -10,5 +10,5 @@ modrinth_id=globalization
modrinth_required_dependencies=libjf
modrinth_optional_dependencies=modmenu
libjf_version=3.5.0
fabric_version=0.70.0+1.19.3
libjf_version=3.6.0
fabric_version=0.75.3+1.19.4

View File

@ -2,7 +2,6 @@ package io.gitlab.jfronny.globalization.mixin;
import com.google.common.collect.ImmutableMap;
import io.gitlab.jfronny.globalization.GlobalizationMap;
import net.minecraft.client.resource.language.LanguageDefinition;
import net.minecraft.client.resource.language.TranslationStorage;
import net.minecraft.resource.ResourceManager;
import org.spongepowered.asm.mixin.Mixin;
@ -10,23 +9,22 @@ import org.spongepowered.asm.mixin.injection.*;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
import org.spongepowered.asm.mixin.injection.callback.LocalCapture;
import java.util.List;
import java.util.Map;
import java.util.*;
@Mixin(TranslationStorage.class)
public class TranslationStorageMixin {
@ModifyVariable(method = "load(Lnet/minecraft/resource/ResourceManager;Ljava/util/List;)Lnet/minecraft/client/resource/language/TranslationStorage;", at = @At(value = "INVOKE_ASSIGN", target = "Lcom/google/common/collect/Maps;newHashMap()Ljava/util/HashMap;"), index = 2)
@ModifyVariable(method = "load(Lnet/minecraft/resource/ResourceManager;Ljava/util/List;Z)Lnet/minecraft/client/resource/language/TranslationStorage;", at = @At(value = "INVOKE_ASSIGN", target = "Lcom/google/common/collect/Maps;newHashMap()Ljava/util/HashMap;"), index = 3)
private static Map<String, String> globalization$createCustomMap(Map<String, String> original) {
if (!original.isEmpty()) throw new IllegalStateException("Non-empty original");
return new GlobalizationMap();
}
@Inject(method = "load(Lnet/minecraft/resource/ResourceManager;Ljava/util/List;)Lnet/minecraft/client/resource/language/TranslationStorage;", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/resource/language/LanguageDefinition;isRightToLeft()Z"), locals = LocalCapture.CAPTURE_FAILHARD)
private static void globalization$forkCustomMap(ResourceManager resourceManager, List<LanguageDefinition> definitions, CallbackInfoReturnable<TranslationStorage> cir, Map<String, String> map) {
@Inject(method = "load(Lnet/minecraft/resource/ResourceManager;Ljava/util/List;Z)Lnet/minecraft/client/resource/language/TranslationStorage;", at = @At(value = "INVOKE", target = "Ljava/lang/String;format(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;"), locals = LocalCapture.CAPTURE_FAILHARD)
private static void globalization$forkCustomMap(ResourceManager manager, List<String> definitions, boolean leftToRight, CallbackInfoReturnable<String> cir, Map<String, String> map) {
globalization$getMap(map).fork();
}
@Redirect(method = "load(Lnet/minecraft/resource/ResourceManager;Ljava/util/List;)Lnet/minecraft/client/resource/language/TranslationStorage;", at = @At(value = "INVOKE", target = "Lcom/google/common/collect/ImmutableMap;copyOf(Ljava/util/Map;)Lcom/google/common/collect/ImmutableMap;"))
@Redirect(method = "load(Lnet/minecraft/resource/ResourceManager;Ljava/util/List;Z)Lnet/minecraft/client/resource/language/TranslationStorage;", at = @At(value = "INVOKE", target = "Lcom/google/common/collect/ImmutableMap;copyOf(Ljava/util/Map;)Lcom/google/common/collect/ImmutableMap;"))
private static ImmutableMap<String, String> globalization$generateMissing(Map<String, String> source) {
return ImmutableMap.copyOf(globalization$getMap(source).generateMissing());
}

View File

@ -13,7 +13,7 @@ import java.util.stream.Collectors;
public class GlobalizationMap extends AbstractMap<String, String> {
private static final Path targetPath = FabricLoader.getInstance().getConfigDir().resolve("globalization");
private List<Map<String, String>> pools = new LinkedList<>();
private final List<Map<String, String>> pools = new LinkedList<>();
public void fork() {
if (pools.isEmpty() || !getCurrentPool().isEmpty()) pools.add(new LinkedHashMap<>());