package de.tobiyas.racesandclasses.pets.target;
import org.bukkit.entity.LivingEntity;
import de.tobiyas.racesandclasses.pets.SpawnedPet;
import de.tobiyas.racesandclasses.playermanagement.player.RaCPlayer;
public interface Target {
/**
* Returns the Priority of the Target.
*/
public int getPriority();
/**
* Returns the Type of the Target.
*/
public TargetType getType();
/**
* If the current target is still valid.
*
* @param pet to use for validation.
*
* @return true if still valid.
*/
public boolean valid(SpawnedPet pet);
/**
* Sets the target of the Pet to the wanted location.
*
* @param pet to use.
*/
public void setTarget(LivingEntity pet);
/**
* Shows the Target to the owner.
*
* @param owner to show to.
*/
public void showToOwner(RaCPlayer owner);
public enum TargetType{
Entity,
Location,
Owner;
}
}