Package org.bukkit.entity
Interface Arrow
-
- All Superinterfaces:
CommandSender
,Entity
,Metadatable
,Nameable
,Permissible
,Projectile
,ServerOperator
- All Known Subinterfaces:
SpectralArrow
,TippedArrow
,Trident
public interface Arrow extends Projectile
Represents an arrow.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
Arrow.PickupStatus
Represents the pickup status of this arrow.static class
Arrow.Spigot
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Block
getAttachedBlock()
Gets the block to which this arrow is attached.double
getDamage()
Gets the base amount of damage this arrow will do.int
getKnockbackStrength()
Gets the knockback strength for an arrow, which is theKnockBack
level of the bow that shot it.Arrow.PickupStatus
getPickupStatus()
Gets the current pickup status of this arrow.boolean
isCritical()
Gets whether this arrow is critical.boolean
isInBlock()
Gets whether this arrow is in a block or not.void
setCritical(boolean critical)
Sets whether or not this arrow should be critical.void
setDamage(double damage)
Sets the base amount of damage this arrow will do.void
setKnockbackStrength(int knockbackStrength)
Sets the knockback strength for an arrow.void
setPickupStatus(Arrow.PickupStatus status)
Sets the current pickup status of this arrow.Arrow.Spigot
spigot()
-
Methods inherited from interface org.bukkit.command.CommandSender
getName, sendMessage, sendMessage
-
Methods inherited from interface org.bukkit.entity.Entity
addPassenger, addScoreboardTag, eject, getBoundingBox, getEntityId, getFacing, getFallDistance, getFireTicks, getHeight, getLastDamageCause, getLocation, getLocation, getMaxFireTicks, getNearbyEntities, getPassenger, getPassengers, getPistonMoveReaction, getPortalCooldown, getScoreboardTags, getServer, getTicksLived, getType, getUniqueId, getVehicle, getVelocity, getWidth, getWorld, hasGravity, isCustomNameVisible, isDead, isEmpty, isGlowing, isInsideVehicle, isInvulnerable, isOnGround, isPersistent, isSilent, isValid, leaveVehicle, playEffect, remove, removePassenger, removeScoreboardTag, setCustomNameVisible, setFallDistance, setFireTicks, setGlowing, setGravity, setInvulnerable, setLastDamageCause, setPassenger, setPersistent, setPortalCooldown, setRotation, setSilent, setTicksLived, setVelocity, teleport, teleport, teleport, teleport
-
Methods inherited from interface org.bukkit.metadata.Metadatable
getMetadata, hasMetadata, removeMetadata, setMetadata
-
Methods inherited from interface org.bukkit.Nameable
getCustomName, setCustomName
-
Methods inherited from interface org.bukkit.permissions.Permissible
addAttachment, addAttachment, addAttachment, addAttachment, getEffectivePermissions, hasPermission, hasPermission, isPermissionSet, isPermissionSet, recalculatePermissions, removeAttachment
-
Methods inherited from interface org.bukkit.entity.Projectile
doesBounce, getShooter, setBounce, setShooter
-
Methods inherited from interface org.bukkit.permissions.ServerOperator
isOp, setOp
-
-
-
-
Method Detail
-
getKnockbackStrength
int getKnockbackStrength()
Gets the knockback strength for an arrow, which is theKnockBack
level of the bow that shot it.- Returns:
- the knockback strength value
-
setKnockbackStrength
void setKnockbackStrength(int knockbackStrength)
Sets the knockback strength for an arrow.- Parameters:
knockbackStrength
- the knockback strength value
-
getDamage
double getDamage()
Gets the base amount of damage this arrow will do. Defaults to 2.0 for a normal arrow with0.5 * (1 + power level)
added for arrows fired from enchanted bows.- Returns:
- base damage amount
-
setDamage
void setDamage(double damage)
Sets the base amount of damage this arrow will do.- Parameters:
damage
- new damage amount
-
isCritical
boolean isCritical()
Gets whether this arrow is critical.Critical arrows have increased damage and cause particle effects.
Critical arrows generally occur when a player fully draws a bow before firing.
- Returns:
- true if it is critical
-
setCritical
void setCritical(boolean critical)
Sets whether or not this arrow should be critical.- Parameters:
critical
- whether or not it should be critical
-
isInBlock
boolean isInBlock()
Gets whether this arrow is in a block or not.Arrows in a block are motionless and may be picked up by players.
- Returns:
- true if in a block
-
getAttachedBlock
@Nullable Block getAttachedBlock()
Gets the block to which this arrow is attached.- Returns:
- the attached block or null if not attached
-
getPickupStatus
@NotNull Arrow.PickupStatus getPickupStatus()
Gets the current pickup status of this arrow.- Returns:
- the pickup status of this arrow.
-
setPickupStatus
void setPickupStatus(@NotNull Arrow.PickupStatus status)
Sets the current pickup status of this arrow.- Parameters:
status
- new pickup status of this arrow.
-
spigot
@NotNull Arrow.Spigot spigot()
- Specified by:
spigot
in interfaceCommandSender
- Specified by:
spigot
in interfaceEntity
-
-