接口 HumanEntity

所有超级接口:
AnimalTamer, Attributable, CommandSender, Damageable, Entity, InventoryHolder, LivingEntity, Metadatable, Nameable, Permissible, ProjectileSource, ServerOperator
所有已知子接口:
Player

public interface HumanEntity extends LivingEntity, AnimalTamer, Permissible, InventoryHolder
代表人类实体, 比如一个NPC或一名玩家
  • 方法详细资料

    • getName

      String getName()
      返回该玩家的玩家名.

      原文:Returns the name of this player

      指定者:
      getName 在接口中 AnimalTamer
      指定者:
      getName 在接口中 CommandSender
      返回:
      玩家名
    • getInventory

      PlayerInventory getInventory()
      获取玩家的物品栏(俗称背包).

      原文:Get the player's inventory.

      指定者:
      getInventory 在接口中 InventoryHolder
      返回:
      玩家物品栏, 包含盔甲槽
    • getEnderChest

      Inventory getEnderChest()
      获取玩家的末影箱物品栏.

      原文:Get the player's EnderChest inventory

      返回:
      玩家的末影箱
    • getMainHand

      MainHand getMainHand()
      获取玩家设置的主手.

      原文:Gets the player's selected main hand

      返回:
      玩家主手
    • setWindowProperty

      boolean setWindowProperty(InventoryView.Property prop, int value)
      若玩家当前打开了一个物品栏窗口, 此方法将设置窗口的属性, 比如酿造台的酿造进度.

      原文:If the player currently has an inventory window open, this method will set a property of that window, such as the state of a progress bar.

      参数:
      prop - 窗口属性
      value - 要设置的属性值
      返回:
      若属性成功设置返回true
    • getOpenInventory

      InventoryView getOpenInventory()
      获取玩家正在查看的物品栏. 如果他们没有打开任何物品栏窗口, 将返回他们的内部合成视图(玩家背包的那四个格子?).

      原文:Gets the inventory view the player is currently viewing. If they do not have an inventory window open, it returns their internal crafting view.

      返回:
      物品栏视图
    • openInventory

      InventoryView openInventory(Inventory inventory)
      打开一个物品栏, 窗口顶部为你指定的物品栏, 底部为玩家物品栏(背包).

      原文:Opens an inventory window with the specified inventory on the top and the player's inventory on the bottom.

      参数:
      inventory - 要打开的物品栏
      返回:
      新打开的物品栏的视图
    • openWorkbench

      InventoryView openWorkbench(Location location, boolean force)
      打开一个空白工作台物品栏界面, 玩家物品栏(背包)在底部.

      原文:Opens an empty workbench inventory window with the player's inventory on the bottom.

      参数:
      location - 工作台位置. 若为null, 将使用玩家所处位置
      force - 若为false, 同时指定位置不是工作台方块, 将不会打开工作台物品栏, 并返回null(true就是不管怎样都向 玩家展示工作台界面)
      返回:
      新打开的物品栏的视图, 如果不能打开返回null
    • openEnchanting

      InventoryView openEnchanting(Location location, boolean force)
      打开一个空白附魔台物品栏界面, 玩家物品栏(背包)在底部.

      原文:Opens an empty enchanting inventory window with the player's inventory on the bottom.

      参数:
      location - 附魔台位置. 若为null, 将使用玩家所处位置
      force - 若为false, 同时指定位置不是附魔台方块, 将不会打开工作台物品栏, 并返回null(true就是不管怎样都向 玩家展示附魔台界面)
      返回:
      新打开的物品栏的视图, 如果不能打开返回null
    • openInventory

      void openInventory(InventoryView inventory)
      打开指定的物品栏.

      原文:Opens an inventory window to the specified inventory view.

      参数:
      inventory - 要打开的物品栏视图
    • openMerchant

      InventoryView openMerchant(Villager trader, boolean force)
      与某村民开始交易. 注意: 同一时间内只有一名玩家可以与此村民进行交易. 欲使多名玩家能同时与此村民进行交易, 请将“force”参数设为true.

      原文:Starts a trade between the player and the villager. Note that only one player may trade with a villager at once. You must use the force parameter for this.

      参数:
      trader - 与哪位村民交易. 不能为null
      force - 是否强制开始交易, 即使另一名玩家正在与此村民交易
      返回:
      新打开的物品栏的视图, 如果不能打开返回null
    • openMerchant

      InventoryView openMerchant(Merchant merchant, boolean force)
      与某商人开始交易. 注意: 同一时间内只有一名玩家可以与此商人进行交易. 欲使多名玩家能同时与此商人进行交易, 请将“force”参数设为true.

      原文:Starts a trade between the player and the merchant. Note that only one player may trade with a merchant at once. You must use the force parameter for this.

      参数:
      merchant - 与哪个商人交易. 不能为null
      force - 是否强制开始交易, 即使另一名玩家正在与此商人交易
      返回:
      新打开的物品栏的视图, 如果不能打开返回null
    • closeInventory

      void closeInventory()
      强制关闭玩家当前打开的物品栏视图.

      原文:Force-closes the currently open inventory view for this player, if any.

    • getItemInHand

      @Deprecated ItemStack getItemInHand()
      已过时。
      人类现能双持, 请使用 PlayerInventory 中更明确的方法
      返回你手握的物品, 可能为空.

      原文:Returns the ItemStack currently in your hand, can be empty.

      返回:
      你正在握持的物品的ItemStack(物品堆)对象
    • setItemInHand

      @Deprecated void setItemInHand(ItemStack item)
      已过时。
      人类现能双持, 请使用 PlayerInventory 中更明确的方法
      设置你手握的物品, 将替换你所持的任何物品.

      原文:Sets the item to the given ItemStack, this will replace whatever the user was holding.

      参数:
      item - 要设置的物品堆
    • getItemOnCursor

      ItemStack getItemOnCursor()
      返回你的鼠标正在拖动的物品, 可能为空. 如果玩家没有打开任何窗口, 将永远为空(AIR).

      译注:这个方法是适用于物品拖动场景的, 只有鼠标指针在物品上而没有拖动它是获取不到的(AIR).

      原文:Returns the ItemStack currently on your cursor, can be empty. Will always be empty if the player currently has no open window.

      返回:
      你正在拖动的物品的ItemStack对象
    • setItemOnCursor

      void setItemOnCursor(ItemStack item)
      设置你正在拖动的物品, 将替换你所拖动的任何物品. 如果玩家没有打开任何窗口, 将永远为空(AIR).

      原文:Sets the item to the given ItemStack, this will replace whatever the user was moving. Will always be empty if the player currently has no open window.

      参数:
      item - 要设置的物品堆
    • hasCooldown

      boolean hasCooldown(Material material)
      检查指定物品是否处于冷却状态.

      原文:Check whether a cooldown is active on the specified material.

      参数:
      material - 要检查的物品种类
      返回:
      该物品是否进入了冷却
    • getCooldown

      int getCooldown(Material material)
      获取指定物品的冷却时长 (以tick为单位).

      原文:Get the cooldown time in ticks remaining for the specified material.

      参数:
      material - 要检查的物品种类
      返回:
      剩余冷却时长 (以tick为单位)
    • setCooldown

      void setCooldown(Material material, int ticks)
      设置指定物品的冷却时长. 设为0 tick将导致移除此物品的冷却.

      冷却被服务器用来针对某些物品比如末影珍珠、盾牌等以防止它们被经常重复使用.

      请注意: 冷却时间自身不会阻止某个物品被用来使用或攻击.

      原文:Set a cooldown on the specified material for a certain amount of ticks. ticks. 0 ticks will result in the removal of the cooldown.

      Cooldowns are used by the server for items such as ender pearls and shields to prevent them from being used repeatedly.

      Note that cooldowns will not by themselves stop an item from being used for attacking.

      参数:
      material - 为哪个物品设置冷却
      ticks - 冷却时长(以tick为单位)或设为0来移除它
    • isSleeping

      boolean isSleeping()
      返回玩家是否处于睡眠状态.

      原文:Returns whether this player is slumbering.

      返回:
      睡眠状态
    • getSleepTicks

      int getSleepTicks()
      获取玩家的睡眠时间 (以tick为单位), 该值可能有上限.

      原文:Get the sleep ticks of the player. This value may be capped.

      返回:
      玩家睡了多久
    • getGameMode

      GameMode getGameMode()
      获取此人类当前的游戏模式.

      原文:Gets this human's current GameMode

      返回:
      游戏模式
    • setGameMode

      void setGameMode(GameMode mode)
      设置此人类的游戏模式.

      原文:Sets this human's current GameMode

      参数:
      mode - 新游戏模式
    • isBlocking

      boolean isBlocking()
      检查玩家是否正在格挡 (换言之, 就是他们使用盾牌, 进入了格挡状态).

      原文:Check if the player is currently blocking (ie with a shield).

      返回:
      玩家是否正在格挡
    • isHandRaised

      boolean isHandRaised()
      检查玩家是否举起了他们的手 (换言之, 就是他们刚使用盾牌(这时isBlocking返回false), 数百毫秒后将进入格挡状态(这时isBlocking返回true)).

      原文:Check if the player currently has their hand raised (ie about to begin blocking).

      返回:
      玩家是否举起了他们的手
    • getExpToLevel

      int getExpToLevel()
      获取玩家升级所需经验总额.

      原文:Get the total amount of experience required for the player to level

      返回:
      升级所需经验
    • getShoulderEntityLeft

      @Deprecated Entity getShoulderEntityLeft()
      已过时。
      Bukkit中目前还没有关于序列化实体的语义(格式)的良好定义. 请谨慎使用.
      获取栖息在玩家左肩上的实体 (通常情况下这是鹦鹉的行为, 目前客户端没有为其他实体定义这一行为), 若没有则返回null.

      返回的实体不会在世界内生成, 因此除非这个实体是首次生成的, 大部分对该实体的操作是无效的.

      原文:Gets the entity currently perched on the left shoulder or null if no entity.
      The returned entity will not be spawned within the world, so most operations are invalid unless the entity is first spawned in.

      返回:
      坐在玩家左肩的实体
    • setShoulderEntityLeft

      @Deprecated void setShoulderEntityLeft(Entity entity)
      已过时。
      Bukkit中目前还没有关于序列化实体的语义(格式)的良好定义. 请谨慎使用.
      设置栖息在玩家左肩上的实体(设为null则移除). 该方法将从世界中删除该实体.

      请注意: 只有实体的副本将被设置为显示在肩膀上的实体.

      也请注意游戏客户端目前只会渲染鹦鹉的坐在肩膀上的行为.

      原文:Sets the entity currently perched on the left shoulder, or null to remove. This method will remove the entity from the world.
      Note that only a copy of the entity will be set to display on the shoulder.
      Also note that the client will currently only render Parrot entities.

      参数:
      entity - 坐在玩家左肩的实体
    • getShoulderEntityRight

      @Deprecated Entity getShoulderEntityRight()
      已过时。
      Bukkit中目前还没有关于序列化实体的语义(格式)的良好定义. 请谨慎使用.
      获取栖息在玩家右肩上的实体, 若没有则返回null.

      返回的实体不会在世界内生成, 因此除非这个实体是首次生成的, 大部分对该实体的操作是无效的.

      原文:Gets the entity currently perched on the right shoulder or null if no entity.
      The returned entity will not be spawned within the world, so most operations are invalid unless the entity is first spawned in.

      返回:
      坐在玩家右肩的实体
    • setShoulderEntityRight

      @Deprecated void setShoulderEntityRight(Entity entity)
      已过时。
      Bukkit中目前还没有关于序列化实体的语义(格式)的良好定义. 请谨慎使用.
      设置栖息在玩家右肩上的实体(设为null则移除). 该方法将从世界中删除该实体.

      请注意: 只有实体的副本将被设置为显示在肩膀上的实体.

      也请注意游戏客户端目前只会渲染鹦鹉的坐在肩膀上的行为.

      原文:Sets the entity currently perched on the right shoulder, or null to remove. This method will remove the entity from the world.
      Note that only a copy of the entity will be set to display on the shoulder.
      Also note that the client will currently only render Parrot entities.

      参数:
      entity - 坐在玩家右肩的实体