接口 WithStatusEffects


@SilkApi public interface WithStatusEffects

用于自带状态效果的物品

WithStatusEffects 中所有方法返回值中的 StatusEffect 都必须一致,不然后果自负

从以下版本开始:
0.1.0
  • 字段详细资料

    • ARMOR_SLOT

      @SilkApi static final Set<net.minecraft.entity.EquipmentSlot> ARMOR_SLOT
    • HAND_SLOT

      @SilkApi static final Set<net.minecraft.entity.EquipmentSlot> HAND_SLOT
  • 方法详细资料

    • getStatusEffects

      @SilkApi @NotNull @NotNull Map<net.minecraft.entity.effect.StatusEffect,Integer> getStatusEffects()
      返回:
      Map 中的 StatusEffect 为添加的状态效果,Integer 为状态效果的最大等级
    • getStatusEffectsStackingLevel

      @SilkApi @NotNull @NotNull Map<net.minecraft.entity.effect.StatusEffect,Float> getStatusEffectsStackingLevel()
      获取每个状态效果每次的叠加等级
      返回:
      Map 中的 StatusEffect 为添加的状态效果, Float 为状态效果每次的递增等级,小于 0 则递减,等于 0 则不变
    • getStatusEffectsKit

      @SilkApi @NotNull @NotNull Map<net.minecraft.entity.effect.StatusEffect,Optional<Map<net.minecraft.item.Item,Optional<Set<net.minecraft.entity.EquipmentSlot>>>>> getStatusEffectsKit()
      获取效果套装,效果套装中的物品组被识别为相同的 Item, 但只有 WithStatusEffects 才能进行效果判断
      返回:
      Map 中的 StatusEffect 为添加的状态效果; OptionalOptional.empty() 则说明没有套装效果, Map 为当前效果的套装物品组,包括自身或不包括自身都会将自身包括到此物品组。 Item 为套装物品,如果 ItemWithStatusEffects 则忽略 Set 内容, 否则 Set 含义请参阅 EffectiveEquipmentSlot.getEffectiveEquipmentSlot()
    • getKitTriggerThreshold

      @SilkApi @NotNull @NotNull Map<net.minecraft.entity.effect.StatusEffect,Optional<Integer>> getKitTriggerThreshold()
      获取套装触发阈值,套装效果意味着玩家需要集齐一套物品才能触发状态效果
      返回:
      Map 中的 StatusEffect 为添加的状态效果, 如果 getStatusEffectsKit() 中不存在效果套装则为需要多少个自己; OptionalOptional.empty() 则说明需要集齐套装中所有物品, Integer 为最少需要的套装中物品数量,如果大于套装数量则为需要一套套装,小于 1 则视为需要 1 个物品
    • getEffectiveEquipmentSlot

      Optional<Set<net.minecraft.entity.EquipmentSlot>> getEffectiveEquipmentSlot()
      返回有效的装备槽位集合
      返回:
      如果值为 Optional.empty(),则意味着在任意物品栏内皆能生效