From cc9c23914b8a928026a457b259e44bc4bb2fe655 Mon Sep 17 00:00:00 2001 From: nea Date: Tue, 26 Jul 2022 21:28:10 +0200 Subject: refactoring --- .../moe/nea/notenoughupdates/util/ItemUtil.kt | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 common/src/main/kotlin/moe/nea/notenoughupdates/util/ItemUtil.kt (limited to 'common/src/main/kotlin/moe/nea/notenoughupdates/util/ItemUtil.kt') diff --git a/common/src/main/kotlin/moe/nea/notenoughupdates/util/ItemUtil.kt b/common/src/main/kotlin/moe/nea/notenoughupdates/util/ItemUtil.kt new file mode 100644 index 0000000..d5b8881 --- /dev/null +++ b/common/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