IBaubleExpanded

基本信息

属性 值
路径 baubles.api.expanded.IBaubleExpanded
类型 interface
父接口 IBauble
包名 baubles.api.expanded
作者 jss2a98aj

抽象方法

方法 用途
String[] getBaubleTypes(ItemStack itemstack) 返回该物品可放入的所有扩展槽位类型。返回的字符串来自 BaubleExpandedSlots 的预注册或自定义注册类型

默认方法

方法 默认行为
void onSlotContentsChanged(ItemStack itemstack, EntityLivingBase player) 当该物品所在的 bauble 槽位的 stack 发生变化时触发(装备成功或玩家交互修改了 stackSize),但整件卸下不会触发此回调。注意:通过 InventoryBaubles 直接修改不会触发

功能

IBauble 的扩展接口,允许单个饰品支持多个槽位类型(如同时属于 amulet 和 charm)。

  • getBaubleType 在扩展层中被忽略(除非物品也想兼容官方 Baubles),可以返回 null
  • getBaubleTypes 返回 String[],每个元素是 BaubleExpandedSlots 注册的类型字符串
  • 通过 BaubleItemHelper.addSlotInformation 在物品 tooltip 中显示可装备的槽位类型

与 IBauble 的差异

项 IBauble IBaubleExpanded
槽位类型数量 1 个(来自 BaubleType enum) 多个(来自注册类型字符串)
扩展槽位支持 仅 RING/AMULET/BELT/UNIVERSAL 全部注册类型(含 head/body/cape/shield/quiver 等)
槽位变化回调 无 onSlotContentsChanged

配套基类

  • BaubleItemBase - 抽象基类,给出 IBaubleExpanded 的默认实现

相关条目