模块 linlang.api
程序包 api.linlang.tool

类 LinItems

java.lang.Object
api.linlang.tool.LinItems

public final class LinItems extends Object
物品堆栈的无状态判断与计算工具。
  • 方法概要

    修饰符和类型
    方法
    说明
    static boolean
    canStack(org.bukkit.inventory.ItemStack left, org.bukkit.inventory.ItemStack right)
    判断两个物品能否放入同一堆栈。
    static org.bukkit.inventory.ItemStack
    copy(org.bukkit.inventory.ItemStack item)
    创建物品副本。
    static org.bukkit.inventory.ItemStack
    copyWithAmount(org.bukkit.inventory.ItemStack item, int amount)
    创建指定数量的物品副本。
    static boolean
    isEmpty(org.bukkit.inventory.ItemStack item)
    判断物品是否没有可用内容。
    static boolean
    isFullStack(org.bukkit.inventory.ItemStack item)
    判断物品数量是否达到其最大堆叠数量。
    static int
    remainingSpace(org.bukkit.inventory.ItemStack target, org.bukkit.inventory.ItemStack incoming, org.bukkit.inventory.Inventory inventory)
    计算目标堆栈还能接收多少个同类物品。
    static boolean
    sameType(org.bukkit.inventory.ItemStack left, org.bukkit.inventory.ItemStack right)
    判断两个非空物品是否使用相同材质。
    static List<org.bukkit.inventory.ItemStack>
    split(org.bukkit.inventory.ItemStack item)
    按物品最大堆叠数量拆分原物品。
    static List<org.bukkit.inventory.ItemStack>
    split(org.bukkit.inventory.ItemStack template, int amount)
    按物品最大堆叠数量拆分指定总量。
    static long
    totalAmount(Iterable<? extends org.bukkit.inventory.ItemStack> items)
    汇总一组物品中的有效数量。
    static long
    totalAmountSimilar(Iterable<? extends org.bukkit.inventory.ItemStack> items, org.bukkit.inventory.ItemStack sample)
    汇总一组物品中与样本相似的物品数量。

    从类继承的方法 java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • 方法详细资料

    • isEmpty

      public static boolean isEmpty(org.bukkit.inventory.ItemStack item)
      判断物品是否没有可用内容。
      参数:
      item - 物品,可为 null
      返回:
      物品为空、空气或数量不大于零时为 true
    • copy

      public static org.bukkit.inventory.ItemStack copy(org.bukkit.inventory.ItemStack item)
      创建物品副本。
      参数:
      item - 原物品
      返回:
      不共享 ItemMeta 的物品副本
    • copyWithAmount

      public static org.bukkit.inventory.ItemStack copyWithAmount(org.bukkit.inventory.ItemStack item, int amount)
      创建指定数量的物品副本。
      参数:
      item - 原物品
      amount - 副本数量
      返回:
      指定数量的新物品
    • canStack

      public static boolean canStack(org.bukkit.inventory.ItemStack left, org.bukkit.inventory.ItemStack right)
      判断两个物品能否放入同一堆栈。
      参数:
      left - 左侧物品
      right - 右侧物品
      返回:
      两者均为空,或物品元数据相同时为 true
    • sameType

      public static boolean sameType(org.bukkit.inventory.ItemStack left, org.bukkit.inventory.ItemStack right)
      判断两个非空物品是否使用相同材质。
      参数:
      left - 左侧物品
      right - 右侧物品
      返回:
      两者均非空且材质相同时为 true
    • isFullStack

      public static boolean isFullStack(org.bukkit.inventory.ItemStack item)
      判断物品数量是否达到其最大堆叠数量。
      参数:
      item - 物品
      返回:
      物品非空且已经满堆时为 true
    • split

      public static List<org.bukkit.inventory.ItemStack> split(org.bukkit.inventory.ItemStack item)
      按物品最大堆叠数量拆分原物品。
      参数:
      item - 原物品
      返回:
      不共享物品元数据的堆栈副本
    • split

      public static List<org.bukkit.inventory.ItemStack> split(org.bukkit.inventory.ItemStack template, int amount)
      按物品最大堆叠数量拆分指定总量。
      参数:
      template - 物品模板
      amount - 待拆分总量
      返回:
      不共享物品元数据的堆栈副本
    • remainingSpace

      public static int remainingSpace(org.bukkit.inventory.ItemStack target, org.bukkit.inventory.ItemStack incoming, org.bukkit.inventory.Inventory inventory)
      计算目标堆栈还能接收多少个同类物品。
      参数:
      target - 目标堆栈
      incoming - 待放入物品
      inventory - 所属容器
      返回:
      可接收数量;物品不同或目标已满时返回零
    • totalAmount

      public static long totalAmount(Iterable<? extends org.bukkit.inventory.ItemStack> items)
      汇总一组物品中的有效数量。
      参数:
      items - 物品集合
      返回:
      非空物品的数量总和
    • totalAmountSimilar

      public static long totalAmountSimilar(Iterable<? extends org.bukkit.inventory.ItemStack> items, org.bukkit.inventory.ItemStack sample)
      汇总一组物品中与样本相似的物品数量。
      参数:
      items - 物品集合
      sample - 样本物品
      返回:
      相似物品的数量总和