Skip to content

Commit 76dfaf3

Browse files
authored
Merge pull request #631 from L1-An/dev/6.2.3
feat(bukkit-util): 添加物品属性修改器支持
2 parents abd325e + 8581299 commit 76dfaf3

File tree

1 file changed

+29
-0
lines changed
  • module/bukkit/bukkit-util/src/main/kotlin/taboolib/platform/util

1 file changed

+29
-0
lines changed

module/bukkit/bukkit-util/src/main/kotlin/taboolib/platform/util/ItemBuilder.kt

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import org.bukkit.ChatColor
66
import org.bukkit.Color
77
import org.bukkit.Material
88
import org.bukkit.NamespacedKey
9+
import org.bukkit.attribute.Attribute
910
import org.bukkit.attribute.AttributeModifier
1011
import org.bukkit.block.banner.Pattern
1112
import org.bukkit.enchantments.Enchantment
@@ -21,6 +22,8 @@ import taboolib.library.xseries.XAttribute
2122
import taboolib.library.xseries.XMaterial
2223
import taboolib.module.chat.colored
2324
import java.util.*
25+
import kotlin.collections.ArrayList
26+
import kotlin.collections.HashMap
2427

2528
/**
2629
* 通过现有物品构建新的物品
@@ -159,8 +162,27 @@ open class ItemBuilder {
159162
*/
160163
var itemModel: NamespacedKey? = null
161164

165+
/**
166+
* 1.20.5
167+
* Hide Tooltip
168+
* 完全不显示 Tooltip 信息
169+
*/
162170
var isHideTooltip: Boolean = false
163171

172+
/**
173+
* 1.20.5
174+
* Attribute Modifier
175+
*/
176+
val attributeModifiers = HashMap<Attribute, AttributeModifier>()
177+
178+
/**
179+
* 1.20.5
180+
* 添加属性修改器
181+
*/
182+
fun addAttributeModifier(attribute: Attribute, modifier: AttributeModifier) {
183+
attributeModifiers[attribute] = modifier
184+
}
185+
164186
/**
165187
* 唯一化
166188
*/
@@ -334,6 +356,13 @@ open class ItemBuilder {
334356
itemMeta.isHideTooltip = isHideTooltip
335357
} catch (_: Throwable) {
336358
}
359+
// Attribute Modifier
360+
try {
361+
attributeModifiers.forEach { (attribute, modifier) ->
362+
itemMeta.addAttributeModifier(attribute, modifier)
363+
}
364+
} catch (_: Throwable) {
365+
}
337366
// 唯一化
338367
try {
339368
if (unique) {

0 commit comments

Comments
 (0)