Interface Projectile

All Superinterfaces:
net.kyori.adventure.audience.Audience, CommandSender, Entity, net.kyori.adventure.text.event.HoverEventSource<net.kyori.adventure.text.event.HoverEvent.ShowEntity>, Metadatable, Nameable, Permissible, PersistentDataHolder, net.kyori.adventure.pointer.Pointered, ServerOperator
All Known Subinterfaces:
AbstractArrow, Arrow, DragonFireball, Egg, EnderPearl, Fireball, Firework, FishHook, LargeFireball, LingeringPotion, LlamaSpit, ShulkerBullet, SizedFireball, SmallFireball, Snowball, SpectralArrow, SplashPotion, ThrowableProjectile, ThrownExpBottle, ThrownPotion, TippedArrow, Trident, WitherSkull

public interface Projectile extends Entity
Represents a shootable entity.
  • Method Details

    • getShooter

      Retrieve the shooter of this projectile.
      Returns:
      the ProjectileSource that shot this projectile
    • setShooter

      void setShooter(@Nullable @Nullable ProjectileSource source)
      Set the shooter of this projectile.
      Parameters:
      source - the ProjectileSource that shot this projectile
    • doesBounce

      boolean doesBounce()
      Determine if this projectile should bounce or not when it hits.

      If a small fireball does not bounce it will set the target on fire.

      Returns:
      true if it should bounce.
    • setBounce

      void setBounce(boolean doesBounce)
      Set whether or not this projectile should bounce or not when it hits something.
      Parameters:
      doesBounce - whether or not it should bounce.