[Bleeding] Added Ageable interface for Villagers and Animals to extend. Addresses BUKKIT-1232

By: aPunch <theapunch@yahoo.com>
This commit is contained in:
Bukkit/Spigot 2012-03-19 14:02:10 -05:00
parent bbe996077c
commit 791dd4c428
3 changed files with 67 additions and 61 deletions

View File

@ -0,0 +1,65 @@
package org.bukkit.entity;
/**
* Represents an entity that can age and breed.
*/
public interface Ageable extends Creature {
/**
* Gets the age of this animal.
*
* @return Age
*/
public int getAge();
/**
* Sets the age of this animal.
*
* @param age New age
*/
public void setAge(int age);
/**
* Lock the age of the animal, setting this will prevent the animal from maturing or getting ready for mating.
*
* @param lock new lock
*/
public void setAgeLock(boolean lock);
/**
* Gets the current agelock.
*
* @return the current agelock
*/
public boolean getAgeLock();
/**
* Sets the age of the animal to a baby
*/
public void setBaby();
/**
* Sets the age of the animal to an adult
*/
public void setAdult();
/**
* Returns true if the animal is an adult.
*
* @return return true if the animal is an adult
*/
public boolean isAdult();
/**
* Return the ability to breed of the animal.
*
* @return the ability to breed of the animal
*/
public boolean canBreed();
/**
* Set breedability of the animal, if the animal is a baby and set to breed it will instantly grow up.
*
* @param breed breedability of the animal
*/
public void setBreed(boolean breed);
}

View File

@ -3,63 +3,4 @@ package org.bukkit.entity;
/**
* Represents an Animal.
*/
public interface Animals extends Creature {
/**
* Gets the age of this animal.
*
* @return Age
*/
public int getAge();
/**
* Sets the age of this animal.
*
* @param age New age
*/
public void setAge(int age);
/**
* Lock the age of the animal, setting this will prevent the animal from maturing or getting ready for mating.
*
* @param lock new lock
*/
public void setAgeLock(boolean lock);
/**
* Gets the current agelock.
*
* @return the current agelock
*/
public boolean getAgeLock();
/**
* Sets the age of the animal to a baby
*/
public void setBaby();
/**
* Sets the age of the animal to an adult
*/
public void setAdult();
/**
* Returns true if the animal is an adult.
*
* @return return true if the animal is an adult
*/
public boolean isAdult();
/**
* Return the ability to breed of the animal.
*
* @return the ability to breed of the animal
*/
public boolean canBreed();
/**
* Set breedability of the animal, if the animal is a baby and set to breed it will instantly grow up.
*
* @param breed breedability of the animal
*/
public void setBreed(boolean breed);
}
public interface Animals extends Ageable {}

View File

@ -3,7 +3,7 @@ package org.bukkit.entity;
/**
* Represents a villager NPC
*/
public interface Villager extends NPC {
public interface Villager extends Ageable, NPC {
/**
* Gets the current profession of this villager.
*