package org.bukkit.entity; import org.bukkit.Location; import org.jetbrains.annotations.Nullable; /** * Represents a Primed TNT. */ public interface TNTPrimed extends Explosive { /** * Set the number of ticks until the TNT blows up after being primed. * * @param fuseTicks The fuse ticks */ public void setFuseTicks(int fuseTicks); /** * Retrieve the number of ticks until the explosion of this TNTPrimed * entity * * @return the number of ticks until this TNTPrimed explodes */ public int getFuseTicks(); /** * Gets the source of this primed TNT. The source is the entity * responsible for the creation of this primed TNT. (I.E. player ignites * TNT with flint and steel.) Take note that this can be null if there is * no suitable source. (created by the {@link * org.bukkit.World#spawn(Location, Class)} method, for example.) *

* The source will become null if the chunk this primed TNT is in is * unloaded then reloaded. The source entity may be invalid if for example * it has since died or been unloaded. Callers should check * {@link Entity#isValid()}. * * @return the source of this primed TNT */ @Nullable public Entity getSource(); /** * Sets the source of this primed TNT. * * The source is the entity responsible for the creation of this primed TNT. *

* Must be instance of {@link org.bukkit.entity.LivingEntity} otherwise will * be set to null. The parameter is typed {@link * org.bukkit.entity.Entity} to be consistent with {@link * org.bukkit.entity.TNTPrimed#getSource()} method. * * @param source the source of this primed TNT */ public void setSource(@Nullable Entity source); /** * Gets the source block location of the TNTPrimed * * @return the source block location the TNTPrimed was spawned from * @deprecated replaced by {@link Entity#getOrigin()} */ @Deprecated default org.bukkit.Location getSourceLoc() { return this.getOrigin(); } // Paper start /** * Sets the visual block data of this * primed tnt. *
* The explosion of the tnt stays the * same and is not affected by this change. * * @param data the visual block data */ void setBlockData(@org.jetbrains.annotations.NotNull org.bukkit.block.data.BlockData data); /** * Gets the visual block data of this * primed tnt. * * @return the visual block data */ @org.jetbrains.annotations.NotNull org.bukkit.block.data.BlockData getBlockData(); // Paper end }