Skip to content

Commit

Permalink
Merge pull request TabooLib#427 from FxRayHughes/tagreader
Browse files Browse the repository at this point in the history
[nms-tag]
  • Loading branch information
Bkm016 committed Jun 1, 2024
2 parents 27c4e8e + 48d41f9 commit 7dde718
Showing 1 changed file with 24 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,30 @@ fun ItemStack?.itemTagReader(reader: ItemTagReader.() -> Unit) {
item.getItemTag().reader(reader)
}

data class ItemTagReader(val itemTag: ItemTag) {
data class ItemTagReader(var itemTag: ItemTag) {

/**
* 获取到子节点的所有key
* parent: 父节点 默认为main
*/
fun getKeys(parent: String = "main"): Set<String> {
if (parent == "main") {
return itemTag.keys
}
return itemTag.getDeep(parent)?.asCompound()?.keys ?: setOf()
}

fun toJson(): String {
return itemTag.toJson()
}

fun formatJson(): String {
return itemTag.toJsonFormatted()
}

fun loadFormJson(json: String) {
itemTag = ItemTag.fromJson(json)
}

fun getString(key: String, def: String): String {
return itemTag.getDeepOrElse(key, ItemTagData(def)).asString()
Expand Down

0 comments on commit 7dde718

Please sign in to comment.