diff options
Diffstat (limited to 'src/main/java/gregtech/loaders')
3 files changed, 2816 insertions, 3584 deletions
diff --git a/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java b/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java index 95914d1a71..097c2dd034 100644 --- a/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java +++ b/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java @@ -14,7 +14,6 @@ import forestry.apiculture.genetics.BeeVariation; import forestry.apiculture.genetics.IBeeDefinition; import forestry.apiculture.genetics.alleles.AlleleEffect; import forestry.core.genetics.alleles.AlleleHelper; -import forestry.core.genetics.alleles.EnumAllele; import gregtech.api.GregTech_API; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; @@ -34,3411 +33,2573 @@ import net.minecraft.init.Items; import net.minecraft.item.ItemStack; import org.apache.commons.lang3.text.WordUtils; +import java.awt.*; import java.util.Arrays; import java.util.Locale; +import java.util.function.Consumer; + +import static forestry.api.apiculture.EnumBeeChromosome.*; +import static forestry.api.core.EnumHumidity.ARID; +import static forestry.api.core.EnumHumidity.DAMP; +import static forestry.api.core.EnumTemperature.*; +import static forestry.core.genetics.alleles.EnumAllele.*; +import static gregtech.loaders.misc.GT_BeeDefinitionReference.*; + +@SuppressWarnings("ALL") +/** + * Bride Class for Lambdas + */ +class GT_BeeDefinitionReference { + protected final static byte FORESTRY = 0; + protected final static byte EXTRABEES = 1; + protected final static byte GENDUSTRY = 2; + protected final static byte MAGICBEES = 3; + protected final static byte GREGTECH = 4; + private GT_BeeDefinitionReference() {} +} public enum GT_BeeDefinition implements IBeeDefinition { - //organic - CLAY(GT_BranchDefinition.ORGANIC, "Clay", true, 0xC8C8DA, 0x0000FF) { - @Override - protected void setSpeciesProperties(GT_AlleleBeeSpecies beeSpecies) { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 0), 0.30f); - beeSpecies.addProduct(new ItemStack(Items.clay_ball, 1), 0.15f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem("BiomesOPlenty", "mudball", 1, 0), 0.05f); - beeSpecies.setHumidity(EnumHumidity.DAMP); - beeSpecies.setTemperature(EnumTemperature.NORMAL); - //Example - //beeSpecies.setIsSecret(); - } - - @Override - protected void setAlleles(IAllele[] template) { - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.SLOWER); - AlleleHelper.instance.set(template, EnumBeeChromosome.HUMIDITY_TOLERANCE, EnumAllele.Tolerance.NONE); - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.VANILLA); - //Exaples - //template = BeeDefinition.CULTIVATED.getTemplate(); - //AlleleHelper.instance.set(template, EnumBeeChromosome.SPEED, EnumAllele.Speed.FASTEST); - //tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(-1)); - //tMutation.addMutationCondition(new GT_Bees.BiomeIDMutationCondition(50)); - //tMutation.requireResource(Blocks.coal_block, 0); - //AlleleHelper.instance.set(template, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.DOWN_1); - //tMutation.requireResource(GameRegistry.findBlock("minecraft", "sand"), 1); - //AlleleHelper.instance.set(template, EnumBeeChromosome.LIFESPAN, GT_Bees.superLife); - //tMutation.restrictDateRange( 1, 1, 1, 1); - } - - @Override - protected void registerMutations() { - IBeeMutationCustom tMutation = registerMutation(getSpecies(FORRESTRY, "Industrious"), getSpecies(FORRESTRY, "Diligent"), 10); - tMutation.requireResource(Blocks.clay,0); //blockStainedHardenedClay - } - }, - SLIMEBALL(GT_BranchDefinition.ORGANIC, "SlimeBall", true, 0x4E9E55, 0x00FF15) { - @Override - protected void setSpeciesProperties(GT_AlleleBeeSpecies beeSpecies) { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 15), 0.30f); - beeSpecies.addProduct(new ItemStack(Items.slime_ball, 1), 0.15f); - beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.STICKY), 0.05f); - beeSpecies.setHumidity(EnumHumidity.DAMP); - beeSpecies.setTemperature(EnumTemperature.NORMAL); - if (Loader.isModLoaded("TConstruct")) { - beeSpecies.addProduct(GT_ModHandler.getModItem("TConstruct", "strangeFood", 1, 0), 0.10f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem("TConstruct", "slime.gel", 1, 2), 0.01f); + CLAY(GT_BranchDefinition.ORGANIC, "Clay", true, new Color(0xC8C8DA), new Color(0x0000FF), + beeSpecies -> { + beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 0), 0.30f); + beeSpecies.addProduct(new ItemStack(Items.clay_ball, 1), 0.15f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem("BiomesOPlenty", "mudball", 1, 0), 0.05f); + beeSpecies.setHumidity(DAMP); + beeSpecies.setTemperature(EnumTemperature.NORMAL); + }, + template -> { + AlleleHelper.instance.set(template, FLOWERING, Flowering.SLOWER); + AlleleHelper.instance.set(template, HUMIDITY_TOLERANCE, Tolerance.NONE); + AlleleHelper.instance.set(template, FLOWER_PROVIDER, Flowers.VANILLA); + }, + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(FORESTRY, "Industrious"), getSpecies(FORESTRY, "Diligent"), 10); + tMutation.requireResource(Blocks.clay, 0); //blockStainedHardenedClay } + ), + SLIMEBALL(GT_BranchDefinition.ORGANIC, "SlimeBall", true, new Color(0x4E9E55), new Color(0x00FF15), + beeSpecies -> { + beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 15), 0.30f); + beeSpecies.addProduct(new ItemStack(Items.slime_ball, 1), 0.15f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.STICKY), 0.05f); + beeSpecies.setHumidity(DAMP); + beeSpecies.setTemperature(EnumTemperature.NORMAL); + if (Loader.isModLoaded("TConstruct")) { + beeSpecies.addProduct(GT_ModHandler.getModItem("TConstruct", "strangeFood", 1, 0), 0.10f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem("TConstruct", "slime.gel", 1, 2), 0.01f); + } + }, + template -> { + AlleleHelper.instance.set(template, FLOWER_PROVIDER, Flowers.MUSHROOMS); + AlleleHelper.instance.set(template, FLOWERING, Flowering.SLOWER); + AlleleHelper.instance.set(template, TEMPERATURE_TOLERANCE, Tolerance.BOTH_1); + AlleleHelper.instance.set(template, HUMIDITY_TOLERANCE, Tolerance.BOTH_1); + AlleleHelper.instance.set(template, FLOWER_PROVIDER, getFlowers(EXTRABEES, "water")); + }, + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(FORESTRY, "Marshy"), CLAY, 7); + if (Loader.isModLoaded("TConstruct")) + tMutation.requireResource(GameRegistry.findBlock("TConstruct", "slime.gel"), 1); + } + ), + PEAT(GT_BranchDefinition.ORGANIC, "Peat", true, new Color(0x906237), new Color(0x58300B), + beeSpecies -> { + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.LIGNIE), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 0), 0.15f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "peat", 1, 0), 0.15f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "mulch", 1, 0), 0.05f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); + }, + template -> { + AlleleHelper.instance.set(template, SPEED, Speed.SLOWER); + AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTER); + AlleleHelper.instance.set(template, FLOWER_PROVIDER, Flowers.WHEAT); + AlleleHelper.instance.set(template, FLOWERING, Flowering.FASTER); + AlleleHelper.instance.set(template, HUMIDITY_TOLERANCE, Tolerance.NONE); + }, + dis -> dis.registerMutation(getSpecies(FORESTRY, "Rural"), CLAY, 10) + ), + STICKYRESIN(GT_BranchDefinition.ORGANIC, "StickyResin", true, new Color(0x2E8F5B), new Color(0xDCC289), + beeSpecies -> { + beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 0), 0.30f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.STICKY), 0.15f); + beeSpecies.addSpecialty(ItemList.IC2_Resin.get(1), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); + }, + template -> { + AlleleHelper.instance.set(template, FLOWERING, Flowering.SLOWER); + AlleleHelper.instance.set(template, HUMIDITY_TOLERANCE, Tolerance.NONE); + }, + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(SLIMEBALL, PEAT, 15); + tMutation.requireResource("logRubber"); + } + ), + COAL(GT_BranchDefinition.ORGANIC, "Coal", true, new Color(0x666666), new Color(0x525252), + 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); + }, + template -> { + AlleleHelper.instance.set(template, FLOWER_PROVIDER, Flowers.CACTI); + AlleleHelper.instance.set(template, SPEED, Speed.SLOWEST); + AlleleHelper.instance.set(template, LIFESPAN, Lifespan.LONGER); + AlleleHelper.instance.set(template, TEMPERATURE_TOLERANCE, Tolerance.DOWN_2); + AlleleHelper.instance.set(template, HUMIDITY_TOLERANCE, Tolerance.DOWN_1); + AlleleHelper.instance.set(template, NOCTURNAL, true); + AlleleHelper.instance.set(template, EFFECT, AlleleEffect.effectCreeper); + }, + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(FORESTRY, "Industrious"), PEAT, 9); + tMutation.requireResource("blockCoal"); + } + ), + OIL(GT_BranchDefinition.ORGANIC, "Oil", true, new Color(0x4C4C4C), new Color(0x333333), + beeSpecies -> { + beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 0), 0.30f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.OIL), 0.15f); + beeSpecies.setHumidity(DAMP); + beeSpecies.setTemperature(EnumTemperature.NORMAL); + beeSpecies.setHasEffect(); + }, + template -> { + AlleleHelper.instance.set(template, FLOWERING, Flowering.SLOWER); + AlleleHelper.instance.set(template, NOCTURNAL, true); + AlleleHelper.instance.set(template, LIFESPAN, Lifespan.NORMAL); + AlleleHelper.instance.set(template, SPEED, Speed.SLOWER); + AlleleHelper.instance.set(template, FLOWER_PROVIDER, getFlowers(EXTRABEES, "water")); + AlleleHelper.instance.set(template, TEMPERATURE_TOLERANCE, Tolerance.NONE); + AlleleHelper.instance.set(template, HUMIDITY_TOLERANCE, Tolerance.NONE); + + }, + dis -> dis.registerMutation(COAL, STICKYRESIN, 4) + ), + SANDWICH(GT_BranchDefinition.ORGANIC, "Sandwich", true, new Color(0x32CD32), new Color(0xDAA520), + beeSpecies -> { + beeSpecies.addProduct(GT_ModHandler.getModItem("ExtraBees", "honeyComb", 1, 9), 0.15f); + beeSpecies.addSpecialty(ItemList.Food_Sliced_Cucumber.get(1), 0.05f); + beeSpecies.addSpecialty(ItemList.Food_Sliced_Onion.get(1), 0.05f); + beeSpecies.addSpecialty(ItemList.Food_Sliced_Tomato.get(1), 0.05f); + beeSpecies.addSpecialty(ItemList.Food_Sliced_Cheese.get(1), 0.05f); + beeSpecies.addSpecialty(new ItemStack(Items.cooked_porkchop, 1, 0), 0.05f); + beeSpecies.addSpecialty(new ItemStack(Items.cooked_beef, 1, 0), 0.05f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); + }, + template -> { + AlleleHelper.instance.set(template, SPEED, Speed.SLOW); + AlleleHelper.instance.set(template, HUMIDITY_TOLERANCE, Tolerance.BOTH_2); + AlleleHelper.instance.set(template, EFFECT, AlleleEffect.effectFertile); + AlleleHelper.instance.set(template, TERRITORY, Territory.LARGE); + AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTER); + AlleleHelper.instance.set(template, FLOWER_PROVIDER, Flowers.WHEAT); + AlleleHelper.instance.set(template, FLOWERING, Flowering.FASTER); + + }, + dis -> dis.registerMutation(getSpecies(FORESTRY, "Agrarian"), getSpecies(MAGICBEES, "TCBatty"), 10) + ), + ASH(GT_BranchDefinition.ORGANIC, "Ash", true, new Color(0x1e1a18), new Color(0xc6c6c6), + beeSpecies -> { + beeSpecies.addProduct(GT_ModHandler.getModItem("ExtraBees", "honeyComb", 1, 9), 0.15f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.ASH), 0.15f); + beeSpecies.setHumidity(ARID); + beeSpecies.setTemperature(HOT); + }, + template -> { + AlleleHelper.instance.set(template, SPEED, Speed.NORMAL); + AlleleHelper.instance.set(template, TERRITORY, Territory.LARGE); + AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTER); + AlleleHelper.instance.set(template, FLOWER_PROVIDER, Flowers.WHEAT); + AlleleHelper.instance.set(template, FLOWERING, Flowering.FASTER); + }, + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(COAL, CLAY, 10); + tMutation.restrictTemperature(HELLISH); + } + ), + APATITE(GT_BranchDefinition.ORGANIC, "Apatite", true, new Color(0xc1c1f6), new Color(0x676784), + beeSpecies -> { + beeSpecies.addProduct(GT_ModHandler.getModItem("ExtraBees", "honeyComb", 1, 9), 0.15f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.APATITE), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(WARM); + }, + template -> { + AlleleHelper.instance.set(template, SPEED, Speed.FASTEST); + AlleleHelper.instance.set(template, LIFESPAN, Lifespan.LONGER); + AlleleHelper.instance.set(template, FLOWER_PROVIDER, Flowers.WHEAT); + AlleleHelper.instance.set(template, FLOWERING, Flowering.FASTER); + AlleleHelper.instance.set(template, FLOWER_PROVIDER, getFlowers(EXTRABEES, "rock")); + }, + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(ASH, COAL, 10); + tMutation.requireResource("blockApatite"); + } + ), + FERTILIZER(GT_BranchDefinition.ORGANIC, "Fertilizer", true, new Color(0x7fcef5), new Color(0x654525), + beeSpecies -> { + beeSpecies.addProduct(GT_ModHandler.getModItem("ExtraBees", "honeyComb", 1, 9), 0.15f); + beeSpecies.addSpecialty(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 1), 0.2f); + beeSpecies.addSpecialty(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1), 0.2f); + beeSpecies.addSpecialty(ItemList.FR_Fertilizer.get(1), 0.3f); + beeSpecies.addSpecialty(ItemList.IC2_Fertilizer.get(1), 0.3f); + beeSpecies.setHumidity(DAMP); + beeSpecies.setTemperature(WARM); + }, + template -> { + AlleleHelper.instance.set(template, SPEED, Speed.FASTEST); + AlleleHelper.instance.set(template, LIFESPAN, Lifespan.LONGER); + AlleleHelper.instance.set(template, FLOWER_PROVIDER, Flowers.WHEAT); + AlleleHelper.instance.set(template, FLOWERING, Flowering.FASTER); + }, + dis -> dis.registerMutation(ASH, APATITE, 8) + ), + + //gems + REDSTONE(GT_BranchDefinition.GEM, "Redstone", true, new Color(0x7D0F0F), new Color(0xD11919), + beeSpecies -> { + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.REDSTONE), 0.15f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.RAREEARTH), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); + }, + template -> AlleleHelper.instance.set(template, SPEED, Speed.SLOWER), + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(FORESTRY, "Industrious"), getSpecies(FORESTRY, "Demonic"), 10); + tMutation.requireResource("blockRedstone"); + } + ), + LAPIS(GT_BranchDefinition.GEM, "Lapis", true, new Color(0x1947D1), new Color(0x476CDA), + 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); + }, + template -> AlleleHelper.instance.set(template, SPEED, Speed.SLOWER), + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(FORESTRY, "Demonic"), getSpecies(FORESTRY, "Imperial"), 10); + tMutation.requireResource("blockLapis"); + } + ), + CERTUS(GT_BranchDefinition.GEM, "CertusQuartz", true, new Color(0x57CFFB), new Color(0xBBEEFF), + 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); + }, + template -> AlleleHelper.instance.set(template, SPEED, Speed.SLOWER), + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(FORESTRY, "Hermitic"), LAPIS, 10); + if (Loader.isModLoaded("appliedenergistics2")) + tMutation.requireResource(GameRegistry.findBlock("appliedenergistics2", "tile.BlockQuartz"), 0); + } + ), + FLUIX(GT_BranchDefinition.GEM, "FluixDust", true, new Color(0xA375FF), new Color(0xB591FF), + beeSpecies -> { + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.FLUIX), 0.15f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); + }, + template -> AlleleHelper.instance.set(template, SPEED, Speed.SLOWER), + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(REDSTONE, LAPIS, 7); + if (Loader.isModLoaded("appliedenergistics2")) + tMutation.requireResource(GameRegistry.findBlock("appliedenergistics2", "tile.BlockFluix"), 0); + } + ), + DIAMOND(GT_BranchDefinition.GEM, "Diamond", false, new Color(0xCCFFFF), new Color(0xA3CCCC), + 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(HOT); + beeSpecies.setHasEffect(); + }, + template -> AlleleHelper.instance.set(template, SPEED, Speed.SLOWER), + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(CERTUS, COAL, 3); + tMutation.requireResource("blockDiamond"); + } + ), + RUBY(GT_BranchDefinition.GEM, "Ruby", false, new Color(0xE6005C), new Color(0xCC0052), + beeSpecies -> { + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.RUBY), 0.15f); + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.REDGARNET), 0.05f); + beeSpecies.setHumidity(DAMP); + beeSpecies.setTemperature(HOT); + }, + template -> AlleleHelper.instance.set(template, SPEED, Speed.SLOWER), + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(REDSTONE, DIAMOND, 5); + tMutation.requireResource("blockRuby"); + } + ), + SAPPHIRE(GT_BranchDefinition.GEM, "Sapphire", true, new Color(0x0033CC), new Color(0x00248F), + 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); + }, + template -> AlleleHelper.instance.set(template, SPEED, Speed.SLOWER), + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(CERTUS, LAPIS, 5); + tMutation.requireResource(GregTech_API.sBlockGem2, 12); + } + ), + OLIVINE(GT_BranchDefinition.GEM, "Olivine", true, new Color(0x248F24), new Color(0xCCFFCC), + beeSpecies -> { + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.OLIVINE), 0.15f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.MAGNESIUM), 0.05f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); + }, + template -> AlleleHelper.instance.set(template, SPEED, Speed.SLOWER), + dis -> dis.registerMutation(CERTUS, getSpecies(FORESTRY, "Ended"), 5) + ), + EMERALD(GT_BranchDefinition.GEM, "Emerald", false, new Color(0x248F24), new Color(0x2EB82E), + beeSpecies -> { + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.EMERALD), 0.15f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.ALUMINIUM), 0.05f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(COLD); + beeSpecies.setHasEffect(); + }, + template -> AlleleHelper.instance.set(template, SPEED, Speed.SLOWER), + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(OLIVINE, DIAMOND, 4); + tMutation.requireResource("blockEmerald"); + } + ), + REDGARNET(GT_BranchDefinition.GEM, "RedGarnet", false, new Color(0xBD4C4C), new Color(0xECCECE), + beeSpecies -> { + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.REDGARNET), 0.15f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.PYROPE), 0.05f); + beeSpecies.setHumidity(DAMP); + beeSpecies.setTemperature(WARM); + beeSpecies.setHasEffect(); + }, + template -> { + AlleleHelper.instance.set(template, SPEED, Speed.FAST); + AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST); + }, + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(DIAMOND, RUBY, 4); + tMutation.requireResource("blockGarnetRed"); + } + ), + YELLOWGARNET(GT_BranchDefinition.GEM, "YellowGarnet", false, new Color(0xA3A341), new Color(0xEDEDCE), + beeSpecies -> { + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.YELLOWGARNET), 0.15f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.GROSSULAR), 0.05f); + beeSpecies.setHumidity(DAMP); + beeSpecies.setTemperature(WARM); + beeSpecies.setHasEffect(); + }, + template -> { + AlleleHelper.instance.set(template, SPEED, Speed.FAST); + AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST); + }, + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(EMERALD, REDGARNET, 3); + tMutation.requireResource("blockGarnetYellow"); + } + ), + FIRESTONE(GT_BranchDefinition.GEM, "Firestone", false, new Color(0xC00000), new Color(0xFF0000), + beeSpecies -> { + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.STONE), 0.30f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.FIRESTONE), 0.15f); + beeSpecies.setHumidity(DAMP); + beeSpecies.setTemperature(WARM); + beeSpecies.setHasEffect(); + }, + template -> { + AlleleHelper.instance.set(template, SPEED, Speed.FAST); + AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST); + AlleleHelper.instance.set(template, NOCTURNAL, true); + }, + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(REDSTONE, RUBY, 4); + tMutation.requireResource("blockFirestone"); + } + ), - } - - @Override - protected void setAlleles(IAllele[] template) { - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.MUSHROOMS); - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.SLOWER); - AlleleHelper.instance.set(template, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.BOTH_1); - AlleleHelper.instance.set(template, EnumBeeChromosome.HUMIDITY_TOLERANCE, EnumAllele.Tolerance.BOTH_1); - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWER_PROVIDER, getFlowers(EXTRABEES, "water")); - } - - @Override - protected void registerMutations() { - IBeeMutationCustom tMutation = registerMutation(getSpecies(FORRESTRY,"Marshy"), CLAY.species, 7); - if (Loader.isModLoaded("TConstruct")) - tMutation.requireResource(GameRegistry.findBlock("TConstruct", "slime.gel"), 1); - } - }, - PEAT(GT_BranchDefinition.ORGANIC, "Peat", true, 0x906237, 0x58300B) { - @Override - protected void setSpeciesProperties(GT_AlleleBeeSpecies beeSpecies) { - beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.LIGNIE), 0.30f); - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 0), 0.15f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "peat", 1, 0), 0.15f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "mulch", 1, 0), 0.05f); - beeSpecies.setHumidity(EnumHumidity.NORMAL); - beeSpecies.setTemperature(EnumTemperature.NORMAL); - } - - @Override - protected void setAlleles(IAllele[] template) { - AlleleHelper.instance.set(template, EnumBeeChromosome.SPEED, EnumAllele.Speed.SLOWER); - AlleleHelper.instance.set(template, EnumBeeChromosome.LIFESPAN, EnumAllele.Lifespan.SHORTER); - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.WHEAT); - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.FASTER); - AlleleHelper.instance.set(template, EnumBeeChromosome.HUMIDITY_TOLERANCE, EnumAllele.Tolerance.NONE); - } - - @Override - protected void registerMutations() { - IBeeMutationCustom tMutation = registerMutation(getSpecies(FORRESTRY,"Rural"), CLAY.species, 10); - } - }, - STICKYRESIN(GT_BranchDefinition.ORGANIC, "StickyResin", true, 0x2E8F5B, 0xDCC289) { - @Override - protected void setSpeciesProperties(GT_AlleleBeeSpecies beeSpecies) { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 0), 0.30f); - beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.STICKY), 0.15f); - beeSpecies.addSpecialty(ItemList.IC2_Resin.get(1), 0.15f); - beeSpecies.setHumidity(EnumHumidity.NORMAL); - beeSpecies.setTemperature(EnumTemperature.NORMAL); - } - - @Override - protected void setAlleles(IAllele[] template) { - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.SLOWER); - AlleleHelper.instance.set(template, EnumBeeChromosome.HUMIDITY_TOLERANCE, EnumAllele.Tolerance.NONE); - } - - @Override - protected void registerMutations() { - IBeeMutationCustom tMutation = registerMutation(SLIMEBALL.species, PEAT.species, 15); - tMutation.requireResource("logRubber"); - } - }, - COAL(GT_BranchDefinition.ORGANIC, "Coal", true, 0x666666, 0x525252) { - @Override - protected void setSpeciesProperties(GT_AlleleBeeSpecies 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 - protected void setAlleles(IAllele[] template) { - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.CACTI); - AlleleHelper.instance.set(template, EnumBeeChromosome.SPEED, EnumAllele.Speed.SLOWEST); - AlleleHelper.instance.set(template, EnumBeeChromosome.LIFESPAN, EnumAllele.Lifespan.LONGER); - AlleleHelper.instance.set(template, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.DOWN_2); - AlleleHelper.instance.set(template, EnumBeeChromosome.HUMIDITY_TOLERANCE, EnumAllele.Tolerance.DOWN_1); - AlleleHelper.instance.set(template, EnumBeeChromosome.NOCTURNAL, true); - AlleleHelper.instance.set(template, EnumBeeChromosome.EFFECT, AlleleEffect.effectCreeper); - } - - @Override - protected void registerMutations() { - IBeeMutationCustom tMutation = registerMutation(getSpecies(FORRESTRY,"Industrious"), PEAT.species, 9); - tMutation.requireResource("blockCoal"); - } - }, - OIL(GT_BranchDefinition.ORGANIC, "Oil", true, 0x4C4C4C, 0x333333) { - @Override - protected void setSpeciesProperties(GT_AlleleBeeSpecies beeSpecies) { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 0), 0.30f); - beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.OIL), 0.15f); - beeSpecies.setHumidity(EnumHumidity.DAMP); - beeSpecies.setTemperature(EnumTemperature.NORMAL); - beeSpecies.setHasEffect(); - } - - @Override - protected void setAlleles(IAllele[] template) { - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.SLOWER); - AlleleHelper.instance.set(template, EnumBeeChromosome.NOCTURNAL, true); - AlleleHelper.instance.set(template, EnumBeeChromosome.LIFESPAN, EnumAllele.Lifespan.NORMAL); - AlleleHelper.instance.set(template, EnumBeeChromosome.SPEED, EnumAllele.Speed.SLOWER); - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWER_PROVIDER, getFlowers(EXTRABEES, "water")); - AlleleHelper.instance.set(template, EnumBeeChromosome.TEMPERATURE_TOLERANCE, EnumAllele.Tolerance.NONE); - AlleleHelper.instance.set(template, EnumBeeChromosome.HUMIDITY_TOLERANCE, EnumAllele.Tolerance.NONE); - - } - - @Override - protected void registerMutations() { - IBeeMutationCustom tMutation = registerMutation(COAL.species, STICKYRESIN.species, 4); - } - }, - SANDWICH(GT_BranchDefinition.ORGANIC, "Sandwich", true, 0x32CD32, 0xDAA520) { - @Override - protected void setSpeciesProperties(GT_AlleleBeeSpecies beeSpecies) { - beeSpecies.addProduct(GT_ModHandler.getModItem("ExtraBees", "honeyComb", 1, 9), 0.15f); - beeSpecies.addSpecialty(ItemList.Food_Sliced_Cucumber.get(1), 0.05f); - beeSpecies.addSpecialty(ItemList.Food_Sliced_Onion.get(1), 0.05f); - beeSpecies.addSpecialty(ItemList.Food_Sliced_Tomato.get(1), 0.05f); - beeSpecies.addSpecialty(ItemList.Food_Sliced_Cheese.get(1), 0.05f); - beeSpecies.addSpecialty(new ItemStack(Items.cooked_porkchop, 1, 0), 0.05f); - beeSpecies.addSpecialty(new ItemStack(Items.cooked_beef, 1, 0), 0.05f); - beeSpecies.setHumidity(EnumHumidity.NORMAL); - beeSpecies.setTemperature(EnumTemperature.NORMAL); - } - - @Override - protected void setAlleles(IAllele[] template) { - AlleleHelper.instance.set(template, EnumBeeChromosome.SPEED, EnumAllele.Speed.SLOW); - AlleleHelper.instance.set(template, EnumBeeChromosome.HUMIDITY_TOLERANCE, EnumAllele.Tolerance.BOTH_2); - AlleleHelper.instance.set(template, EnumBeeChromosome.EFFECT, AlleleEffect.effectFertile); - AlleleHelper.instance.set(template, EnumBeeChromosome.TERRITORY, EnumAllele.Territory.LARGE); - AlleleHelper.instance.set(template, EnumBeeChromosome.LIFESPAN, EnumAllele.Lifespan.SHORTER); - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.WHEAT); - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.FASTER); - - } - - @Override - protected void registerMutations() { - IBeeMutationCustom tMutation = registerMutation(getSpecies(FORRESTRY,"Agrarian"), getSpecies(MAGICBEES,"TCBatty"), 10); - } - }, - ASH(GT_BranchDefinition.ORGANIC, "Ash", true, 0x1e1a18, 0xc6c6c6) { - @Override - protected void setSpeciesProperties(GT_AlleleBeeSpecies beeSpecies) { - beeSpecies.addProduct(GT_ModHandler.getModItem("ExtraBees", "honeyComb", 1, 9), 0.15f); - beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.ASH), 0.15f); - beeSpecies.setHumidity(EnumHumidity.ARID); - beeSpecies.setTemperature(EnumTemperature.HOT); - } - - @Override - protected void setAlleles(IAllele[] template) { - AlleleHelper.instance.set(template, EnumBeeChromosome.SPEED, EnumAllele.Speed.NORMAL); - AlleleHelper.instance.set(template, EnumBeeChromosome.TERRITORY, EnumAllele.Territory.LARGE); - AlleleHelper.instance.set(template, EnumBeeChromosome.LIFESPAN, EnumAllele.Lifespan.SHORTER); - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.WHEAT); - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.FASTER); - } - - @Override - protected void registerMutations() { - IBeeMutationCustom tMutation = registerMutation(COAL.species, CLAY.species, 10); - tMutation.restrictTemperature(EnumTemperature.HELLISH); - } - }, - APATITE(GT_BranchDefinition.ORGANIC, "Apatite", true, 0xc1c1f6, 0x676784) { - @Override - protected void setSpeciesProperties(GT_AlleleBeeSpecies beeSpecies) { - beeSpecies.addProduct(GT_ModHandler.getModItem("ExtraBees", "honeyComb", 1, 9), 0.15f); - beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.APATITE), 0.15f); - beeSpecies.setHumidity(EnumHumidity.NORMAL); - beeSpecies.setTemperature(EnumTemperature.WARM); - } - - @Override - protected void setAlleles(IAllele[] template) { - AlleleHelper.instance.set(template, EnumBeeChromosome.SPEED, EnumAllele.Speed.FASTEST); - AlleleHelper.instance.set(template, EnumBeeChromosome.LIFESPAN, EnumAllele.Lifespan.LONGER); - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWER_PROVIDER, EnumAllele.Flowers.WHEAT); - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWERING, EnumAllele.Flowering.FASTER); - AlleleHelper.instance.set(template, EnumBeeChromosome.FLOWER_PROVIDER, getFlowers(EXTRABEES, "rock")); - } - - @Override - protected void registerMutations() { - IBeeMutationCustom tMutation = registerMutation(ASH.species, COAL.species, 10); - tMutation.requireResource("blockApatite"); - } - }, - - FERTILIZER(GT_BranchDefinition.ORGANIC, "Fertilizer", true, 0x7fcef5, 0x654525) { - @Override - protected void setSpeciesProperties(GT_AlleleBeeSpecies beeSpecies) { - beeSpecies.addProduct(GT_ModHandler.getModItem("ExtraBees", "honeyComb", 1, 9), 0.15f); - beeSpecies.addSpecialty(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 1), 0.2f); - beeSpecies.addSpecialty(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1), 0.2f); - beeSpecies.addSpecialty(ItemList.FR_Fertilizer.get(1), 0.3f); - beeSpecies.addSpecialty(ItemList.IC2_Fertilizer.get(1), 0.3f); - beeSpecies.setHumidity(EnumHumidity.DAMP); - beeSpecies.setTemperature(EnumTemperature.WARM); - } + //Metal Line + COPPER(GT_BranchDefinition.METAL, "Copper", true, new Color(0xFF6600), new Color(0xE65C00), + beeSpecies -> { + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.COPPER), 0.15f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.GOLD), 0.05f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); + }, + template -> AlleleHelper.instance.set(template, SPEED, Speed.SLOWER), + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(FORESTRY, "Majestic"), CLAY, 13); + tMutation.requireResource("blockCopper"); + } + ), + TIN(GT_BranchDefinition.METAL, "Tin", true, new Color(0xD4D4D4), new Color(0xDDDDDD), + beeSpecies -> { + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.TIN), 0.15f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.ZINC), 0.05f); + beeSpecies.setHumidity(EnumHumidity.NORMAL); + beeSpecies.setTemperature(EnumTemperature.NORMAL); + }, + template -> AlleleHelper.instance.set(template, SPEED, Speed.SLOWER), + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(CLAY, getSpecies(FORESTRY, "Diligent"), 13); + tMutation.requireResource("blockTin"); + } + ), + LEAD(GT_BranchDefinition.METAL, "Lead", true, new Color(0x666699), new Color(0xA3A3CC), + beeSpecies -> { + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SLAG), 0.30f); + beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.LEAD), 0.15f); + beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.SULFUR), 0.05f); + beeSpecies.setHumidity(DAMP); + beeSpecies.setTemperature(WARM); + }, + template -> AlleleHelper.instance.set(template, SPEED, Speed.SLOWER), + dis -> { + IBeeMutationCustom tMutation = dis.registerMutation(COAL, COPPER, 13); + tMutation.requireResource("blockLead"); + } + ), + IRON(GT_BranchDefinition.M |
