From 29fade51aac817bf98e73bb805253876846bacdb Mon Sep 17 00:00:00 2001 From: Blood-Asp Date: Thu, 29 Oct 2015 00:37:04 +0100 Subject: [PATCH] Forestry update + bee nerv --- build.properties | 2 +- src/main/java/gregtech/GT_Mod.java | 24 ++- .../java/gregtech/api/enums/TextureSet.java | 2 +- src/main/java/gregtech/common/GT_Proxy.java | 4 +- .../java/gregtech/common/items/CombType.java | 2 +- .../java/gregtech/common/items/ItemComb.java | 200 ++++++++++-------- .../loaders/misc/GT_BeeDefinition.java | 153 ++++++++++---- .../java/gregtech/loaders/misc/GT_Bees.java | 8 +- .../loaders/misc/GT_BranchDefinition.java | 66 +++--- 9 files changed, 285 insertions(+), 176 deletions(-) diff --git a/build.properties b/build.properties index 043b8513..8ddcef67 100644 --- a/build.properties +++ b/build.properties @@ -15,7 +15,7 @@ cofhlib.version=[1.7.10]1.0.3-175-dev enderio.cf=2219/296 enderio.version=1.7.10-2.3.0.417_beta enderiocore.version=1.7.10-0.1.0.25_beta -forestry.version=4.0.10.39 +forestry.version=4.1.0.781-unstable ic2.version=2.2.790-experimental nei.version=1.0.3.57 railcraft.cf=2219/321 diff --git a/src/main/java/gregtech/GT_Mod.java b/src/main/java/gregtech/GT_Mod.java index 4325ce24..1cd53f0e 100644 --- a/src/main/java/gregtech/GT_Mod.java +++ b/src/main/java/gregtech/GT_Mod.java @@ -3,9 +3,13 @@ package gregtech; import cpw.mods.fml.common.*; import cpw.mods.fml.common.event.*; import cpw.mods.fml.common.registry.EntityRegistry; -import forestry.factory.recipes.ISqueezerRecipe; -import forestry.factory.tiles.TileCentrifuge; -import forestry.factory.tiles.TileSqueezer; +import forestry.api.core.ForestryAPI; +import forestry.api.recipes.ICentrifugeRecipe; +import forestry.api.recipes.ISqueezerRecipe; +import forestry.api.recipes.RecipeManagers; +//import forestry.factory.recipes.ISqueezerRecipe; +//import forestry.factory.tiles.TileCentrifuge; +//import forestry.factory.tiles.TileSqueezer; import gregtech.api.GregTech_API; import gregtech.api.enchants.Enchantment_EnderDamage; import gregtech.api.enchants.Enchantment_Radioactivity; @@ -226,7 +230,7 @@ public class GT_Mod gregtechproxy.mDisableIC2Cables = tMainConfig.get("general", "DisableIC2Cables", true).getBoolean(true); gregtechproxy.mAchievements = tMainConfig.get("general", "EnableAchievements", true).getBoolean(true); gregtechproxy.mAE2Integration = tMainConfig.get("general", "EnableAE2Integration", Loader.isModLoaded("appliedenergistics2")).getBoolean(Loader.isModLoaded("appliedenergistics2")); - + gregtechproxy.mNervedCombs = tMainConfig.get("general", "NervCombs", true).getBoolean(true); GregTech_API.mOutputRF = GregTech_API.sOPStuff.get(ConfigCategories.general, "OutputRF", true); GregTech_API.mInputRF = GregTech_API.sOPStuff.get(ConfigCategories.general, "InputRF", false); @@ -469,8 +473,8 @@ public class GT_Mod } } try { - for (Object tRecipe : TileCentrifuge.RecipeManager.recipes) { - Map outputs = ((TileCentrifuge.CentrifugeRecipe) tRecipe).getAllProducts(); + for (ICentrifugeRecipe tRecipe : RecipeManagers.centrifugeManager.recipes()) { + Map outputs = tRecipe.getAllProducts(); ItemStack[] tOutputs = new ItemStack[outputs.size()]; int[] tChances = new int[outputs.size()]; int i = 0; @@ -479,7 +483,7 @@ public class GT_Mod tOutputs[i] = entry.getKey().copy(); i++; } - GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.addRecipe(true, new ItemStack[]{((TileCentrifuge.CentrifugeRecipe) tRecipe).getInput()}, tOutputs, null, tChances, null, null, 128, 5, 0); + GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.addRecipe(true, new ItemStack[]{tRecipe.getInput()}, tOutputs, null, tChances, null, null, 128, 5, 0); } } catch (Throwable e) { if (GT_Values.D1) { @@ -487,9 +491,9 @@ public class GT_Mod } } try { - for (Object tRecipe : TileSqueezer.RecipeManager.recipes) { - if ((((ISqueezerRecipe) tRecipe).getResources().length == 1) && (((ISqueezerRecipe) tRecipe).getFluidOutput() != null)) { - GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes.addRecipe(true, new ItemStack[]{((ISqueezerRecipe) tRecipe).getResources()[0]}, new ItemStack[]{((ISqueezerRecipe) tRecipe).getRemnants()}, null, new int[]{(int) (((ISqueezerRecipe) tRecipe).getRemnantsChance() * 10000)}, null, new FluidStack[]{((ISqueezerRecipe) tRecipe).getFluidOutput()}, 400, 2, 0); + for (ISqueezerRecipe tRecipe : RecipeManagers.squeezerManager.recipes()) { + if ((tRecipe.getResources().length == 1) && (tRecipe.getFluidOutput() != null)) { + GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes.addRecipe(true, new ItemStack[]{tRecipe.getResources()[0]}, new ItemStack[]{tRecipe.getRemnants()}, null, new int[]{(int) (tRecipe.getRemnantsChance() * 10000)}, null, new FluidStack[]{tRecipe.getFluidOutput()}, 400, 2, 0); } } } catch (Throwable e) { diff --git a/src/main/java/gregtech/api/enums/TextureSet.java b/src/main/java/gregtech/api/enums/TextureSet.java index 090c2a4c..8448b026 100644 --- a/src/main/java/gregtech/api/enums/TextureSet.java +++ b/src/main/java/gregtech/api/enums/TextureSet.java @@ -118,7 +118,7 @@ public class TextureSet { mTextures[98] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/crateGtGem"); mTextures[99] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/crateGtPlate"); mTextures[100] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/turbineBlade"); - mTextures[101] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/comb"); + mTextures[101] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void"); mTextures[102] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void"); mTextures[103] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void"); mTextures[104] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void"); diff --git a/src/main/java/gregtech/common/GT_Proxy.java b/src/main/java/gregtech/common/GT_Proxy.java index ce53a60e..d9c7b109 100644 --- a/src/main/java/gregtech/common/GT_Proxy.java +++ b/src/main/java/gregtech/common/GT_Proxy.java @@ -156,6 +156,7 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler { public int mGraniteHavestLevel=3; public int mMaxHarvestLevel=7; public boolean mChangeHarvestLevels=false; + public boolean mNervedCombs = true; public GT_Proxy() { GameRegistry.registerFuelHandler(this); @@ -273,8 +274,7 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler { ItemList.IC2_Item_Casing_Lead.set(GT_ModHandler.getIC2Item("casinglead", 1L)); ItemList.IC2_Item_Casing_Steel.set(GT_ModHandler.getIC2Item("casingadviron", 1L)); ItemList.IC2_Spray_WeedEx.set(GT_ModHandler.getIC2Item("weedEx", 1L)); - ItemList.IC2_Fuel_Can_Empty.set(GT_ModHandler.getIC2Item("fuelCan", 1L, - GT_ModHandler.getIC2Item("fuelCanEmpty", 1L, GT_ModHandler.getIC2Item("emptyFuelCan", 1L)))); + ItemList.IC2_Fuel_Can_Empty.set(GT_ModHandler.getIC2Item("fuelCan", 1L, GT_ModHandler.getIC2Item("fuelCanEmpty", 1L, GT_ModHandler.getIC2Item("emptyFuelCan", 1L)))); ItemList.IC2_Fuel_Can_Filled.set(GT_ModHandler.getIC2Item("filledFuelCan", 1L)); ItemList.IC2_Mixed_Metal_Ingot.set(GT_ModHandler.getIC2Item("mixedMetalIngot", 1L)); ItemList.IC2_Fertilizer.set(GT_ModHandler.getIC2Item("fertilizer", 1L)); diff --git a/src/main/java/gregtech/common/items/CombType.java b/src/main/java/gregtech/common/items/CombType.java index dcc829eb..da63c064 100644 --- a/src/main/java/gregtech/common/items/CombType.java +++ b/src/main/java/gregtech/common/items/CombType.java @@ -39,7 +39,7 @@ public enum CombType { CHROME("chrome", true, Materials.Chrome, 50), TUNGSTEN("tungsten", true, Materials.Tungstate, 100), PLATINUM("platinum", true, Materials.Platinum, 40), - IRIDIUM("iridium", true, Materials._NULL, 20), + IRIDIUM("iridium", true, Materials.Iridium, 20), // Radioactive Line diff --git a/src/main/java/gregtech/common/items/ItemComb.java b/src/main/java/gregtech/common/items/ItemComb.java index 68bf481c..4d3024d3 100644 --- a/src/main/java/gregtech/common/items/ItemComb.java +++ b/src/main/java/gregtech/common/items/ItemComb.java @@ -1,16 +1,20 @@ package gregtech.common.items; import com.google.common.collect.ImmutableMap; + import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import forestry.api.core.Tabs; import forestry.api.recipes.RecipeManagers; +import gregtech.GT_Mod; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Utility; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; @@ -22,110 +26,122 @@ import java.util.List; import static gregtech.api.enums.GT_Values.MOD_ID; public class ItemComb extends Item { - @SideOnly(Side.CLIENT) - private IIcon secondIcon; + @SideOnly(Side.CLIENT) + private IIcon secondIcon; - public ItemComb() { - super(); - this.setCreativeTab(Tabs.tabApiculture); - this.setHasSubtypes(true); - this.setUnlocalizedName("gt.comb"); - GameRegistry.registerItem(this, "gt.comb", MOD_ID); - } + public ItemComb() { + super(); + this.setCreativeTab(Tabs.tabApiculture); + this.setHasSubtypes(true); + this.setUnlocalizedName("gt.comb"); + GameRegistry.registerItem(this, "gt.comb", MOD_ID); + } - public ItemStack getStackForType(CombType type) { - return new ItemStack(this, 1, type.ordinal()); - } + public ItemStack getStackForType(CombType type) { + return new ItemStack(this, 1, type.ordinal()); + } - public ItemStack getStackForType(CombType type, int count) { - return new ItemStack(this, count, type.ordinal()); - } + public ItemStack getStackForType(CombType type, int count) { + return new ItemStack(this, count, type.ordinal()); + } - @SuppressWarnings({"unchecked", "rawtypes"}) - @Override - @SideOnly(Side.CLIENT) - public void getSubItems(Item item, CreativeTabs tabs, List list) { - for (CombType type : CombType.values()) { - if (type.showInList) { - list.add(this.getStackForType(type)); - } - } - } + @SuppressWarnings({ "unchecked", "rawtypes" }) + @Override + @SideOnly(Side.CLIENT) + public void getSubItems(Item item, CreativeTabs tabs, List list) { + for (CombType type : CombType.values()) { + if (type.showInList) { + list.add(this.getStackForType(type)); + } + } + } - @Override - @SideOnly(Side.CLIENT) - public boolean requiresMultipleRenderPasses() { - return true; - } + @Override + @SideOnly(Side.CLIENT) + public boolean requiresMultipleRenderPasses() { + return true; + } - @Override - public int getRenderPasses(int meta) { - return 2; - } + @Override + public int getRenderPasses(int meta) { + return 2; + } - @SideOnly(Side.CLIENT) - public void registerIcons(IIconRegister par1IconRegister) { - this.itemIcon = par1IconRegister.registerIcon("forestry:beeCombs.0"); - this.secondIcon = par1IconRegister.registerIcon("forestry:beeCombs.1"); - } + @SideOnly(Side.CLIENT) + public void registerIcons(IIconRegister par1IconRegister) { + this.itemIcon = par1IconRegister.registerIcon("forestry:beeCombs.0"); + this.secondIcon = par1IconRegister.registerIcon("forestry:beeCombs.1"); + } - @Override - public IIcon getIcon(ItemStack stack, int pass) { - return (pass == 0) ? itemIcon : secondIcon; - } + @Override + public IIcon getIcon(ItemStack stack, int pass) { + return (pass == 0) ? itemIcon : secondIcon; + } - @Override - @SideOnly(Side.CLIENT) - public int getColorFromItemStack(ItemStack stack, int pass) { - int meta = Math.max(0, Math.min(CombType.values().length - 1, stack.getItemDamage())); - int colour = CombType.values()[meta].getColours()[0]; + @Override + @SideOnly(Side.CLIENT) + public int getColorFromItemStack(ItemStack stack, int pass) { + int meta = Math.max(0, Math.min(CombType.values().length - 1, stack.getItemDamage())); + int colour = CombType.values()[meta].getColours()[0]; - if (pass >= 1) { - colour = CombType.values()[meta].getColours()[1]; - } + if (pass >= 1) { + colour = CombType.values()[meta].getColours()[1]; + } - return colour; - } + return colour; + } - @Override - public String getItemStackDisplayName(ItemStack stack) { - return CombType.values()[stack.getItemDamage()].getName(); - } + @Override + public String getItemStackDisplayName(ItemStack stack) { + return CombType.values()[stack.getItemDamage()].getName(); + } - public void initCombsRecipes() { - for (CombType type : CombType.values()) { - ItemStack tComb = getStackForType(type); - if (type.material == Materials._NULL) { - if (type == type.STICKY) { - GT_Values.RA.addCentrifugeRecipe(tComb, GT_Values.NI, GT_Values.NF, GT_Values.NF, ItemList.IC2_Resin.get(1, new Object[0]), ItemList.FR_Wax.get(1, new Object[0]), ItemList.IC2_Plantball.get(1, new Object[0]), GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[]{5000, 10000, 1500}, 128, 5); - RecipeManagers.centrifugeManager.addRecipe(40, tComb, ImmutableMap.of( - ItemList.IC2_Resin.get(1, new Object[0]), 0.5f, - ItemList.FR_Wax.get(1, new Object[0]), 1.0f, - ItemList.IC2_Plantball.get(1, new Object[0]), 0.15f)); - } else if (type == type.OIL) { - GT_Values.RA.addCentrifugeRecipe(tComb, GT_Values.NI, GT_Values.NF, GT_Values.NF, ItemList.Crop_Drop_OilBerry.get(1, new Object[0]), ItemList.FR_Wax.get(1, new Object[0]), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[]{10000, 10000}, 128, 5); - RecipeManagers.centrifugeManager.addRecipe(40, tComb, ImmutableMap.of( - ItemList.Crop_Drop_OilBerry.get(1, new Object[0]), 1.0f, - ItemList.FR_Wax.get(1, new Object[0]), 1.0f)); - } else if (type == type.STONE || type == type.SLAG) { - GT_Values.RA.addCentrifugeRecipe(tComb, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1), ItemList.FR_Wax.get(1, new Object[0]), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[]{7000, 3000}, 128, 5); - RecipeManagers.centrifugeManager.addRecipe(40, tComb, ImmutableMap.of( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1), 0.7f, - ItemList.FR_Wax.get(1, new Object[0]), 0.3f)); - } else if (type == type.IRIDIUM) { - GT_Values.RA.addCentrifugeRecipe(tComb, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iridium, 1), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Osmium, 1), ItemList.FR_Wax.get(1, new Object[0]), GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[]{2000, 800, 3000}, 128, 5); - RecipeManagers.centrifugeManager.addRecipe(40, tComb, ImmutableMap.of( - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iridium, 1), 0.2f, - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Osmium, 1), 0.08f, - ItemList.FR_Wax.get(1, new Object[0]), 0.3f)); - } - } else { - GT_Values.RA.addCentrifugeRecipe(tComb, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dustTiny, type.material, 1), ItemList.FR_Wax.get(1, new Object[0]), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[]{type.chance * 100, 3000}, 128, 5); - RecipeManagers.centrifugeManager.addRecipe(40, tComb, ImmutableMap.of( - GT_OreDictUnificator.get(OrePrefixes.dustTiny, type.material, 1), type.chance * 0.01f, - ItemList.FR_Wax.get(1, new Object[0]), 0.3f)); - } - } - } + public void initCombsRecipes() { + for (CombType type : CombType.values()) { + ItemStack tComb = getStackForType(type); + if (type.material == Materials._NULL || type == type.COAL || type == type.LIGNIE) { + if (type == type.STICKY) { + GT_Values.RA.addCentrifugeRecipe(tComb, GT_Values.NI, GT_Values.NF, GT_Values.NF, ItemList.IC2_Resin.get(1, new Object[0]), ItemList.FR_Wax.get(1, new Object[0]), + ItemList.IC2_Plantball.get(1, new Object[0]), GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[] { 5000, 10000, 1500 }, 128, 5); + RecipeManagers.centrifugeManager.addRecipe(40, tComb, + ImmutableMap.of(ItemList.IC2_Resin.get(1, new Object[0]), 0.5f, ItemList.FR_Wax.get(1, new Object[0]), 1.0f, ItemList.IC2_Plantball.get(1, new Object[0]), 0.15f)); + } else if (type == type.OIL) { + GT_Values.RA.addCentrifugeRecipe(tComb, GT_Values.NI, GT_Values.NF, GT_Values.NF, ItemList.Crop_Drop_OilBerry.get(1, new Object[0]), ItemList.FR_Wax.get(1, new Object[0]), + GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[] { 10000, 10000 }, 128, 5); + RecipeManagers.centrifugeManager.addRecipe(40, tComb, ImmutableMap.of(ItemList.Crop_Drop_OilBerry.get(1, new Object[0]), 1.0f, ItemList.FR_Wax.get(1, new Object[0]), 1.0f)); + } else if (type == type.STONE || type == type.SLAG) { + GT_Values.RA.addCentrifugeRecipe(tComb, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1), + ItemList.FR_Wax.get(1, new Object[0]), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[] { 7000, 3000 }, 128, 5); + RecipeManagers.centrifugeManager.addRecipe(40, tComb, + ImmutableMap.of(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1), 0.7f, ItemList.FR_Wax.get(1, new Object[0]), 0.3f)); + } else { + GT_Values.RA.addCentrifugeRecipe(tComb, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dustTiny, type.material, 1), + ItemList.FR_Wax.get(1, new Object[0]), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[] { type.chance * 100, 3000 }, 128, 5); + RecipeManagers.centrifugeManager.addRecipe(40, tComb, + ImmutableMap.of(GT_OreDictUnificator.get(OrePrefixes.dustTiny, type.material, 1), type.chance * 0.01f, ItemList.FR_Wax.get(1, new Object[0]), 0.3f)); + } + } else { + if (GT_Mod.gregtechproxy.mNervedCombs) { + GT_Values.RA.addChemicalRecipe(GT_Utility.copyAmount(9, tComb), GT_OreDictUnificator.get(OrePrefixes.crushed, type.material, 1), Materials.Water.getFluid(1000), + type.material.mOreByProducts.isEmpty() ? null : type.material.mOreByProducts.get(0).getMolten(144), + GT_OreDictUnificator.get(OrePrefixes.crushedPurified, type.material, 4), 96, 300); + GT_Values.RA.addAutoclaveRecipe(tComb, Materials.UUMatter.getFluid(1), GT_OreDictUnificator.get(OrePrefixes.crushedPurified, type.material, 1),(type==CombType.URANIUM||type==CombType.PLUTONIUM||type==CombType.NAQUADAH)? 3: 10, 300, 24); + } else { + if (type == type.IRIDIUM) { + GT_Values.RA.addCentrifugeRecipe(tComb, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iridium, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Osmium, 1), ItemList.FR_Wax.get(1, new Object[0]), GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[] { 2000, + 800, 3000 }, 128, 5); + RecipeManagers.centrifugeManager.addRecipe(40, tComb, ImmutableMap.of(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iridium, 1), 0.2f, + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Osmium, 1), 0.08f, ItemList.FR_Wax.get(1, new Object[0]), 0.3f)); + } else { + GT_Values.RA.addCentrifugeRecipe(tComb, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dustTiny, type.material, 1), + ItemList.FR_Wax.get(1, new Object[0]), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[] { type.chance * 100, 3000 }, 128, 5); + RecipeManagers.centrifugeManager.addRecipe(40, tComb, + ImmutableMap.of(GT_OreDictUnificator.get(OrePrefixes.dustTiny, type.material, 1), type.chance * 0.01f, ItemList.FR_Wax.get(1, new Object[0]), 0.3f)); + } + } + } + } + } } \ No newline at end of file diff --git a/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java b/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java index 0198c750..690a1ba6 100644 --- a/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java +++ b/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java @@ -1,6 +1,8 @@ package gregtech.loaders.misc; import forestry.api.apiculture.*; +import forestry.api.core.EnumHumidity; +import forestry.api.core.EnumTemperature; import forestry.api.genetics.AlleleManager; import forestry.api.genetics.IAllele; import forestry.apiculture.genetics.Bee; @@ -8,11 +10,13 @@ import forestry.apiculture.genetics.BeeDefinition; import forestry.apiculture.genetics.BeeVariation; import forestry.apiculture.genetics.IBeeDefinition; import forestry.core.config.ForestryItem; -import forestry.core.genetics.alleles.Allele; +import forestry.core.genetics.alleles.AlleleHelper; +import gregtech.api.GregTech_API; import gregtech.api.enums.ItemList; import gregtech.common.items.CombType; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; + import org.apache.commons.lang3.text.WordUtils; import java.util.Arrays; @@ -24,6 +28,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(ForestryItem.beeComb.getItemStack(1, 0), 0.30f); beeSpecies.addProduct(new ItemStack(Items.clay_ball, 1), 0.15f); + beeSpecies.setHumidity(EnumHumidity.DAMP); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -33,14 +39,16 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(getSpecies("Industrious"), getSpecies("Diligent"), 20); + IBeeMutationCustom tMutation = registerMutation(getSpecies("Industrious"), getSpecies("Diligent"), 20); } }, SLIMEBALL(GT_BranchDefinition.ORGANIC, "SlimeBall", true, 0x4E9E55, 0x00FF15) { @Override protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(ForestryItem.beeComb.getItemStack(1, 15), 0.30f); - beeSpecies.addSpecialty(new ItemStack(Items.slime_ball, 1), 0.15f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.STICKY), 0.30f); + beeSpecies.setHumidity(EnumHumidity.DAMP); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -50,7 +58,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(getSpecies("Marshy"), CLAY.species, 15); + IBeeMutationCustom tMutation = registerMutation(getSpecies("Marshy"), CLAY.species, 15); } }, PEAT(GT_BranchDefinition.ORGANIC, "Peat", true, 0x906237, 0x58300B) { @@ -58,6 +66,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.LIGNIE), 0.30f); beeSpecies.addProduct(ForestryItem.peat.getItemStack(1), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -67,7 +77,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(getSpecies("Rural"), CLAY.species, 20); + IBeeMutationCustom tMutation = registerMutation(getSpecies("Rural"), CLAY.species, 20); } }, STICKYRESIN(GT_BranchDefinition.ORGANIC, "StickyResin", true, 0x2E8F5B, 0xDCC289) { @@ -75,6 +85,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(ForestryItem.beeComb.getItemStack(1, 0), 0.30f); beeSpecies.addProduct(ItemList.IC2_Resin.get(1, new Object[0]), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -84,7 +96,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(SLIMEBALL.species, PEAT.species, 25); + IBeeMutationCustom tMutation = registerMutation(SLIMEBALL.species, PEAT.species, 25); } }, COAL(GT_BranchDefinition.ORGANIC, "Coal", true, 0x666666, 0x525252) { @@ -92,6 +104,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.LIGNIE), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.COAL), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -101,7 +115,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(getSpecies("Industrious"), PEAT.species, 18); + IBeeMutationCustom tMutation = registerMutation(getSpecies("Industrious"), PEAT.species, 18); } }, OIL(GT_BranchDefinition.ORGANIC, "Oil", true, 0x4C4C4C, 0x333333) { @@ -109,6 +123,9 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(ForestryItem.beeComb.getItemStack(1, 0), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.OIL), 0.15f); + beeSpecies.setHumidity(EnumHumidity.DAMP); + beeSpecies.setTemperature(EnumTemperature.NORMAL); + beeSpecies.setNocturnal(); } @Override @@ -118,7 +135,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(COAL.species, STICKYRESIN.species, 8); + IBeeMutationCustom tMutation = registerMutation(COAL.species, STICKYRESIN.species, 8); } }, REDSTONE(GT_BranchDefinition.GEM, "Redstone", true, 0x7D0F0F, 0xD11919) { @@ -126,6 +143,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.REDSTONE), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -135,7 +154,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(getSpecies("Industrious"), getSpecies("Demonic"), 20); + IBeeMutationCustom tMutation = registerMutation(getSpecies("Industrious"), getSpecies("Demonic"), 20); } }, LAPIS(GT_BranchDefinition.GEM, "Lapis", true, 0x1947D1, 0x476CDA) { @@ -143,6 +162,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.LAPIS), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -152,7 +173,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(getSpecies("Demonic"), getSpecies("Imperial"), 20); + IBeeMutationCustom tMutation = registerMutation(getSpecies("Demonic"), getSpecies("Imperial"), 20); } }, CERTUS(GT_BranchDefinition.GEM, "CertusQuartz", true, 0x57CFFB, 0xBBEEFF) { @@ -160,6 +181,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.CERTUS), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -169,7 +192,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(getSpecies("Hermitic"), LAPIS.species, 20); + IBeeMutationCustom tMutation = registerMutation(getSpecies("Hermitic"), LAPIS.species, 20); } }, RUBY(GT_BranchDefinition.GEM, "Ruby", true, 0xE6005C, 0xCC0052) { @@ -177,6 +200,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.RUBY), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -186,7 +211,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(REDSTONE.species, DIAMOND.species, 10); + IBeeMutationCustom tMutation = registerMutation(REDSTONE.species, DIAMOND.species, 10); } }, SAPPHIRE(GT_BranchDefinition.GEM, "Sapphire", true, 0x0033CC, 0x00248F) { @@ -194,6 +219,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.SAPPHIRE), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -203,7 +230,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(CERTUS.species, LAPIS.species, 10); + IBeeMutationCustom tMutation = registerMutation(CERTUS.species, LAPIS.species, 10); } }, DIAMOND(GT_BranchDefinition.GEM, "Diamond", true, 0xCCFFFF, 0xA3CCCC) { @@ -211,6 +238,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.DIAMOND), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -220,7 +249,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(CERTUS.species, COAL.species, 6); + IBeeMutationCustom tMutation = registerMutation(CERTUS.species, COAL.species, 6); } }, OLIVINE(GT_BranchDefinition.GEM, "Olivine", true, 0x248F24, 0xCCFFCC) { @@ -228,6 +257,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.OLIVINE), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -237,7 +268,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(CERTUS.species, getSpecies("Ended"), 10); + IBeeMutationCustom tMutation = registerMutation(CERTUS.species, getSpecies("Ended"), 10); } }, EMERALD(GT_BranchDefinition.GEM, "Emerald", true, 0x248F24, 0x2EB82E) { @@ -245,6 +276,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.EMERALD), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.COLD); } @Override @@ -254,7 +287,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(OLIVINE.species, DIAMOND.species, 8); + IBeeMutationCustom tMutation = registerMutation(OLIVINE.species, DIAMOND.species, 8); } }, COPPER(GT_BranchDefinition.METAL, "Copper", true, 0xFF6600, 0xE65C00) { @@ -262,6 +295,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.COPPER), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -271,7 +306,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(getSpecies("Majestic"), CLAY.species, 25); + IBeeMutationCustom tMutation = registerMutation(getSpecies("Majestic"), CLAY.species, 25); } }, TIN(GT_BranchDefinition.METAL, "Tin", true, 0xD4D4D4, 0xDDDDDD) { @@ -279,6 +314,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.TIN), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -288,7 +325,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(CLAY.species, getSpecies("Diligent"), 25); + IBeeMutationCustom tMutation = registerMutation(CLAY.species, getSpecies("Diligent"), 25); } }, LEAD(GT_BranchDefinition.METAL, "Lead", true, 0x666699, 0xA3A3CC) { @@ -296,6 +333,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.LEAD), 0.15f); + beeSpecies.setHumidity(EnumHumidity.DAMP); + beeSpecies.setTemperature(EnumTemperature.WARM); } @Override @@ -305,7 +344,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(COAL.species, COPPER.species, 25); + IBeeMutationCustom tMutation = registerMutation(COAL.species, COPPER.species, 25); } }, IRON(GT_BranchDefinition.METAL, "Iron", true, 0xDA9147, 0xDE9C59) { @@ -313,6 +352,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.IRON), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -322,7 +363,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(TIN.species, COPPER.species, 25); + IBeeMutationCustom tMutation = registerMutation(TIN.species, COPPER.species, 25); } }, STEEL(GT_BranchDefinition.METAL, "Steel", true, 0x808080, 0x999999) { @@ -330,6 +371,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STEEL), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -339,7 +382,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(IRON.species, COAL.species, 20); + IBeeMutationCustom tMutation = registerMutation(IRON.species, COAL.species, 20); } }, NICKEL(GT_BranchDefinition.METAL, "Nickel", true, 0x8585AD, 0x8585AD) { @@ -347,6 +390,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.NICKEL), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -356,7 +401,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(IRON.species, COPPER.species, 25); + IBeeMutationCustom tMutation = registerMutation(IRON.species, COPPER.species, 25); } }, ZINC(GT_BranchDefinition.METAL, "Zinc", true, 0xF0DEF0, 0xF2E1F2) { @@ -364,6 +409,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.ZINC), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -373,7 +420,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(IRON.species, TIN.species, 20); + IBeeMutationCustom tMutation = registerMutation(IRON.species, TIN.species, 20); } }, SILVER(GT_BranchDefinition.METAL, "Silver", true, 0xC2C2D6, 0xCECEDE) { @@ -381,6 +428,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SILVER), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -390,7 +439,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(LEAD.species, TIN.species, 20); + IBeeMutationCustom tMutation = registerMutation(LEAD.species, TIN.species, 20); } }, GOLD(GT_BranchDefinition.METAL, "Gold", true, 0xEBC633, 0xEDCC47) { @@ -398,6 +447,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.GOLD), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); } @Override @@ -407,7 +458,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(LEAD.species, COPPER.species, 20); + IBeeMutationCustom tMutation = registerMutation(LEAD.species, COPPER.species, 20); } }, ALUMINIUM(GT_BranchDefinition.RAREMETAL, "Aluminium", true, 0xB8B8FF, 0xD6D6FF) { @@ -415,6 +466,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.ALUMINIUM), 0.15f); + beeSpecies.setHumidity(EnumHumidity.ARID); + beeSpecies.setTemperature(EnumTemperature.HOT); } @Override @@ -424,7 +477,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(NICKEL.species, ZINC.species, 18); + IBeeMutationCustom tMutation = registerMutation(NICKEL.species, ZINC.species, 18); } }, TITANIUM(GT_BranchDefinition.RAREMETAL, "Titanium", true, 0xCC99FF, 0xDBB8FF) { @@ -432,6 +485,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.TITANIUM), 0.15f); + beeSpecies.setHumidity(EnumHumidity.ARID); + beeSpecies.setTemperature(EnumTemperature.HOT); } @Override @@ -441,7 +496,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(REDSTONE.species, ALUMINIUM.species, 5); + IBeeMutationCustom tMutation = registerMutation(REDSTONE.species, ALUMINIUM.species, 5); } }, CHROME(GT_BranchDefinition.RAREMETAL, "Chrome", true, 0xEBA1EB, 0xF2C3F2) { @@ -449,6 +504,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.CHROME), 0.15f); + beeSpecies.setHumidity(EnumHumidity.ARID); + beeSpecies.setTemperature(EnumTemperature.HOT); } @Override @@ -458,7 +515,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(TITANIUM.species, RUBY.species, 5); + IBeeMutationCustom tMutation = registerMutation(TITANIUM.species, RUBY.species, 5); + tMutation.requireResource(GregTech_API.sBlockMetal2, 3); } }, MANGANESE(GT_BranchDefinition.RAREMETAL, "Manganese", true, 0xD5D5D5, 0xAAAAAA) { @@ -466,6 +524,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.MANGANESE), 0.15f); + beeSpecies.setHumidity(EnumHumidity.ARID); + beeSpecies.setTemperature(EnumTemperature.HOT); } @Override @@ -475,7 +535,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(TITANIUM.species, ALUMINIUM.species, 5); + IBeeMutationCustom tMutation = registerMutation(TITANIUM.species, ALUMINIUM.species, 5); + tMutation.requireResource(GregTech_API.sBlockMetal4, 6); } }, TUNGSTEN(GT_BranchDefinition.RAREMETAL, "Tungsten", true, 0x5C5C8A, 0x7D7DA1) { @@ -483,6 +544,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.TUNGSTEN), 0.15f); + beeSpecies.setHumidity(EnumHumidity.ARID); + beeSpecies.setTemperature(EnumTemperature.HOT); } @Override @@ -492,7 +555,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(getSpecies("Heroic"), MANGANESE.species, 5); + IBeeMutationCustom tMutation = registerMutation(getSpecies("Heroic"), MANGANESE.species, 5); + tMutation.requireResource(GregTech_API.sBlockMetal7, 11); } }, PLATINUM(GT_BranchDefinition.RAREMETAL, "Platinum", true, 0xE6E6E6, 0xFFFFCC) { @@ -500,6 +564,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.PLATINUM), 0.15f); + beeSpecies.setHumidity(EnumHumidity.ARID); + beeSpecies.setTemperature(EnumTemperature.HOT); } @Override @@ -509,7 +575,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(DIAMOND.species, CHROME.species, 5); + IBeeMutationCustom tMutation = registerMutation(DIAMOND.species, CHROME.species, 5); + tMutation.requireResource(GregTech_API.sBlockMetal5, 12); } }, IRIDIUM(GT_BranchDefinition.RAREMETAL, "Iridium", true, 0xDADADA, 0xD1D1E0) { @@ -518,6 +585,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.TUNGSTEN), 0.15f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.PLATINUM), 0.15f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.IRIDIUM), 0.15f); + beeSpecies.setHumidity(EnumHumidity.ARID); + beeSpecies.setTemperature(EnumTemperature.HELLISH); } @Override @@ -527,7 +596,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(TUNGSTEN.species, PLATINUM.species, 5); + IBeeMutationCustom tMutation = registerMutation(TUNGSTEN.species, PLATINUM.species, 5); + tMutation.requireResource(GregTech_API.sBlockMetal3, 12); } }, URANIUM(GT_BranchDefinition.RADIOACTIVE, "Uranium", true, 0x19AF19, 0x169E16) { @@ -535,6 +605,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.URANIUM), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.COLD); } @Override @@ -544,7 +616,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(getSpecies("Avenging"), PLATINUM.species, 5); + IBeeMutationCustom tMutation = registerMutation(getSpecies("Avenging"), PLATINUM.species, 5); + tMutation.requireResource(GregTech_API.sBlockMetal7, 14); } }, PLUTONIUM(GT_BranchDefinition.RADIOACTIVE, "Plutonium", true, 0x335C33, 0x6B8F00) { @@ -552,6 +625,9 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.PLUTONIUM), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.ICY); + beeSpecies.setNocturnal(); } @Override @@ -561,7 +637,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(URANIUM.species, EMERALD.species, 5); + IBeeMutationCustom tMutation = registerMutation(URANIUM.species, EMERALD.species, 5); + tMutation.requireResource(GregTech_API.sBlockMetal5, 13); } }, NAQUADAH(GT_BranchDefinition.RADIOACTIVE, "Naquadah", true, 0x003300, 0x002400) { @@ -569,6 +646,9 @@ public enum GT_BeeDefinition implements IBeeDefinition { protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.NAQUADAH), 0.15f); + beeSpecies.setHumidity(EnumHumidity.ARID); + beeSpecies.setTemperature(EnumTemperature.ICY); + beeSpecies.setNocturnal(); } @Override @@ -578,7 +658,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override protected void registerMutations() { - registerMutation(PLUTONIUM.species, IRIDIUM.species, 3); + IBeeMutationCustom tMutation = registerMutation(PLUTONIUM.species, IRIDIUM.species, 3); + tMutation.requireResource(GregTech_API.sBlockMetal4, 12); } }; @@ -624,7 +705,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { setSpeciesProperties(species); template = branch.getTemplate(); - Allele.helper.set(template, EnumBeeChromosome.SPECIES, species); + AlleleHelper.instance.set(template, EnumBeeChromosome.SPECIES, species); setAlleles(template); genome = BeeManager.beeRoot.templateAsGenome(template); diff --git a/src/main/java/gregtech/loaders/misc/GT_Bees.java b/src/main/java/gregtech/loaders/misc/GT_Bees.java index 77f4bfa9..8635d9c8 100644 --- a/src/main/java/gregtech/loaders/misc/GT_Bees.java +++ b/src/main/java/gregtech/loaders/misc/GT_Bees.java @@ -1,6 +1,12 @@ package gregtech.loaders.misc; import cpw.mods.fml.common.Loader; +import forestry.api.apiculture.BeeManager; +import forestry.api.apiculture.EnumBeeChromosome; +import forestry.api.genetics.IAllele; +import forestry.api.genetics.IClassification; +import forestry.core.genetics.alleles.AlleleHelper; +import forestry.core.genetics.alleles.EnumAllele; import gregtech.GT_Mod; import gregtech.common.items.ItemComb; @@ -12,7 +18,7 @@ public class GT_Bees { if (Loader.isModLoaded("Forestry") && GT_Mod.gregtechproxy.mGTBees) { combs = new ItemComb(); combs.initCombsRecipes(); - GT_BeeDefinition.initBees(); + GT_BeeDefinition.initBees(); } } } diff --git a/src/main/java/gregtech/loaders/misc/GT_BranchDefinition.java b/src/main/java/gregtech/loaders/misc/GT_BranchDefinition.java index 969761ef..d5387680 100644 --- a/src/main/java/gregtech/loaders/misc/GT_BranchDefinition.java +++ b/src/main/java/gregtech/loaders/misc/GT_BranchDefinition.java @@ -2,9 +2,11 @@ package gregtech.loaders.misc; import forestry.api.apiculture.BeeManager; import forestry.api.apiculture.EnumBeeChromosome; +import forestry.api.genetics.AlleleManager; import forestry.api.genetics.IAllele; import forestry.api.genetics.IClassification; import forestry.core.genetics.alleles.Allele; +import forestry.core.genetics.alleles.AlleleHelper; import forestry.core.genetics.alleles.EnumAllele; import java.util.Arrays; @@ -15,46 +17,46 @@ public enum GT_BranchDefinition { ORGANIC("Fuelis") { @Override protected void setBranchProperties(IAllele[] alleles) { - Allele.helper.set(alleles, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.BOTH_1); - Allele.helper.set(alleles, EnumBeeChromosome.NOCTURNAL, false); - Allele.helper.set(alleles, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.VANILLA); - Allele.helper.set(alleles, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.AVERAGE); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.UP_2); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.NOCTURNAL, false); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.MUSHROOMS); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.SLOW); } }, GEM("Ornamentis") { @Override protected void setBranchProperties(IAllele[] alleles) { - Allele.helper.set(alleles, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.BOTH_1); - Allele.helper.set(alleles, EnumBeeChromosome.NOCTURNAL, false); - Allele.helper.set(alleles, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.VANILLA); - Allele.helper.set(alleles, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.AVERAGE); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.NONE); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.NOCTURNAL, false); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.VANILLA); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.AVERAGE); } }, METAL("Metaliferis") { @Override protected void setBranchProperties(IAllele[] alleles) { - Allele.helper.set(alleles, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.BOTH_1); - Allele.helper.set(alleles, EnumBeeChromosome.NOCTURNAL, false); - Allele.helper.set(alleles, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.VANILLA); - Allele.helper.set(alleles, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.AVERAGE); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.DOWN_2); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.NOCTURNAL, false); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.JUNGLE); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.SLOWER); } }, RAREMETAL("Mineralis") { @Override protected void setBranchProperties(IAllele[] alleles) { - Allele.helper.set(alleles, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.BOTH_1); - Allele.helper.set(alleles, EnumBeeChromosome.NOCTURNAL, false); - Allele.helper.set(alleles, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.VANILLA); - Allele.helper.set(alleles, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.AVERAGE); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.DOWN_1); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.NOCTURNAL, false); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.CACTI); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.FAST); } }, RADIOACTIVE("Criticalis") { @Override protected void setBranchProperties(IAllele[] alleles) { - Allele.helper.set(alleles, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.BOTH_1); - Allele.helper.set(alleles, EnumBeeChromosome.NOCTURNAL, false); - Allele.helper.set(alleles, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.VANILLA); - Allele.helper.set(alleles, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.AVERAGE); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.NONE); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.NOCTURNAL, false); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.END); + AlleleHelper.instance.set(alleles, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.AVERAGE); } }; @@ -69,18 +71,18 @@ public enum GT_BranchDefinition { if (defaultTemplate == null) { defaultTemplate = new IAllele[EnumBeeChromosome.values().length]; - Allele.helper.set(defaultTemplate, EnumBeeChromosome.SPEED, EnumAllele.Speed.SLOWEST); - Allele.helper.set(defaultTemplate, EnumBeeChromosome.LIFESPAN, EnumAllele.Lifespan.SHORTER); - Allele.helper.set(defaultTemplate, EnumBeeChromosome.FERTILITY, EnumAllele.Fertility.NORMAL); - Allele.helper.set(defaultTemplate, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.NONE); - Allele.helper.set(defaultTemplate, EnumBeeChromosome.NOCTURNAL, false); - Allele.helper.set(defaultTemplate, EnumBeeChromosome.HUMIDITY_TOLERANCE, EnumAllele.Tolerance.NONE); - Allele.helper.set(defaultTemplate, EnumBeeChromosome.TOLERANT_FLYER, false); - Allele.helper.set(defaultTemplate, EnumBeeChromosome.CAVE_DWELLING, false); - Allele.helper.set(defaultTemplate, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.VANILLA); - Allele.helper.set(defaultTemplate, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.SLOWEST); - Allele.helper.set(defaultTemplate, EnumBeeChromosome.TERRITORY, EnumAllele.Territory.AVERAGE); - Allele.helper.set(defaultTemplate, EnumBeeChromosome.EFFECT, Allele.effectNone); + AlleleHelper.instance.set(defaultTemplate, EnumBeeChromosome.SPEED, EnumAllele.Speed.SLOWEST); + AlleleHelper.instance.set(defaultTemplate, EnumBeeChromosome.LIFESPAN, EnumAllele.Lifespan.SHORTER); + AlleleHelper.instance.set(defaultTemplate, EnumBeeChromosome.FERTILITY, EnumAllele.Fertility.NORMAL); + AlleleHelper.instance.set(defaultTemplate, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.NONE); + AlleleHelper.instance.set(defaultTemplate, EnumBeeChromosome.NOCTURNAL, false); + AlleleHelper.instance.set(defaultTemplate, EnumBeeChromosome.HUMIDITY_TOLERANCE, EnumAllele.Tolerance.NONE); + AlleleHelper.instance.set(defaultTemplate, EnumBeeChromosome.TOLERANT_FLYER, false); + AlleleHelper.instance.set(defaultTemplate, EnumBeeChromosome.CAVE_DWELLING, false); + AlleleHelper.instance.set(defaultTemplate, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.VANILLA); + AlleleHelper.instance.set(defaultTemplate, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.SLOWEST); + AlleleHelper.instance.set(defaultTemplate, EnumBeeChromosome.TERRITORY, EnumAllele.Territory.AVERAGE); + //AlleleHelper.instance.set(defaultTemplate, EnumBeeChromosome.EFFECT, EnumAllele.effectNone); } return Arrays.copyOf(defaultTemplate, defaultTemplate.length); }