diff options
| author | Draknyte1 <Draknyte1@hotmail.com> | 2016-01-20 14:24:34 +1000 |
|---|---|---|
| committer | Draknyte1 <Draknyte1@hotmail.com> | 2016-01-20 14:24:34 +1000 |
| commit | 869c206c4fcc8001bd2e1d66f704290331813835 (patch) | |
| tree | 96735ce8fe4665e2759c3374221d6f06f4527df2 /src/Java/binnie/extrabees | |
| parent | ec2c72827f01dd4bb2174137f1ab162f9ddaab62 (diff) | |
| download | GT5-Unofficial-869c206c4fcc8001bd2e1d66f704290331813835.tar.gz GT5-Unofficial-869c206c4fcc8001bd2e1d66f704290331813835.tar.bz2 GT5-Unofficial-869c206c4fcc8001bd2e1d66f704290331813835.zip | |
Initial Commit
Diffstat (limited to 'src/Java/binnie/extrabees')
75 files changed, 8193 insertions, 0 deletions
diff --git a/src/Java/binnie/extrabees/ExtraBees.java b/src/Java/binnie/extrabees/ExtraBees.java new file mode 100644 index 0000000000..ef93560cc0 --- /dev/null +++ b/src/Java/binnie/extrabees/ExtraBees.java @@ -0,0 +1,123 @@ +package binnie.extrabees; + +import binnie.core.AbstractMod; +import binnie.core.BinnieCore; +import binnie.core.gui.IBinnieGUID; +import binnie.core.network.BinniePacketHandler; +import binnie.core.proxy.IProxyCore; +import binnie.extrabees.apiary.ModuleApiary; +import binnie.extrabees.config.ConfigurationMachines; +import binnie.extrabees.config.ConfigurationMain; +import binnie.extrabees.core.ExtraBeeGUID; +import binnie.extrabees.core.ModuleCore; +import binnie.extrabees.genetics.ModuleGenetics; +import binnie.extrabees.liquids.ModuleLiquids; +import binnie.extrabees.products.ModuleProducts; +import binnie.extrabees.proxy.ExtraBeesProxy; +import binnie.extrabees.worldgen.ModuleGeneration; +import cpw.mods.fml.common.Mod; +import cpw.mods.fml.common.Mod.EventHandler; +import cpw.mods.fml.common.Mod.Instance; +import cpw.mods.fml.common.SidedProxy; +import cpw.mods.fml.common.event.FMLInitializationEvent; +import cpw.mods.fml.common.event.FMLPostInitializationEvent; +import cpw.mods.fml.common.event.FMLPreInitializationEvent; +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.item.Item; + +@Mod(modid="ExtraBees", name="Extra Bees", useMetadata=true, dependencies="after:BinnieCore") +public class ExtraBees + extends AbstractMod +{ + @Mod.Instance("ExtraBees") + public static ExtraBees instance; + @SidedProxy(clientSide="binnie.extrabees.proxy.ExtraBeesProxyClient", serverSide="binnie.extrabees.proxy.ExtraBeesProxyServer") + public static ExtraBeesProxy proxy; + public static Block hive; + public static Material materialBeehive; + public static Block ectoplasm; + public static Block apiaristMachine; + public static Block geneticMachine; + public static Block advGeneticMachine; + public static Item comb; + public static Item propolis; + public static Item honeyDrop; + public static Item honeyCrystal; + public static Item honeyCrystalEmpty; + public static Item dictionary; + public static Item itemMisc; + + @Mod.EventHandler + public void preInit(FMLPreInitializationEvent evt) + { + addModule(new ModuleCore()); + addModule(new ModuleProducts()); + addModule(new ModuleGenetics()); + addModule(new ModuleGeneration()); + addModule(new ModuleLiquids()); + addModule(new ModuleApiary()); + preInit(); + } + + @Mod.EventHandler + public void init(FMLInitializationEvent evt) + { + init(); + } + + @Mod.EventHandler + public void postInit(FMLPostInitializationEvent evt) + { + postInit(); + } + + public ExtraBees() + { + instance = this; + } + + public IBinnieGUID[] getGUIDs() + { + return ExtraBeeGUID.values(); + } + + public Class<?>[] getConfigs() + { + return new Class[] { ConfigurationMain.class, ConfigurationMachines.class }; + } + + public IProxyCore getProxy() + { + return proxy; + } + + public String getChannel() + { + return "EB"; + } + + public String getModID() + { + return "extrabees"; + } + + protected Class<? extends BinniePacketHandler> getPacketHandler() + { + return PacketHandler.class; + } + + public static class PacketHandler + extends BinniePacketHandler + { + public PacketHandler() + { + super(); + } + } + + public boolean isActive() + { + return BinnieCore.isExtraBeesActive(); + } +} diff --git a/src/Java/binnie/extrabees/apiary/ComponentBeeModifier.java b/src/Java/binnie/extrabees/apiary/ComponentBeeModifier.java new file mode 100644 index 0000000000..32cb7dcd48 --- /dev/null +++ b/src/Java/binnie/extrabees/apiary/ComponentBeeModifier.java @@ -0,0 +1,88 @@ +package binnie.extrabees.apiary; + +import binnie.core.machines.Machine; +import binnie.core.machines.MachineComponent; +import forestry.api.apiculture.IBee; +import forestry.api.apiculture.IBeeGenome; +import forestry.api.apiculture.IBeeListener; +import forestry.api.apiculture.IBeeModifier; +import forestry.api.genetics.IIndividual; +import net.minecraft.item.ItemStack; + +public class ComponentBeeModifier + extends MachineComponent + implements IBeeModifier, IBeeListener +{ + public ComponentBeeModifier(Machine machine) + { + super(machine); + } + + public float getTerritoryModifier(IBeeGenome genome, float currentModifier) + { + return 1.0F; + } + + public float getMutationModifier(IBeeGenome genome, IBeeGenome mate, float currentModifier) + { + return 1.0F; + } + + public float getLifespanModifier(IBeeGenome genome, IBeeGenome mate, float currentModifier) + { + return 1.0F; + } + + public float getProductionModifier(IBeeGenome genome, float currentModifier) + { + return 1.0F; + } + + public float getFloweringModifier(IBeeGenome genome, float currentModifier) + { + return 1.0F; + } + + public boolean isSealed() + { + return false; + } + + public boolean isSelfLighted() + { + return false; + } + + public boolean isSunlightSimulated() + { + return false; + } + + public boolean isHellish() + { + return false; + } + + public void onQueenChange(ItemStack queen) {} + + public void wearOutEquipment(int amount) {} + + public void onQueenDeath(IBee queen) {} + + public void onPostQueenDeath(IBee queen) {} + + public boolean onPollenRetrieved(IBee queen, IIndividual pollen, boolean isHandled) + { + return false; + } + + public boolean onEggLaid(IBee queen) + { + return false; + } + + public float getGeneticDecay(IBeeGenome genome, float currentModifier) + { + return 1.0F; + } +} diff --git a/src/Java/binnie/extrabees/apiary/ComponentExtraBeeGUI.java b/src/Java/binnie/extrabees/apiary/ComponentExtraBeeGUI.java new file mode 100644 index 0000000000..db2527e14c --- /dev/null +++ b/src/Java/binnie/extrabees/apiary/ComponentExtraBeeGUI.java @@ -0,0 +1,28 @@ +package binnie.extrabees.apiary; + +import binnie.core.machines.Machine; +import binnie.core.machines.MachineComponent; +import binnie.core.machines.component.IInteraction.RightClick; +import binnie.extrabees.ExtraBees; +import binnie.extrabees.core.ExtraBeeGUID; +import binnie.extrabees.proxy.ExtraBeesProxy; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.world.World; + +public class ComponentExtraBeeGUI + extends MachineComponent + implements IInteraction.RightClick +{ + ExtraBeeGUID id; + + public ComponentExtraBeeGUI(Machine machine, ExtraBeeGUID id) + { + super(machine); + this.id = id; + } + + public void onRightClick(World world, EntityPlayer player, int x, int y, int z) + { + ExtraBees.proxy.openGui(this.id, player, x, y, z); + } +} diff --git a/src/Java/binnie/extrabees/apiary/EnumHiveFrame.java b/src/Java/binnie/extrabees/apiary/EnumHiveFrame.java new file mode 100644 index 0000000000..6a135c2532 --- /dev/null +++ b/src/Java/binnie/extrabees/apiary/EnumHiveFrame.java @@ -0,0 +1,140 @@ +package binnie.extrabees.apiary; + +import binnie.core.Mods; +import binnie.core.Mods.Mod; +import binnie.core.genetics.BeeModifierLogic; +import binnie.core.genetics.EnumBeeBooleanModifier; +import binnie.core.genetics.EnumBeeModifier; +import binnie.extrabees.ExtraBees; +import binnie.extrabees.proxy.ExtraBeesProxy; +import cpw.mods.fml.common.registry.GameRegistry; +import forestry.api.apiculture.IBee; +import forestry.api.apiculture.IBeeGenome; +import forestry.api.apiculture.IBeeHousing; +import forestry.api.apiculture.IHiveFrame; +import net.minecraft.init.Blocks; +import net.minecraft.init.Items; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; + +public enum EnumHiveFrame + implements IHiveFrame +{ + Cocoa, Cage, Soul, Clay, Debug; + + Item item; + + public static void init() + { + Cocoa.logic.setModifier(EnumBeeModifier.Lifespan, 0.75F, 0.25F); + Cocoa.logic.setModifier(EnumBeeModifier.Production, 1.5F, 5.0F); + + Cage.logic.setModifier(EnumBeeModifier.Territory, 0.5F, 0.1F); + Cage.logic.setModifier(EnumBeeModifier.Lifespan, 0.75F, 0.5F); + Cage.logic.setModifier(EnumBeeModifier.Production, 0.75F, 0.5F); + + Soul.logic.setModifier(EnumBeeModifier.Mutation, 1.5F, 5.0F); + Soul.logic.setModifier(EnumBeeModifier.Lifespan, 0.75F, 0.5F); + Soul.logic.setModifier(EnumBeeModifier.Production, 0.25F, 0.1F); + Soul.setMaxDamage(80); + + Clay.logic.setModifier(EnumBeeModifier.Lifespan, 1.5F, 5.0F); + Clay.logic.setModifier(EnumBeeModifier.Mutation, 0.5F, 0.2F); + Clay.logic.setModifier(EnumBeeModifier.Production, 0.75F, 0.2F); + + Debug.logic.setModifier(EnumBeeModifier.Lifespan, 1.0E-004F, 1.0E-004F); + + + + GameRegistry.addRecipe(new ItemStack(Cocoa.item), new Object[] { " c ", "cFc", " c ", Character.valueOf('F'), Mods.Forestry.stack("frameImpregnated"), Character.valueOf('c'), new ItemStack(Items.dye, 1, 3) }); + + + + GameRegistry.addShapelessRecipe(new ItemStack(Cage.item), new Object[] { Mods.Forestry.stack("frameImpregnated"), Blocks.iron_bars }); + + + GameRegistry.addShapelessRecipe(new ItemStack(Soul.item), new Object[] { Mods.Forestry.stack("frameImpregnated"), Blocks.soul_sand }); + + + GameRegistry.addRecipe(new ItemStack(Clay.item), new Object[] { " c ", "cFc", " c ", Character.valueOf('F'), Mods.Forestry.stack("frameImpregnated"), Character.valueOf('c'), Items.clay_ball }); + } + + public int getIconIndex() + { + return 55 + ordinal(); + } + + public void setMaxDamage(int damage) + { + this.maxDamage = damage; + } + + int maxDamage = 240; + BeeModifierLogic logic = new BeeModifierLogic(); + + private EnumHiveFrame() {} + + public ItemStack frameUsed(IBeeHousing house, ItemStack frame, IBee queen, int wear) + { + frame.setItemDamage(frame.getItemDamage() + wear); + if (frame.getItemDamage() >= frame.getMaxDamage()) { + return null; + } + return frame; + } + + public float getTerritoryModifier(IBeeGenome genome, float currentModifier) + { + return this.logic.getModifier(EnumBeeModifier.Territory, currentModifier); + } + + public float getMutationModifier(IBeeGenome genome, IBeeGenome mate, float currentModifier) + { + return this.logic.getModifier(EnumBeeModifier.Mutation, currentModifier); + } + + public float getLifespanModifier(IBeeGenome genome, IBeeGenome mate, float currentModifier) + { + return this.logic.getModifier(EnumBeeModifier.Lifespan, currentModifier); + } + + public float getProductionModifier(IBeeGenome genome, float currentModifier) + { + return this.logic.getModifier(EnumBeeModifier.Production, currentModifier); + } + + public float getFloweringModifier(IBeeGenome genome, float currentModifier) + { + return this.logic.getModifier(EnumBeeModifier.Flowering, currentModifier); + } + + public float getGeneticDecay(IBeeGenome genome, float currentModifier) + { + return this.logic.getModifier(EnumBeeModifier.GeneticDecay, currentModifier); + } + + public boolean isSealed() + { + return this.logic.getModifier(EnumBeeBooleanModifier.Sealed); + } + + public boolean isSelfLighted() + { + return this.logic.getModifier(EnumBeeBooleanModifier.SelfLighted); + } + + public boolean isSunlightSimulated() + { + return this.logic.getModifier(EnumBeeBooleanModifier.SunlightStimulated); + } + + public boolean isHellish() + { + return this.logic.getModifier(EnumBeeBooleanModifier.Hellish); + } + + public String getName() + { + return ExtraBees.proxy.localise("item.frame." + toString().toLowerCase()); + } +} diff --git a/src/Java/binnie/extrabees/apiary/IndustrialFrame.java b/src/Java/binnie/extrabees/apiary/IndustrialFrame.java new file mode 100644 index 0000000000..f8d3e5ff7a --- /dev/null +++ b/src/Java/binnie/extrabees/apiary/IndustrialFrame.java @@ -0,0 +1,141 @@ +package binnie.extrabees.apiary; + +import forestry.api.apiculture.IBeeGenome; +im |
