diff options
author | nea <romangraef@gmail.com> | 2022-07-26 21:28:10 +0200 |
---|---|---|
committer | nea <romangraef@gmail.com> | 2022-07-26 21:28:10 +0200 |
commit | cc9c23914b8a928026a457b259e44bc4bb2fe655 (patch) | |
tree | 55744f66b2ccadc5ff12de60c0679b845d7e85b4 /common/src/main/kotlin/moe/nea/notenoughupdates/util/ItemUtil.kt | |
parent | 3aa6b486d80654f4c3ca284f665d1293555adb72 (diff) | |
download | Firmament-cc9c23914b8a928026a457b259e44bc4bb2fe655.tar.gz Firmament-cc9c23914b8a928026a457b259e44bc4bb2fe655.tar.bz2 Firmament-cc9c23914b8a928026a457b259e44bc4bb2fe655.zip |
refactoring
Diffstat (limited to 'common/src/main/kotlin/moe/nea/notenoughupdates/util/ItemUtil.kt')
-rw-r--r-- | common/src/main/kotlin/moe/nea/notenoughupdates/util/ItemUtil.kt | 23 |
1 files changed, 23 insertions, 0 deletions
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<Component>) { + 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) +} |