BaubleItemHelper

基本信息

属性 值
路径 baubles.api.expanded.BaubleItemHelper
类型 class
包名 baubles.api.expanded

方法

方法 修饰 用途
addSlotInformation(List<String> tooltip, String[] types) @SideOnly(CLIENT) 当玩家按住 SHIFT 时,向 tooltip 追加"可装备槽位"信息;否则追加一个 SHIFT 提示。返回是否按住 SHIFT
onBaubleRightClick(ItemStack itemStackIn, World worldIn, EntityPlayer player) — 当玩家右键点击带 IBaubleExpanded 物品时调用;自动遍历 BaublesApi 提供的饰品栏 IInventory,找到第一个空槽位并将物品装备(服务端侧消耗物品)

功能

  • addSlotInformation 内部使用 BaublesConfig.getDisplayTypesWithUniversalOverrides 把可装备类型展示在 tooltip 上,类型名通过 lang 文件 slot.<type> 翻译
  • onBaubleRightClick 自动装备逻辑:
    • 遍历玩家全部槽位
    • 仅装备到第一个匹配的空槽位(不堆叠到已有饰品上)
    • 服务端侧执行:复制物品入槽,扣除玩家手持一份
    • 创意模式不消耗物品
    • 触发 IBaubleExpanded.onEquipped

注意事项

  • 自动装备走的是逐槽位线性扫描;多个空槽时优先低 index 槽位
  • 当物品同时属于多个类型时(如 amulet + charm),会装入第一个允许的槽位
  • 如果服务器没有客户端,玩家右键不会触装备(事件 if(!worldIn.isRemote) 守护)

相关条目