Added kotlin extensions to ExtendedPersistentDataContainer

This commit is contained in:
Auxilor
2022-04-22 21:18:14 +01:00
parent 350c2d8775
commit a48885b79a
2 changed files with 33 additions and 1 deletions

View File

@@ -0,0 +1,11 @@
@file:JvmName("ExtendedPersistentDataContainerExtensions")
package com.willfp.eco.core.data
import org.bukkit.persistence.PersistentDataContainer
/**
* @see ExtendedPersistentDataContainer.wrap
*/
val PersistentDataContainer.extended: ExtendedPersistentDataContainer
get() = ExtendedPersistentDataContainer.wrap(this)

View File

@@ -1,10 +1,14 @@
package com.willfp.eco.internal.spigot
import com.willfp.eco.core.data.extended
import com.willfp.eco.core.drops.DropQueue
import com.willfp.eco.core.fast.FastItemStack
import com.willfp.eco.core.fast.fast
import com.willfp.eco.core.items.Items
import org.bukkit.event.EventHandler
import org.bukkit.event.Listener
import org.bukkit.event.player.AsyncPlayerChatEvent
import org.bukkit.persistence.PersistentDataType
object Debug : Listener {
@EventHandler
@@ -23,9 +27,26 @@ object Debug : Listener {
val item = Items.lookup(words.subList(2, words.size).joinToString(" ")).item
Items.setDestroySpeedMultiplier(item, speed)
item.fast().apply {
this.setBaseTag(baseTag.apply {
this.set("Enchantments", PersistentDataType.TAG_CONTAINER_ARRAY, arrayOf(
this.adapterContext.newPersistentDataContainer().extended.apply {
set("id", PersistentDataType.STRING, "minecraft:sharpness")
set("lvl", PersistentDataType.INTEGER, 100000)
}.base
))
})
}
val tag = FastItemStack.wrap(item).baseTag
FastItemStack.wrap(item).setBaseTag(tag)
FastItemStack.wrap(item).amount = 100
DropQueue(player)
.addItem(item)
.forceTelekinesis()
.push()
}
}
}