75 lines
1.8 KiB
Java
75 lines
1.8 KiB
Java
package org.bukkit.entity;
|
|
|
|
/**
|
|
* Represents an arrow.
|
|
*/
|
|
public interface Arrow extends Projectile {
|
|
|
|
/**
|
|
* Gets the knockback strength for an arrow, which is the
|
|
* {@link org.bukkit.enchantments.Enchantment#KNOCKBACK KnockBack} level
|
|
* of the bow that shot it.
|
|
*
|
|
* @return the knockback strength value
|
|
*/
|
|
public int getKnockbackStrength();
|
|
|
|
/**
|
|
* Sets the knockback strength for an arrow.
|
|
*
|
|
* @param knockbackStrength the knockback strength value
|
|
*/
|
|
public void setKnockbackStrength(int knockbackStrength);
|
|
|
|
/**
|
|
* Gets whether this arrow is critical.
|
|
* <p>
|
|
* Critical arrows have increased damage and cause particle effects.
|
|
* <p>
|
|
* Critical arrows generally occur when a player fully draws a bow before
|
|
* firing.
|
|
*
|
|
* @return true if it is critical
|
|
*/
|
|
public boolean isCritical();
|
|
|
|
/**
|
|
* Sets whether or not this arrow should be critical.
|
|
*
|
|
* @param critical whether or not it should be critical
|
|
*/
|
|
public void setCritical(boolean critical);
|
|
|
|
/**
|
|
* Gets the current pickup status of this arrow.
|
|
*
|
|
* @return the pickup status of this arrow.
|
|
*/
|
|
public PickupStatus getPickupStatus();
|
|
|
|
/**
|
|
* Sets the current pickup status of this arrow.
|
|
*
|
|
* @param status new pickup status of this arrow.
|
|
*/
|
|
public void setPickupStatus(PickupStatus status);
|
|
|
|
/**
|
|
* Represents the pickup status of this arrow.
|
|
*/
|
|
public enum PickupStatus {
|
|
/**
|
|
* The arrow cannot be picked up.
|
|
*/
|
|
DISALLOWED,
|
|
/**
|
|
* The arrow can be picked up.
|
|
*/
|
|
ALLOWED,
|
|
/**
|
|
* The arrow can only be picked up by players in creative mode.
|
|
*/
|
|
CREATIVE_ONLY
|
|
}
|
|
}
|