You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
val translator =AddonTranslator.translators[schema.addon]
49
52
check(translator !=null) {
50
53
"Addon does not have a translator; did you forget to call registerWithPylon()?"
51
54
}
52
55
53
56
// Adventure is a perfect API with absolutely no problems whatsoever.
54
-
val name =PlainTextComponentSerializer.plainText().serialize(schema.itemStack.effectiveName())
55
-
val lore = schema.itemStack.lore()?.get(0)?.let { PlainTextComponentSerializer.plainText().serialize(it) }
57
+
val name = schema.itemStack.getData(DataComponentTypes.ITEM_NAME) as?TranslatableComponent
58
+
val lore = schema.itemStack.getData(DataComponentTypes.LORE)?.lines()?.get(0) as?TranslatableComponent
56
59
57
60
var isNameAndLoreValid =true
58
-
if (name !=ItemStackBuilder.nameKey(schema.key)) {
61
+
if (name ==null|| name.key() !=ItemStackBuilder.nameKey(schema.key)) {
59
62
PylonCore.logger.warning("Item ${schema.key}'s name is not a translation key; check your item uses ItemStackBuilder.pylonItem(...)")
60
63
isNameAndLoreValid =false
61
64
}
62
65
63
-
if (lore ==null|| lore !=ItemStackBuilder.loreKey(schema.key)) {
66
+
if (lore ==null|| lore.key()!=ItemStackBuilder.loreKey(schema.key)) {
64
67
PylonCore.logger.warning("Item ${schema.key}'s lore is not a translation key; check your item uses ItemStackBuilder.pylonItem(...)")
65
68
isNameAndLoreValid =false
66
69
}
67
70
68
71
if (isNameAndLoreValid) {
69
72
for (locale in schema.addon.languages) {
70
-
if (!translator.translationKeyExists(name, locale)) {
71
-
PylonCore.logger.warning("Item ${schema.key} is missing a name translation key (${locale.displayName} | ${ItemStackBuilder.nameKey(schema.key)}")
73
+
if (!translator.translationKeyExists(name!!.key(), locale)) {
74
+
PylonCore.logger.warning("${schema.key.namespace} is missing a name translation key for item ${schema.key} (locale: ${locale.displayName} | expected translation key:${ItemStackBuilder.nameKey(schema.key)}")
72
75
}
73
-
if (!translator.translationKeyExists(lore!!, locale)) {
74
-
PylonCore.logger.warning("Item ${schema.key} is missing a lore translation key (${locale.displayName} | ${ItemStackBuilder.loreKey(schema.key)}")
76
+
if (!translator.translationKeyExists(lore!!.key(), locale)) {
77
+
PylonCore.logger.warning("${schema.key.namespace} is missing a lore translation key for item ${schema.key} (locale: ${locale.displayName} | expected translation key:${ItemStackBuilder.loreKey(schema.key)}")
75
78
}
76
79
}
77
80
}
81
+
}
78
82
83
+
privatefunregister(schema:PylonItemSchema) {
84
+
if (!nameAndLoreWarningsSupressed.contains(schema.key)) {
85
+
checkNameAndLore(schema)
86
+
}
79
87
PylonRegistry.ITEMS.register(schema)
80
88
}
81
89
@@ -106,5 +114,10 @@ open class PylonItem(val stack: ItemStack) : Keyed {
0 commit comments