aboutsummaryrefslogtreecommitdiff
path: root/src/Java/binnie/extrabees/worldgen/HiveDrop.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java/binnie/extrabees/worldgen/HiveDrop.java')
-rw-r--r--src/Java/binnie/extrabees/worldgen/HiveDrop.java65
1 files changed, 65 insertions, 0 deletions
diff --git a/src/Java/binnie/extrabees/worldgen/HiveDrop.java b/src/Java/binnie/extrabees/worldgen/HiveDrop.java
new file mode 100644
index 0000000000..10d8db4c26
--- /dev/null
+++ b/src/Java/binnie/extrabees/worldgen/HiveDrop.java
@@ -0,0 +1,65 @@
+package binnie.extrabees.worldgen;
+
+import binnie.Binnie;
+import binnie.core.genetics.ManagerGenetics;
+import forestry.api.apiculture.EnumBeeType;
+import forestry.api.apiculture.IAlleleBeeSpecies;
+import forestry.api.apiculture.IBeeRoot;
+import forestry.api.apiculture.IHiveDrop;
+import forestry.api.genetics.IAllele;
+import java.util.ArrayList;
+import net.minecraft.item.ItemStack;
+import net.minecraft.world.World;
+
+public class HiveDrop
+ implements IHiveDrop
+{
+ private IAllele[] template;
+ private ArrayList<ItemStack> additional = new ArrayList();
+ private int chance;
+
+ public HiveDrop(IAlleleBeeSpecies species, int chance)
+ {
+ this(Binnie.Genetics.getBeeRoot().getTemplate(species.getUID()), new ItemStack[0], chance);
+ }
+
+ public HiveDrop(IAllele[] template, ItemStack[] bonus, int chance)
+ {
+ if (template == null) {
+ template = Binnie.Genetics.getBeeRoot().getDefaultTemplate();
+ }
+ this.template = template;
+ this.chance = chance;
+ for (ItemStack stack : bonus) {
+ this.additional.add(stack);
+ }
+ }
+
+ public ItemStack getPrincess(World world, int x, int y, int z, int fortune)
+ {
+ return Binnie.Genetics.getBeeRoot().getMemberStack(Binnie.Genetics.getBeeRoot().getBee(world, Binnie.Genetics.getBeeRoot().templateAsGenome(this.template)), EnumBeeType.PRINCESS.ordinal());
+ }
+
+ public ArrayList<ItemStack> getDrones(World world, int x, int y, int z, int fortune)
+ {
+ ArrayList<ItemStack> ret = new ArrayList();
+ ret.add(Binnie.Genetics.getBeeRoot().getMemberStack(Binnie.Genetics.getBeeRoot().templateAsIndividual(this.template), EnumBeeType.DRONE.ordinal()));
+
+
+ return ret;
+ }
+
+ public ArrayList<ItemStack> getAdditional(World world, int x, int y, int z, int fortune)
+ {
+ ArrayList<ItemStack> ret = new ArrayList();
+ for (ItemStack stack : this.additional) {
+ ret.add(stack.copy());
+ }
+ return ret;
+ }
+
+ public int getChance(World world, int x, int y, int z)
+ {
+ return this.chance;
+ }
+}