fix(items): null-safe getDisplayName + log missing items.furnidata.path

This commit is contained in:
simoleo89
2026-06-04 21:16:55 +02:00
parent f2e0f6e2d5
commit 3a505cd559
2 changed files with 8 additions and 3 deletions
@@ -56,7 +56,9 @@ public class FurnitureTextProvider {
String override = Emulator.getConfig().getValue("items.furnidata.path", ""); String override = Emulator.getConfig().getValue("items.furnidata.path", "");
if (!override.isEmpty()) { if (!override.isEmpty()) {
Path p = Paths.get(override); Path p = Paths.get(override);
return Files.exists(p) ? p : null; if (Files.exists(p)) return p;
LOGGER.warn("FurnitureTextProvider: items.furnidata.path '{}' does not exist", override);
return null;
} }
String basePath = Emulator.getConfig().getValue("furni.editor.asset.base.path", ""); String basePath = Emulator.getConfig().getValue("furni.editor.asset.base.path", "");
if (basePath.isEmpty()) return null; if (basePath.isEmpty()) return null;
@@ -173,9 +173,12 @@ public class Item implements ISerialize {
* Never returns null. * Never returns null.
*/ */
public String getDisplayName() { public String getDisplayName() {
FurnitureTextProvider provider = Emulator.getGameEnvironment().getFurnitureTextProvider(); FurnitureTextProvider provider = (Emulator.getGameEnvironment() != null)
? Emulator.getGameEnvironment().getFurnitureTextProvider()
: null;
String name = (provider != null) ? provider.getName(this.name) : null; String name = (provider != null) ? provider.getName(this.name) : null;
return (name != null && !name.isBlank()) ? name : this.fullName; if (name != null && !name.isBlank()) return name;
return (this.fullName != null) ? this.fullName : "";
} }
public FurnitureType getType() { public FurnitureType getType() {