Test with stuff + Forestry potential support

This commit is contained in:
WayofTime 2014-01-25 20:36:28 -05:00
parent 5b05cf651b
commit bd26e441cb
174 changed files with 5602 additions and 0 deletions

View file

@ -0,0 +1,71 @@
package forestry.api.lepidopterology;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
import forestry.api.genetics.IIndividualLiving;
public interface IButterfly extends IIndividualLiving {
IButterflyGenome getGenome();
/**
* @return Genetic information of the mate, null if unmated.
*/
IButterflyGenome getMate();
/**
* @return Physical size of the butterfly.
*/
float getSize();
/**
* @param world
* @param x
* @param y
* @param z
* @return true if the butterfly can naturally spawn at the given location at this time. (Used to auto-spawn butterflies from tree leaves.)
*/
boolean canSpawn(World world, double x, double y, double z);
/**
* @param world
* @param x
* @param y
* @param z
* @return true if the butterfly can take flight at the given location at this time. (Used to auto-spawn butterflies from dropped items.)
*/
boolean canTakeFlight(World world, double x, double y, double z);
/**
* @param world
* @param x
* @param y
* @param z
* @return true if the environment (temperature, humidity) is valid for the butterfly at the given location.
*/
boolean isAcceptedEnvironment(World world, double x, double y, double z);
IButterfly spawnCaterpillar(IButterflyNursery nursery);
/**
* @param entity
* @param playerKill Whether or not the butterfly was killed by a player.
* @param lootLevel Loot level according to the weapon used to kill the butterfly.
* @return Array of itemstacks to drop on death of the given entity.
*/
ItemStack[] getLootDrop(IEntityButterfly entity, boolean playerKill, int lootLevel);
/**
* @param nursery
* @param playerKill Whether or not the nursery was broken by a player.
* @param lootLevel Fortune level.
* @return Array of itemstacks to drop on breaking of the nursery.
*/
ItemStack[] getCaterpillarDrop(IButterflyNursery nursery, boolean playerKill, int lootLevel);
/**
* Create an exact copy of this butterfly.
*/
IButterfly copy();
}