Skip to content

Commit c52d7e0

Browse files
itemi18n: Fix translation for trim pattern and handle item having desc
1 parent 87d0ce9 commit c52d7e0

File tree

1 file changed

+39
-3
lines changed

1 file changed

+39
-3
lines changed

src/main/java/org/maxgamer/quickshop/localization/game/game/MojangGameLanguageImpl.java

Lines changed: 39 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,11 @@
3737
import org.maxgamer.quickshop.util.MsgUtil;
3838
import org.maxgamer.quickshop.util.ReflectFactory;
3939
import org.maxgamer.quickshop.util.Util;
40-
import org.maxgamer.quickshop.util.mojangapi.*;
40+
import org.maxgamer.quickshop.util.mojangapi.MojangAPI;
41+
import org.maxgamer.quickshop.util.mojangapi.MojangApiBmclApiMirror;
42+
import org.maxgamer.quickshop.util.mojangapi.MojangApiMcbbsApiMirror;
43+
import org.maxgamer.quickshop.util.mojangapi.MojangApiMirror;
44+
import org.maxgamer.quickshop.util.mojangapi.MojangApiOfficialMirror;
4145

4246
import java.io.File;
4347
import java.io.FileInputStream;
@@ -46,7 +50,11 @@
4650
import java.nio.charset.StandardCharsets;
4751
import java.nio.file.Files;
4852
import java.util.Optional;
49-
import java.util.concurrent.*;
53+
import java.util.concurrent.Callable;
54+
import java.util.concurrent.ExecutionException;
55+
import java.util.concurrent.FutureTask;
56+
import java.util.concurrent.TimeUnit;
57+
import java.util.concurrent.TimeoutException;
5058
import java.util.concurrent.atomic.AtomicBoolean;
5159
import java.util.concurrent.atomic.AtomicReference;
5260
import java.util.logging.Level;
@@ -134,10 +142,38 @@ public void load() {
134142
if (!lang.isPresent()) {
135143
return super.getItem(material);
136144
}
137-
JsonElement element = lang.get().get("item.minecraft." + material.name().toLowerCase());
145+
JsonElement element;
146+
String name = material.name().toLowerCase();
147+
boolean isSmithingTemplate = false;
148+
boolean hasDesc = false;
149+
if (name.endsWith("_banner_pattern") || name.startsWith("music_disc")) {
150+
hasDesc = true;
151+
element = lang.get().get("item.minecraft." + name);
152+
} else if (name.endsWith("_armor_trim_smithing_template")) {
153+
isSmithingTemplate = true;
154+
element = lang.get().get("trim_pattern.minecraft." + name.substring(0, name.length() - "_armor_trim_smithing_template".length()));
155+
} else if (name.endsWith("_upgrade_smithing_template")) {
156+
isSmithingTemplate = true;
157+
element = lang.get().get("upgrade.minecraft." + name.substring(0, name.length() - "_smithing_template".length()));
158+
} else {
159+
element = lang.get().get("item.minecraft." + name);
160+
}
138161
if (element == null) {
139162
return getBlock(material);
140163
} else {
164+
if (isSmithingTemplate) {
165+
JsonElement prefix = lang.get().get("item.minecraft.smithing_template");
166+
if (prefix != null) {
167+
return prefix.getAsString() + ":" + element.getAsString();
168+
}
169+
}
170+
if (hasDesc) {
171+
JsonElement desc = lang.get().get("item.minecraft." + name + ".desc");
172+
if (desc != null) {
173+
return element.getAsString() + ":" + desc.getAsString();
174+
}
175+
}
176+
141177
return element.getAsString();
142178
}
143179
}

0 commit comments

Comments
 (0)