EntityShootBowEvent

EntityShootBowEvent

继承关系

=> org.bukkit.event.Event
​
=> org.bukkit.event.entity.EntityEvent
​
=> org.bukkit.event.entity.EntityShootBowEvent

类描述

Called when a LivingEntity shoots a bow firing an arrow
当生物弯弓射箭时触发。

方法列表

getEntity

方法声明: public LivingEntity getEntity()
方法签名: ()Lorg/bukkit/entity/LivingEntity;
译注:无文档。该方法用于获取射箭的实体。

getBow

方法声明: public ItemStack getBow()
方法签名: ()Lorg/bukkit/inventory/ItemStack;
Gets the bow ItemStack used to fire the arrow.
@return the bow involved in this event
该方法用于获取射箭时所使用的弓物品堆。
@return 涉事弓物品堆。

getConsumable

方法声明: public ItemStack getConsumable()
方法签名: ()Lorg/bukkit/inventory/ItemStack;
Get the ItemStack to be consumed in this event (if any).
For instance, bows will consume an arrow ItemStack in a player's
inventory.
@return the consumable item
该方法用于获取被消耗的涉事物品堆(如存在)。
比如一张弓使用一次会消耗玩家背包中的一根箭矢。
@return 被消耗的涉事物品堆。

getProjectile

方法声明: public Entity getProjectile()
方法签名: ()Lorg/bukkit/entity/Entity;
Gets the projectile which will be launched by this event
@return the launched projectile
该方法用于获取将要被射出的抛射物实体。
@return 将要被射出的抛射物实体。

setProjectile

方法声明: public void setProjectile(@NotNull Entity projectile)
方法签名: (Lorg/bukkit/entity/Entity;)V
Replaces the projectile which will be launched
@param projectile the new projectile
该方法用于设置将要被射出的抛射物实体。
@param projectile 将要被射出的抛射物实体。

getHand

方法声明: public EquipmentSlot getHand()
方法签名: ()Lorg/bukkit/inventory/EquipmentSlot;
Get the hand from which the bow was shot.
@return the hand
该方法用于获取射箭所用的是哪一侧手。
@return 射箭所用的是哪一侧手。
译注:一般而言,涉及玩家交互时,交互行为只与主副手有关,而与左右手无关。玩家以左手为主手,和以右手为主手进行交互时,没有除客户端画面显示以外的区别。如欲监听玩家设定主手,可参见 PlayerChangedMainHandEvent 。

getForce

方法声明: public float getForce()
方法签名: ()F
Gets the force the arrow was launched with
@return bow shooting force, up to 1.0
该方法用于获取射箭时所用的力量大小。
@return 射箭时所用的力量大小,最大为一。

setConsumeItem

方法声明: public void setConsumeItem(boolean consumeItem)
方法签名: (Z)V
Set whether or not the consumable item should be consumed in this event.
If set to false, it is recommended that a call to
{@link Player#updateInventory()} is made as the client may disagree with
the server's decision to not consume a consumable item.
This value is ignored for entities where items are not required
(skeletons, pillagers, etc.) or with crossbows (as no item is being
consumed).
@param consumeItem whether or not to consume the item
该方法用于设置是否要消耗涉事物品堆。
如果传入 false ,则建议在调用本方法后随附 Player#updateInventory() 语句,否则客户端有可能拒绝服务端发来的“不消耗物品堆”的决定。
对于一些射箭或装填弩时不消耗箭矢的生物(如骷髅、如掠夺者等),本方法传入的参数会被忽略。
@param consumeItem 是否要消耗涉事物品堆。

shouldConsumeItem

方法声明: public boolean shouldConsumeItem()
方法签名: ()Z
Get whether or not the consumable item should be consumed in this event.
@return true if consumed, false otherwise
该方法用于获取是否要消耗涉事物品堆。
@return 如果将要消耗物品堆则返回 true ,否则返回 false 。

isCancelled

方法声明: public boolean isCancelled()
方法签名: ()Z

setCancelled

方法声明: public void setCancelled(boolean cancel)
方法签名: (Z)V

getHandlers

方法声明: public HandlerList getHandlers()
方法签名: ()Lorg/bukkit/event/HandlerList;

getHandlerList

方法声明: public static HandlerList getHandlerList()
方法签名: ()Lorg/bukkit/event/HandlerList;