From f4bf70032a45b4daa7805ca38f2d820645dc9a6b Mon Sep 17 00:00:00 2001 From: nea Date: Fri, 29 Jul 2022 20:51:53 +0200 Subject: no arch --- .../moe/nea/notenoughupdates/util/ItemUtil.kt | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 src/main/kotlin/moe/nea/notenoughupdates/util/ItemUtil.kt (limited to 'src/main/kotlin/moe/nea/notenoughupdates/util/ItemUtil.kt') diff --git a/src/main/kotlin/moe/nea/notenoughupdates/util/ItemUtil.kt b/src/main/kotlin/moe/nea/notenoughupdates/util/ItemUtil.kt new file mode 100644 index 0000000..d5b8881 --- /dev/null +++ b/src/main/kotlin/moe/nea/notenoughupdates/util/ItemUtil.kt @@ -0,0 +1,23 @@ +package moe.nea.notenoughupdates.util + +import net.minecraft.nbt.CompoundTag +import net.minecraft.nbt.ListTag +import net.minecraft.nbt.StringTag +import net.minecraft.network.chat.Component +import net.minecraft.world.item.ItemStack + +fun ItemStack.appendLore(args: List) { + val compoundTag = getOrCreateTagElement("display") + val loreList = compoundTag.getOrCreateList("Lore", StringTag.TAG_STRING) + for (arg in args) { + loreList.add(StringTag.valueOf(Component.Serializer.toJson(arg))) + } +} + +fun CompoundTag.getOrCreateList(label: String, tag: Byte): ListTag = getList(label, tag.toInt()).also { + put(label, it) +} + +fun CompoundTag.getOrCreateCompoundTag(label: String): CompoundTag = getCompound(label).also { + put(label, it) +} -- cgit