Compare commits

..

No commits in common. "master" and "1.1.2" have entirely different histories.

4 changed files with 14 additions and 21 deletions

View File

@ -1,16 +1,15 @@
plugins { plugins {
id("jfmod") version "1.6-SNAPSHOT" id("jfmod") version "1.5-SNAPSHOT"
} }
allprojects { group = "io.gitlab.jfronny" } allprojects { group = "io.gitlab.jfronny" }
base.archivesName = "globalization" base.archivesName = "globalization"
jfMod { jfMod {
minecraftVersion = "1.21" minecraftVersion = "1.20.2"
yarn("build.1") yarn("build.1")
loaderVersion = "0.15.11" loaderVersion = "0.14.22"
libJfVersion = "3.16.0" libJfVersion = "3.13.1"
fabricApiVersion = "0.100.1+1.21"
modrinth { modrinth {
projectId = "globalization" projectId = "globalization"
@ -26,15 +25,11 @@ jfMod {
} }
dependencies { dependencies {
modImplementation("io.gitlab.jfronny.libjf:libjf-config-core-v2") modImplementation("io.gitlab.jfronny.libjf:libjf-config-core-v2:${jfMod.libJfVersion.get()}")
modImplementation("io.gitlab.jfronny.libjf:libjf-translate-v1") modImplementation("io.gitlab.jfronny.libjf:libjf-translate-v1:${jfMod.libJfVersion.get()}")
// Dev env // Dev env
modLocalRuntime("io.gitlab.jfronny.libjf:libjf-config-ui-tiny") modLocalRuntime("io.gitlab.jfronny.libjf:libjf-config-ui-tiny:${jfMod.libJfVersion.get()}")
modLocalRuntime("io.gitlab.jfronny.libjf:libjf-devutil") modLocalRuntime("io.gitlab.jfronny.libjf:libjf-devutil:${jfMod.libJfVersion.get()}")
modLocalRuntime("com.terraformersmc:modmenu:11.0.0-beta.1") modLocalRuntime("com.terraformersmc:modmenu:8.0.0-beta.2")
// for modmenu
modLocalRuntime("net.fabricmc.fabric-api:fabric-resource-loader-v0")
modLocalRuntime("net.fabricmc.fabric-api:fabric-screen-api-v1")
modLocalRuntime("net.fabricmc.fabric-api:fabric-key-binding-api-v1")
} }

View File

@ -5,7 +5,6 @@ import io.gitlab.jfronny.globalization.GlobalizationMap;
import net.minecraft.client.resource.language.TranslationStorage; import net.minecraft.client.resource.language.TranslationStorage;
import net.minecraft.resource.ResourceManager; import net.minecraft.resource.ResourceManager;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Unique;
import org.spongepowered.asm.mixin.injection.*; import org.spongepowered.asm.mixin.injection.*;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
import org.spongepowered.asm.mixin.injection.callback.LocalCapture; import org.spongepowered.asm.mixin.injection.callback.LocalCapture;
@ -14,7 +13,7 @@ import java.util.*;
@Mixin(TranslationStorage.class) @Mixin(TranslationStorage.class)
public class TranslationStorageMixin { public class TranslationStorageMixin {
@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;", remap = false), index = 3) @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) { private static Map<String, String> globalization$createCustomMap(Map<String, String> original) {
if (!original.isEmpty()) throw new IllegalStateException("Non-empty original"); if (!original.isEmpty()) throw new IllegalStateException("Non-empty original");
return new GlobalizationMap(); return new GlobalizationMap();
@ -25,12 +24,11 @@ public class TranslationStorageMixin {
globalization$getMap(map).fork(); globalization$getMap(map).fork();
} }
@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;", remap = false)) @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) { private static ImmutableMap<String, String> globalization$generateMissing(Map<String, String> source) {
return ImmutableMap.copyOf(globalization$getMap(source).generateMissing()); return ImmutableMap.copyOf(globalization$getMap(source).generateMissing());
} }
@Unique
private static GlobalizationMap globalization$getMap(Map<String, String> map) { private static GlobalizationMap globalization$getMap(Map<String, String> map) {
return (GlobalizationMap) map; return (GlobalizationMap) map;
} }

View File

@ -1,7 +1,7 @@
package io.gitlab.jfronny.globalization; package io.gitlab.jfronny.globalization;
import io.gitlab.jfronny.commons.logger.SystemLoggerPlus; import io.gitlab.jfronny.commons.logging.Logger;
public class Globalization { public class Globalization {
public static final SystemLoggerPlus LOG = SystemLoggerPlus.forName("globalization"); public static final Logger LOG = Logger.forName("globalization");
} }

View File

@ -125,7 +125,7 @@ public class GlobalizationMap extends AbstractMap<String, String> {
@Override @Override
public boolean isEmpty() { public boolean isEmpty() {
return pools.isEmpty() || (pools.size() == 1 && pools.getFirst().isEmpty()); return pools.isEmpty() || (pools.size() == 1 && pools.get(0).isEmpty());
} }
@Override @Override