org.bukkit.entity.Tameable Maven / Gradle / Ivy
package org.bukkit.entity;
public interface Tameable {
/**
* Check if this is tamed
*
* If something is tamed then a player can not tame it through normal
* methods, even if it does not belong to anyone in particular.
*
* @return true if this has been tamed
*/
boolean isTamed();
/**
* Sets if this has been tamed. Not necessary if the method setOwner has
* been used, as it tames automatically.
*
* If something is tamed then a player can not tame it through normal
* methods, even if it does not belong to anyone in particular.
*
* @param tame true if tame
*/
void setTamed(boolean tame);
/**
* Gets the current owning AnimalTamer
*
* @return the owning AnimalTamer, or null if not owned
*/
AnimalTamer getOwner();
/**
* Set this to be owned by given AnimalTamer.
*
* If the owner is not null, this will be tamed and will have any current
* path it is following removed. If the owner is set to null, this will be
* untamed, and the current owner removed.
*
* @param tamer the AnimalTamer who should own this
*/
void setOwner(AnimalTamer tamer);
}