Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
3753d87dba | |||
e3370a9ff5 | |||
53f6d95ef7 |
@ -1,15 +1,16 @@
|
||||
plugins {
|
||||
id("jfmod") version "1.5-SNAPSHOT"
|
||||
id("jfmod") version "1.6-SNAPSHOT"
|
||||
}
|
||||
|
||||
allprojects { group = "io.gitlab.jfronny" }
|
||||
base.archivesName = "globalization"
|
||||
|
||||
jfMod {
|
||||
minecraftVersion = "1.20.2"
|
||||
minecraftVersion = "1.21"
|
||||
yarn("build.1")
|
||||
loaderVersion = "0.14.22"
|
||||
libJfVersion = "3.13.1"
|
||||
loaderVersion = "0.15.11"
|
||||
libJfVersion = "3.16.0"
|
||||
fabricApiVersion = "0.100.1+1.21"
|
||||
|
||||
modrinth {
|
||||
projectId = "globalization"
|
||||
@ -25,11 +26,15 @@ jfMod {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
modImplementation("io.gitlab.jfronny.libjf:libjf-config-core-v2:${jfMod.libJfVersion.get()}")
|
||||
modImplementation("io.gitlab.jfronny.libjf:libjf-translate-v1:${jfMod.libJfVersion.get()}")
|
||||
modImplementation("io.gitlab.jfronny.libjf:libjf-config-core-v2")
|
||||
modImplementation("io.gitlab.jfronny.libjf:libjf-translate-v1")
|
||||
|
||||
// Dev env
|
||||
modLocalRuntime("io.gitlab.jfronny.libjf:libjf-config-ui-tiny:${jfMod.libJfVersion.get()}")
|
||||
modLocalRuntime("io.gitlab.jfronny.libjf:libjf-devutil:${jfMod.libJfVersion.get()}")
|
||||
modLocalRuntime("com.terraformersmc:modmenu:8.0.0-beta.2")
|
||||
modLocalRuntime("io.gitlab.jfronny.libjf:libjf-config-ui-tiny")
|
||||
modLocalRuntime("io.gitlab.jfronny.libjf:libjf-devutil")
|
||||
modLocalRuntime("com.terraformersmc:modmenu:11.0.0-beta.1")
|
||||
// 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")
|
||||
}
|
||||
|
@ -5,6 +5,7 @@ import io.gitlab.jfronny.globalization.GlobalizationMap;
|
||||
import net.minecraft.client.resource.language.TranslationStorage;
|
||||
import net.minecraft.resource.ResourceManager;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.Unique;
|
||||
import org.spongepowered.asm.mixin.injection.*;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
|
||||
import org.spongepowered.asm.mixin.injection.callback.LocalCapture;
|
||||
@ -13,7 +14,7 @@ import java.util.*;
|
||||
|
||||
@Mixin(TranslationStorage.class)
|
||||
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;"), 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;", remap = false), 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();
|
||||
@ -24,11 +25,12 @@ public class TranslationStorageMixin {
|
||||
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;"))
|
||||
@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))
|
||||
private static ImmutableMap<String, String> globalization$generateMissing(Map<String, String> source) {
|
||||
return ImmutableMap.copyOf(globalization$getMap(source).generateMissing());
|
||||
}
|
||||
|
||||
@Unique
|
||||
private static GlobalizationMap globalization$getMap(Map<String, String> map) {
|
||||
return (GlobalizationMap) map;
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
package io.gitlab.jfronny.globalization;
|
||||
|
||||
import io.gitlab.jfronny.commons.logging.Logger;
|
||||
import io.gitlab.jfronny.commons.logger.SystemLoggerPlus;
|
||||
|
||||
public class Globalization {
|
||||
public static final Logger LOG = Logger.forName("globalization");
|
||||
public static final SystemLoggerPlus LOG = SystemLoggerPlus.forName("globalization");
|
||||
}
|
||||
|
@ -125,7 +125,7 @@ public class GlobalizationMap extends AbstractMap<String, String> {
|
||||
|
||||
@Override
|
||||
public boolean isEmpty() {
|
||||
return pools.isEmpty() || (pools.size() == 1 && pools.get(0).isEmpty());
|
||||
return pools.isEmpty() || (pools.size() == 1 && pools.getFirst().isEmpty());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Loading…
Reference in New Issue
Block a user