物品匹配器
ItemMatcher是QuickShop-Hikari用来比较项目的工具,它是整个系统中最重要的东西。
caution
如果此功能配置错误,将导致插件停止工作,甚至可用于物品复制、物品克隆、刷钱甚至更糟的事情。
TL;DR:除非您知道自己在做什么,否则保持默认设定。
匹配器
默认情况下,QuickShop-Hikari支持两个匹配器:
- Bukkit 物品匹配(默认)
- QuickShop 物品匹配
- 严格 Bukkit 物品匹配
- 现代匹配
您可以通过调整设置更改匹配器:
matcher:
# 匹配类型:
# 0 = QuickShop 匹配(可在下方配置)
# 1 = Bukkit 匹配
# 2 = 严格 Bukkit 匹配(等价方法)
# 3 = 现代匹配
work-type: 1
# 匹配物品时是否忽略数量。
# 推荐商店匹配使用。
ignore-count: true
# 需要匹配材料/类型(强烈建议)
check-material: true
默认情况下,QuickShop-Hikari 会使用 Bukkit 的匹配保证最佳兼容性。
但你仍然可以切换到 QuickShop 物品匹配,使用自定义比较行为,或者在 Bukkit 比较无法正常使用时作为代替手段。
自定义元数据比较
自定义只能在 QuickShop 项目匹配下使用。
info
使用 QuickShop 的物品判断可能会对服务器有轻微性能影响。 Bukkit API 可以用于匹配物品间涉及较多序列与反序列化的问题。
若无必要请保持使用 Bukkit 物品匹配。
你可以在配置里指定启用或禁用相关检查。
matcher:
# 只比较如下启用的组件。
#
# 单键会与 DataComponentTypeKeys.<KEY> 一比一匹配
# 组键会拓展至多个如下的组件键名
components:
# 比较耐久度/损坏程度。
DAMAGE: true
# 比较自定义显示名称。
CUSTOM_NAME: true
# 比较描述。
LORE: true
# 比较 CustomModelData。
CUSTOM_MODEL_DATA: true
# 比较携带附魔。
ENCHANTMENTS: true
# 比较存储附魔(附魔书)。
STORED_ENCHANTMENTS: true
# 比较属性修饰符。
ATTRIBUTE_MODIFIERS: true
# 比较不可破坏标签。
UNBREAKABLE: true
# 比较盔甲纹饰。
TRIM: true
# 比较盔甲染色。
DYED_COLOR: true
# 比较提示框隐藏标签。
HIDE_ADDITIONAL_TOOLTIP: true
# 比较附魔光泽覆盖。
ENCHANTMENT_GLINT_OVERRIDE: true
# 比较药水内容。
POTION_CONTENTS: true
# 比较药水是否存在延长效果。
POTION_DURATION_SCALE: true
# 比较书本内容(成书/书与笔)
BOOKS: true
# 比较旗帜图案。
BANNER: true
# 比较头颅对应玩家/纹理。
SKULL: true
# 比较烟花元数据(烟花火箭/烟火之星)。
FIREWORK: true
# 比较地图元数据。
MAP: true
# 比较皮革盔甲染色。
LEATHER_ARMOR: true
# 比较鱼桶实体数据。
FISH_BUCKET: true
# 比较谜之炖菜效果。
SUSPICIOUS_STEW: true
# 比较潜影盒内容。
SHULKER_BOX: true
# 比较收纳袋内容。
BUNDLE: true
# 对于物品(只在使用 QuickShop 物品匹配时有效)
item:
# 插件是否检查物品的损坏值?
damage: true
# 插件是否检查物品的修复惩罚?
repaircost: false
# 插件是否检查物品的显示名称?
displayname: true
# 插件是否检查物品的描述?
lores: true
# 插件是否检查物品的携带附魔?
enchs: true
# 插件是否检查物品的药水效果?
potions: true
# 插件是否检查物品的属性?
attributes: true
# 插件是否检查物品的物品标志?
itemflags: true
# 插件是否检查物品的custommodeldata?
custommodeldata: true
# 插件是否检查物品的书本元数据?
books: true
# 插件是否检查旗帜元数据?
banner: true
# 插件是否检查头颅元数据?
skull: true
# 插件是否检查烟花元数据?
firework: true
# 插件是否检查地图元数据?
map: true
# 插件是否检查皮革盔甲元数据?
leatherArmor: true
# 插件是否检查鱼桶元数据?
fishBucket: true
# 插件是否检查谜之炖菜元数据?
suspiciousStew: true
# 插件是否检查潜影盒内容?
shulkerBox: true
# 插件是否检查收纳袋内容?
bundle: true