Compare commits

..
37 Commits
Author SHA1 Message Date
ah-OOG-ah 3cd4c9a934 Update en_US.lang 2024-09-29 23:08:23 -04:00
ah-OOG-ah abcdd2e9fa Spotless 2024-09-29 19:14:10 -04:00
ah-OOG-ah 4566fef4cb Remove gross reflection 2024-09-29 19:14:10 -04:00
ah-OOG-ah 533b41cae8 Remove unused item classes 2024-09-29 19:14:10 -04:00
ah-OOG-ah afa0cbe790 Move drop items 2024-09-29 19:14:10 -04:00
ah-OOG-ah e0b90f69e0 Move comb items 2024-09-29 19:14:10 -04:00
ah-OOG-ah fe53e964c1 Move Propolis 2024-09-29 19:14:10 -04:00
ah-OOG-ah 822920d3b2 Move ET food 2024-09-29 19:14:10 -04:00
ah-OOG-ah c34ab342d9 Move Botany items 2024-09-29 19:14:10 -04:00
ah-OOG-ah 3f3443a374 Move initialization 2024-09-29 19:14:10 -04:00
ah-OOG-ah 43d06a9ba0 Remove empty methods 2024-09-29 19:14:10 -04:00
ah-OOG-ah 59534a05cf Fix broken langs in ExtraTrees 2024-09-29 19:14:10 -04:00
ah-OOG-ah 77068b106d Add default methods for some blocks 2024-09-29 19:14:10 -04:00
ah-OOG-ah 983bd25f7a Replace ExtraBees items 2024-09-29 19:14:10 -04:00
ah-OOG-ah 37fda09964 Load non-damage ET items 2024-09-29 19:14:10 -04:00
ah-OOG-ah ce71fe4912 Move init 2024-09-29 19:14:10 -04:00
ah-OOG-ah 033f536462 De-enum GeneticsItems, create ETItems 2024-09-29 19:14:10 -04:00
ah-OOG-ah 27c13f7758 Localise damage items 2024-09-29 19:14:10 -04:00
ah-OOG-ah 04c68468e5 Remap Genetics to genetics 2024-09-29 19:14:10 -04:00
ah-OOG-ah 004f38a782 Fix genetics item registration
However, now textures are screwed because Binnie made doesn't have consistent capitalization.
2024-09-29 19:14:10 -04:00
ah-OOG-ah aea58b0b65 Spotless 2024-09-29 19:14:10 -04:00
ah-OOG-ah 1bc0567b4a Replace GeneticsItems 2024-09-29 19:14:10 -04:00
ah-OOG-ah 882b9c3964 Remove redundant methods 2024-09-29 19:14:10 -04:00
ah-OOG-ah b61fff5691 Move simple Genetics items to enum 2024-09-29 19:14:10 -04:00
ah-OOG-ah 1a3b24c589 Remove unused GUI factory 2024-09-29 19:13:17 -04:00
ah-OOG-ah d77c705d54 Spotless 2024-09-26 19:18:43 -04:00
ah-OOG-ah 3222bf35ca Register EBConfig and add ranges 2024-09-26 19:18:19 -04:00
ah-OOG-ah 56c2e72748 Remove module configs
We don't support disabling parts
2024-09-26 17:33:07 -04:00
ah-OOG-ah 0f2e6bd76e Yeet the config system 2024-09-26 14:27:48 -04:00
ah-OOG-ah 880f952d0f Actually remove the last config 2024-09-26 14:27:48 -04:00
ah-OOG-ah 5db9be848f Remove the last config 2024-09-26 14:27:48 -04:00
ah-OOG-ah 57345f4daa I may be dense 2024-09-26 14:27:48 -04:00
ah-OOG-ah ccd425de9d Migrate ExtraBees config
Needs testing in prod
2024-09-26 14:27:48 -04:00
ah-OOG-ah df042779de Actually plug in the config class
Although I'm not sure that child mods are handled correctly.
2024-09-26 14:27:48 -04:00
ah-OOG-ah 162ac5a46c Move ExtraTrees to NHLib config 2024-09-26 14:27:48 -04:00
ah-OOG-ah 1077567cc3 Yeet empty config file 2024-09-26 14:27:48 -04:00
ah-OOG-ah a5ac246a28 Delete a bunch of unused code
Passes the scream test, at least without binnie-specific tests
2024-09-26 14:27:48 -04:00
185 changed files with 2697 additions and 3886 deletions

No files matched your search

+2 -2
View File
@@ -2,9 +2,9 @@
dependencies {
api('com.github.GTNewHorizons:ForestryMC:4.9.16:dev')
implementation('com.github.GTNewHorizons:GTNHLib:0.5.20:dev')
implementation('com.github.GTNewHorizons:GTNHLib:0.5.11:dev')
devOnlyNonPublishable('com.github.GTNewHorizons:NotEnoughItems:2.6.44-GTNH:dev')
devOnlyNonPublishable('com.github.GTNewHorizons:NotEnoughItems:2.6.38-GTNH:dev')
compileOnly('com.github.GTNewHorizons:BuildCraft:7.1.39:api')
compileOnly('net.industrial-craft:industrialcraft-2:2.2.828-experimental:dev')
+1 -1
View File
@@ -17,5 +17,5 @@ pluginManagement {
}
plugins {
id 'com.gtnewhorizons.gtnhsettingsconvention' version '1.0.29'
id 'com.gtnewhorizons.gtnhsettingsconvention' version '1.0.27'
}
-4
View File
@@ -5,19 +5,15 @@ import java.util.List;
import binnie.core.ManagerBase;
import binnie.core.genetics.ManagerGenetics;
import binnie.core.item.ManagerItem;
import binnie.core.liquid.ManagerLiquid;
import binnie.core.machines.ManagerMachine;
import binnie.core.mod.config.ManagerConfig;
import binnie.core.resource.ManagerResource;
public final class Binnie {
public static List<ManagerBase> Managers = new ArrayList<>();
public static ManagerGenetics Genetics = new ManagerGenetics();
public static ManagerConfig Configuration = new ManagerConfig();
public static ManagerLiquid Liquid = new ManagerLiquid();
public static ManagerMachine Machine = new ManagerMachine();
public static ManagerItem Item = new ManagerItem();
public static ManagerResource Resource = new ManagerResource();
}
+33 -33
View File
@@ -1,8 +1,9 @@
package binnie.botany;
import static binnie.botany.items.BotanyItems.misc;
import net.minecraft.block.Block;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
@@ -20,28 +21,20 @@ import binnie.botany.ceramic.BlockCeramicPatterned;
import binnie.botany.ceramic.BlockStained;
import binnie.botany.core.BotanyCore;
import binnie.botany.core.BotanyGUI;
import binnie.botany.core.ModuleCore;
import binnie.botany.flower.BlockFlower;
import binnie.botany.flower.ItemFlower;
import binnie.botany.flower.ItemInsulatedTube;
import binnie.botany.flower.TileEntityFlower;
import binnie.botany.gardening.BlockPlant;
import binnie.botany.gardening.BlockSoil;
import binnie.botany.gardening.Gardening;
import binnie.botany.gardening.ItemSoilMeter;
import binnie.botany.gardening.ItemTrowel;
import binnie.botany.gardening.ModuleGardening;
import binnie.botany.genetics.ItemDictionary;
import binnie.botany.genetics.ModuleGenetics;
import binnie.botany.items.ItemClay;
import binnie.botany.items.ItemPigment;
import binnie.botany.items.BotanyItems;
import binnie.botany.network.PacketID;
import binnie.botany.proxy.Proxy;
import binnie.core.AbstractMod;
import binnie.core.BinnieCore;
import binnie.core.Tags;
import binnie.core.gui.IBinnieGUID;
import binnie.core.item.ItemMisc;
import binnie.core.network.BinniePacketHandler;
import binnie.core.network.IPacketID;
import binnie.core.proxy.IProxyCore;
@@ -49,14 +42,24 @@ import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLInterModComms;
import cpw.mods.fml.common.event.FMLMissingMappingsEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.eventhandler.Event;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.registry.GameRegistry;
@Mod(modid = "Botany", name = "Botany", version = Tags.VERSION, useMetadata = true, dependencies = "after:BinnieCore")
@Mod(
modid = Botany.BOTANY_MODID,
name = Botany.BOTANY_MODNAME,
version = Tags.VERSION,
useMetadata = true,
dependencies = "after:BinnieCore")
public class Botany extends AbstractMod {
public static final String BOTANY_MODID = "botany";
public static final String BOTANY_MODNAME = "Botany";
@Mod.Instance("Botany")
public static Botany instance;
@@ -64,27 +67,13 @@ public class Botany extends AbstractMod {
public static Proxy proxy;
public static BlockFlower flower;
public static Item seed;
public static Item pollen;
public static ItemDictionary database;
public static BlockPlant plant;
public static ItemTrowel trowelWood;
public static ItemTrowel trowelStone;
public static ItemTrowel trowelIron;
public static ItemTrowel trowelDiamond;
public static ItemTrowel trowelGold;
public static BlockSoil soil;
public static BlockSoil loam;
public static BlockSoil flowerbed;
public static BlockSoil soilNoWeed;
public static BlockSoil loamNoWeed;
public static BlockSoil flowerbedNoWeed;
public static ItemInsulatedTube insulatedTube;
public static ItemSoilMeter soilMeter;
public static ItemMisc misc;
public static ItemFlower flowerItem;
public static ItemPigment pigment;
public static ItemClay clay;
public static BlockCeramic ceramic;
public static BlockCeramicPatterned ceramicTile;
public static BlockStained stained;
@@ -96,7 +85,10 @@ public class Botany extends AbstractMod {
@Mod.EventHandler
public void preInit(FMLPreInitializationEvent event) {
addModule(new ModuleCore());
// Loads BotanyItems.class, guaranteeing that items are init by this point
// TODO: is this needed?
misc.getUnlocalizedName();
addModule(new ModuleGenetics());
addModule(new ModuleGardening());
preInit();
@@ -112,6 +104,19 @@ public class Botany extends AbstractMod {
postInit();
}
@Mod.EventHandler
public void missingMappings(FMLMissingMappingsEvent event) {
for (FMLMissingMappingsEvent.MissingMapping m : event.getAll()) {
final String[] name = m.name.split(":");
if (name.length < 2) continue;
if (name[0].equals("Botany")) {
if (m.type == GameRegistry.Type.BLOCK) m.remap(GameRegistry.findBlock(BOTANY_MODID, name[1]));
else m.remap(GameRegistry.findItem(BOTANY_MODID, name[1]));
}
}
}
@Override
public IBinnieGUID[] getGUIDs() {
return BotanyGUI.values();
@@ -134,7 +139,7 @@ public class Botany extends AbstractMod {
@Override
public String getModID() {
return "botany";
return BOTANY_MODID;
}
@Override
@@ -158,7 +163,7 @@ public class Botany extends AbstractMod {
}
if (event.entityPlayer != null && event.entityPlayer.getHeldItem() != null
&& event.entityPlayer.getHeldItem().getItem() == Botany.pollen) {
&& event.entityPlayer.getHeldItem().getItem() == BotanyItems.pollen) {
TileEntity tile = event.world.getTileEntity(event.x, event.y, event.z);
if (tile instanceof TileEntityFlower tileFlower) {
IFlower pollen = BotanyCore.getFlowerRoot().getMember(event.entityPlayer.getHeldItem());
@@ -303,11 +308,6 @@ public class Botany extends AbstractMod {
}
}
@Override
public boolean isActive() {
return BinnieCore.isBotanyActive();
}
@Mod.EventHandler
public void onIMC(FMLInterModComms.IMCEvent event) {
for (FMLInterModComms.IMCMessage message : event.getMessages()) {
@@ -16,7 +16,6 @@ import net.minecraft.util.IIcon;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
import binnie.botany.Botany;
import binnie.botany.CreativeTabBotany;
@@ -65,16 +64,6 @@ public class BlockCeramic extends Block implements IBlockMetadata {
return tileentity != null && tileentity.receiveClientEvent(eventId, eventType);
}
@Override
public int getPlacedMeta(ItemStack itemStack, World world, int x, int y, int z, ForgeDirection direction) {
return TileEntityMetadata.getItemDamage(itemStack);
}
@Override
public int getDroppedMeta(int blockMeta, int tileMeta) {
return tileMeta;
}
@Override
public String getBlockName(ItemStack itemStack) {
return I18N.localise("botany.ceramicBlock");
@@ -1,5 +1,7 @@
package binnie.botany.ceramic;
import static binnie.botany.items.BotanyMisc.Items.Mortar;
import java.util.ArrayList;
import java.util.List;
@@ -16,7 +18,6 @@ import net.minecraft.util.IIcon;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
import binnie.botany.Botany;
import binnie.botany.CreativeTabBotany;
@@ -73,16 +74,6 @@ public class BlockCeramicBrick extends Block implements IBlockMetadata, IMultipa
return tileentity != null && tileentity.receiveClientEvent(eventId, eventType);
}
@Override
public int getPlacedMeta(ItemStack itemStack, World world, int x, int y, int z, ForgeDirection direction) {
return TileEntityMetadata.getItemDamage(itemStack);
}
@Override
public int getDroppedMeta(int blockMeta, int tileMeta) {
return tileMeta;
}
@Override
public String getBlockName(ItemStack itemStack) {
int meta = TileEntityMetadata.getItemDamage(itemStack);
@@ -484,7 +475,7 @@ public class BlockCeramicBrick extends Block implements IBlockMetadata, IMultipa
}
private boolean isMortar(ItemStack stack) {
return stack.getItem() == Botany.misc && stack.getItemDamage() == BotanyItems.Mortar.ordinal();
return stack.getItem() == BotanyItems.misc && stack.getItemDamage() == Mortar.ordinal();
}
}
@@ -95,16 +95,6 @@ public class BlockStained extends Block implements IBlockMetadata {
return tileentity != null && tileentity.receiveClientEvent(eventId, eventType);
}
@Override
public int getPlacedMeta(ItemStack itemStack, World world, int x, int y, int z, ForgeDirection direction) {
return TileEntityMetadata.getItemDamage(itemStack);
}
@Override
public int getDroppedMeta(int blockMeta, int tileMeta) {
return tileMeta;
}
@Override
public String getBlockName(ItemStack itemStack) {
return I18N.localise("botany.pigmentedGlass");
@@ -1,5 +1,7 @@
package binnie.botany.ceramic;
import static binnie.botany.items.BotanyMisc.Items.Mortar;
import java.util.HashMap;
import java.util.Map;
@@ -10,7 +12,6 @@ import net.minecraft.util.IIcon;
import binnie.botany.Botany;
import binnie.botany.genetics.EnumFlowerColor;
import binnie.botany.items.BotanyItems;
import binnie.core.AbstractMod;
import binnie.core.BinnieCore;
import binnie.extratrees.api.IDesignMaterial;
@@ -96,7 +97,7 @@ public class CeramicDesignSystem implements IDesignSystem {
@Override
public ItemStack getAdhesive() {
return BotanyItems.Mortar.get(1);
return Mortar.get(1);
}
@Override
@@ -10,6 +10,7 @@ import net.minecraft.item.crafting.IRecipe;
import net.minecraft.world.World;
import binnie.botany.Botany;
import binnie.botany.items.BotanyItems;
public class CeramicTileRecipe implements IRecipe {
@@ -26,7 +27,7 @@ public class CeramicTileRecipe implements IRecipe {
Item ceramicBlock = Item.getItemFromBlock(Botany.ceramic);
Item ceramicTile = Item.getItemFromBlock(Botany.ceramicTile);
Item ceramicBrick = Item.getItemFromBlock(Botany.ceramicBrick);
Item mortar = Botany.misc;
Item mortar = BotanyItems.misc;
List<ItemStack> stacks = new ArrayList<>();
int ix = -1;
int iy = -1;
@@ -6,8 +6,8 @@ import net.minecraft.item.crafting.IRecipe;
import net.minecraft.world.World;
import binnie.Binnie;
import binnie.botany.Botany;
import binnie.botany.api.IFlower;
import binnie.botany.items.BotanyItems;
public class PigmentRecipe implements IRecipe {
@@ -47,7 +47,7 @@ public class PigmentRecipe implements IRecipe {
IFlower flower = Binnie.Genetics.getFlowerRoot().getMember(crafting.getStackInSlot(i));
if (flower.getAge() >= 1) {
stack = new ItemStack(Botany.pigment, 1, flower.getGenome().getPrimaryColor().getID());
stack = new ItemStack(BotanyItems.pigment, 1, flower.getGenome().getPrimaryColor().getID());
}
}
}
@@ -1,21 +0,0 @@
package binnie.botany.core;
import binnie.core.IInitializable;
public class ModuleCore implements IInitializable {
@Override
public void preInit() {
// ignored
}
@Override
public void init() {
// ignored
}
@Override
public void postInit() {
// ignored
}
}
@@ -27,6 +27,7 @@ import binnie.botany.genetics.EnumFlowerType;
import binnie.botany.genetics.Flower;
import binnie.core.BinnieCore;
import binnie.core.util.I18N;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import forestry.api.genetics.IIndividual;
@@ -39,6 +40,8 @@ public abstract class ItemBotany extends Item {
setCreativeTab(CreativeTabBotany.instance);
setUnlocalizedName(name);
hasSubtypes = true;
GameRegistry.registerItem(this, name);
}
@Override
@@ -13,6 +13,7 @@ import net.minecraft.util.IIcon;
import binnie.botany.Botany;
import binnie.botany.CreativeTabBotany;
import binnie.core.util.I18N;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -21,10 +22,14 @@ public class ItemInsulatedTube extends Item {
IIcon[] icons;
public ItemInsulatedTube() {
final String name = "insulatedTube";
icons = new IIcon[3];
setUnlocalizedName("insulatedTube");
setUnlocalizedName(name);
setCreativeTab(CreativeTabBotany.instance);
setHasSubtypes(true);
GameRegistry.registerItem(this, name);
}
public static ItemStack getInsulateStack(ItemStack stack) {
@@ -1,5 +1,7 @@
package binnie.botany.gardening;
import static binnie.botany.items.BotanyMisc.Items.Weedkiller;
import java.util.Collection;
import java.util.LinkedHashMap;
import java.util.Map;
@@ -22,7 +24,6 @@ import binnie.botany.api.EnumSoilType;
import binnie.botany.api.IFlower;
import binnie.botany.api.gardening.IBlockSoil;
import binnie.botany.flower.TileEntityFlower;
import binnie.botany.items.BotanyItems;
import binnie.core.BinnieCore;
import forestry.api.core.EnumTemperature;
@@ -263,7 +264,7 @@ public class Gardening {
}
public static boolean isWeedkiller(ItemStack heldItem) {
return heldItem != null && heldItem.isItemEqual(BotanyItems.Weedkiller.get(1));
return heldItem != null && heldItem.isItemEqual(Weedkiller.get(1));
}
public static boolean addWeedKiller(World world, int x, int y, int z) {
@@ -19,15 +19,20 @@ import binnie.botany.api.gardening.IBlockSoil;
import binnie.core.BinnieCore;
import binnie.core.util.I18N;
import binnie.genetics.genetics.AlleleHelper;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class ItemSoilMeter extends Item {
public ItemSoilMeter() {
final String name = "soilMeter";
setCreativeTab(CreativeTabBotany.instance);
setUnlocalizedName("soilMeter");
setUnlocalizedName(name);
setMaxStackSize(1);
GameRegistry.registerItem(this, name);
}
@Override
@@ -13,21 +13,25 @@ import binnie.botany.CreativeTabBotany;
import binnie.botany.api.EnumAcidity;
import binnie.botany.api.EnumMoisture;
import binnie.botany.api.EnumSoilType;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class ItemTrowel extends Item {
protected Item.ToolMaterial theToolMaterial;
String locName;
final String locName;
public ItemTrowel(Item.ToolMaterial toolMaterial, String material) {
locName = "trowel" + material;
theToolMaterial = toolMaterial;
maxStackSize = 1;
setMaxDamage(toolMaterial.getMaxUses());
setCreativeTab(CreativeTabBotany.instance);
setUnlocalizedName("trowel" + material);
locName = "trowel" + material;
setUnlocalizedName(locName);
GameRegistry.registerItem(this, locName);
}
@Override
@@ -1,5 +1,14 @@
package binnie.botany.gardening;
import static binnie.botany.items.BotanyMisc.Items.AshPowder;
import static binnie.botany.items.BotanyMisc.Items.CompostPowder;
import static binnie.botany.items.BotanyMisc.Items.FertiliserPowder;
import static binnie.botany.items.BotanyMisc.Items.Mortar;
import static binnie.botany.items.BotanyMisc.Items.MulchPowder;
import static binnie.botany.items.BotanyMisc.Items.PulpPowder;
import static binnie.botany.items.BotanyMisc.Items.SulphurPowder;
import static binnie.botany.items.BotanyMisc.Items.Weedkiller;
import java.util.HashMap;
import java.util.Map;
@@ -12,9 +21,7 @@ import net.minecraftforge.oredict.RecipeSorter;
import net.minecraftforge.oredict.ShapedOreRecipe;
import net.minecraftforge.oredict.ShapelessOreRecipe;
import binnie.Binnie;
import binnie.botany.Botany;
import binnie.botany.CreativeTabBotany;
import binnie.botany.api.EnumAcidity;
import binnie.botany.api.EnumMoisture;
import binnie.botany.api.EnumSoilType;
@@ -28,8 +35,6 @@ import binnie.botany.farm.CircuitGarden;
import binnie.botany.flower.ItemInsulatedTube;
import binnie.botany.genetics.EnumFlowerColor;
import binnie.botany.items.BotanyItems;
import binnie.botany.items.ItemClay;
import binnie.botany.items.ItemPigment;
import binnie.core.BinnieCore;
import binnie.core.IInitializable;
import binnie.core.Mods;
@@ -68,17 +73,6 @@ public class ModuleGardening implements IInitializable {
Botany.flowerbedNoWeed = new BlockSoil(EnumSoilType.FLOWERBED, "flowerbedNoWeed", true);
GameRegistry.registerBlock(Botany.flowerbedNoWeed, ItemSoil.class, "flowerbedNoWeed");
Botany.soilMeter = new ItemSoilMeter();
Botany.insulatedTube = new ItemInsulatedTube();
Botany.trowelWood = new ItemTrowel(Item.ToolMaterial.WOOD, "Wood");
Botany.trowelStone = new ItemTrowel(Item.ToolMaterial.STONE, "Stone");
Botany.trowelIron = new ItemTrowel(Item.ToolMaterial.IRON, "Iron");
Botany.trowelDiamond = new ItemTrowel(Item.ToolMaterial.EMERALD, "Diamond");
Botany.trowelGold = new ItemTrowel(Item.ToolMaterial.GOLD, "Gold");
Botany.misc = Binnie.Item.registerMiscItems(BotanyItems.values(), CreativeTabBotany.instance);
Botany.pigment = new ItemPigment();
Botany.clay = new ItemClay();
Botany.ceramic = new BlockCeramic();
GameRegistry.registerBlock(Botany.ceramic, ItemMetadata.class, "ceramic");
BinnieCore.proxy.registerCustomItemRenderer(Item.getItemFromBlock(Botany.ceramic), new ItemMetadataRenderer());
@@ -100,7 +94,7 @@ public class ModuleGardening implements IInitializable {
@Override
public void init() {
OreDictionary.registerOre("pigment", Botany.pigment);
OreDictionary.registerOre("pigment", BotanyItems.pigment);
RecipeSorter.register("botany:ceramictile", CeramicTileRecipe.class, RecipeSorter.Category.SHAPED, "");
RecipeSorter.register("botany:pigment", PigmentRecipe.class, RecipeSorter.Category.SHAPED, "");
ItemStack yellow = new ItemStack(Blocks.yellow_flower, 1);
@@ -121,28 +115,28 @@ public class ModuleGardening implements IInitializable {
null,
manual,
fertilised,
new ItemStack(Botany.insulatedTube, 1, 128 * insulate),
new ItemStack(BotanyItems.insulatedTube, 1, 128 * insulate),
icon);
new CircuitGarden(
moist,
EnumAcidity.ACID,
manual,
fertilised,
new ItemStack(Botany.insulatedTube, 1, 1 + 128 * insulate),
new ItemStack(BotanyItems.insulatedTube, 1, 1 + 128 * insulate),
icon);
new CircuitGarden(
moist,
EnumAcidity.NEUTRAL,
manual,
fertilised,
new ItemStack(Botany.insulatedTube, 1, 2 + 128 * insulate),
new ItemStack(BotanyItems.insulatedTube, 1, 2 + 128 * insulate),
icon);
new CircuitGarden(
moist,
EnumAcidity.ALKALINE,
manual,
fertilised,
new ItemStack(Botany.insulatedTube, 1, 3 + 128 * insulate),
new ItemStack(BotanyItems.insulatedTube, 1, 3 + 128 * insulate),
icon);
}
}
@@ -154,7 +148,7 @@ public class ModuleGardening implements IInitializable {
GameRegistry.addRecipe(new CeramicTileRecipe());
for (int mat = 0; mat < 4; ++mat) {
for (int insulate = 0; insulate < 6; ++insulate) {
ItemStack tubes = new ItemStack(Botany.insulatedTube, 2, mat + 128 * insulate);
ItemStack tubes = new ItemStack(BotanyItems.insulatedTube, 2, mat + 128 * insulate);
ItemStack insulateStack = ItemInsulatedTube.getInsulateStack(tubes);
ItemStack forestryTube = new ItemStack(Mods.forestry.item("thermionicTubes"), 1, mat);
GameRegistry.addShapelessRecipe(tubes, forestryTube, forestryTube, insulateStack);
@@ -182,62 +176,61 @@ public class ModuleGardening implements IInitializable {
GameRegistry.addRecipe(
new ShapedOreRecipe(
Botany.trowelWood,
BotanyItems.trowelWood,
new Object[] { "d ", " x ", " s", 'd', Blocks.dirt, 's', "stickWood", 'x', "plankWood" }));
GameRegistry.addRecipe(
new ShapedOreRecipe(
Botany.trowelStone,
BotanyItems.trowelStone,
new Object[] { "d ", " x ", " s", 'd', Blocks.dirt, 's', "stickWood", 'x', "cobblestone" }));
GameRegistry.addRecipe(
new ShapedOreRecipe(
Botany.trowelIron,
BotanyItems.trowelIron,
new Object[] { "d ", " x ", " s", 'd', Blocks.dirt, 's', "stickWood", 'x', "ingotIron" }));
GameRegistry.addRecipe(
new ShapedOreRecipe(
Botany.trowelGold,
BotanyItems.trowelGold,
new Object[] { "d ", " x ", " s", 'd', Blocks.dirt, 's', "stickWood", 'x', "ingotGold" }));
GameRegistry.addRecipe(
new ShapedOreRecipe(
Botany.trowelDiamond,
BotanyItems.trowelDiamond,
new Object[] { "d ", " x ", " s", 'd', Blocks.dirt, 's', "stickWood", 'x', "gemDiamond" }));
GameRegistry.addRecipe(
new ShapedOreRecipe(
Botany.soilMeter,
BotanyItems.soilMeter,
new Object[] { " gg", " rg", "i ", 'g', "ingotGold", 'r', "dustRedstone", 'i', "ingotIron" }));
GameRegistry.addShapelessRecipe(
BotanyItems.Weedkiller.get(4),
Weedkiller.get(4),
new ItemStack(Items.spider_eye),
new ItemStack(Items.wheat_seeds),
new ItemStack(Items.wheat_seeds),
new ItemStack(Items.wheat_seeds));
GameRegistry.addShapelessRecipe(BotanyItems.AshPowder.get(4), Mods.forestry.stack("ash"));
GameRegistry.addShapelessRecipe(BotanyItems.MulchPowder.get(4), Mods.forestry.stack("mulch"));
GameRegistry.addShapelessRecipe(BotanyItems.CompostPowder.get(4), Mods.forestry.stack("fertilizerBio"));
GameRegistry.addShapelessRecipe(BotanyItems.FertiliserPowder.get(4), Mods.forestry.stack("fertilizerCompound"));
GameRegistry.addShapelessRecipe(BotanyItems.PulpPowder.get(4), Mods.forestry.stack("woodPulp"));
GameRegistry
.addRecipe(new ShapelessOreRecipe(BotanyItems.SulphurPowder.get(4), new Object[] { "dustSulphur" }));
GameRegistry.addShapelessRecipe(AshPowder.get(4), Mods.forestry.stack("ash"));
GameRegistry.addShapelessRecipe(MulchPowder.get(4), Mods.forestry.stack("mulch"));
GameRegistry.addShapelessRecipe(CompostPowder.get(4), Mods.forestry.stack("fertilizerBio"));
GameRegistry.addShapelessRecipe(FertiliserPowder.get(4), Mods.forestry.stack("fertilizerCompound"));
GameRegistry.addShapelessRecipe(PulpPowder.get(4), Mods.forestry.stack("woodPulp"));
GameRegistry.addRecipe(new ShapelessOreRecipe(SulphurPowder.get(4), new Object[] { "dustSulphur" }));
GameRegistry.addRecipe(
new ShapelessOreRecipe(
new ItemStack(Botany.pigment, 2, EnumFlowerColor.BLACK.ordinal()),
new ItemStack(BotanyItems.pigment, 2, EnumFlowerColor.BLACK.ordinal()),
new Object[] { "pigment", "pigment", "dyeBlack" }));
ModuleGardening.queuedAcidFertilisers.put(BotanyItems.SulphurPowder.get(1), 1);
ModuleGardening.queuedAcidFertilisers.put(BotanyItems.MulchPowder.get(1), 1);
ModuleGardening.queuedAcidFertilisers.put(SulphurPowder.get(1), 1);
ModuleGardening.queuedAcidFertilisers.put(MulchPowder.get(1), 1);
ModuleGardening.queuedAcidFertilisers.put(new ItemStack(GameRegistry.findItem("Forestry", "mulch")), 2);
for (ItemStack stack : OreDictionary.getOres("dustSulfur")) {
ModuleGardening.queuedAcidFertilisers.put(stack, 2);
}
ModuleGardening.queuedAlkalineFertilisers.put(BotanyItems.AshPowder.get(1), 1);
ModuleGardening.queuedAlkalineFertilisers.put(BotanyItems.PulpPowder.get(1), 1);
ModuleGardening.queuedAlkalineFertilisers.put(AshPowder.get(1), 1);
ModuleGardening.queuedAlkalineFertilisers.put(PulpPowder.get(1), 1);
ModuleGardening.queuedAlkalineFertilisers.put(new ItemStack(GameRegistry.findItem("Forestry", "ash")), 2);
ModuleGardening.queuedAlkalineFertilisers.put(new ItemStack(GameRegistry.findItem("Forestry", "woodPulp")), 2);
ModuleGardening.queuedNutrientFertilisers.put(BotanyItems.CompostPowder.get(1), 1);
ModuleGardening.queuedNutrientFertilisers.put(BotanyItems.FertiliserPowder.get(1), 1);
ModuleGardening.queuedNutrientFertilisers.put(CompostPowder.get(1), 1);
ModuleGardening.queuedNutrientFertilisers.put(FertiliserPowder.get(1), 1);
ModuleGardening.queuedNutrientFertilisers
.put(new ItemStack(GameRegistry.findItem("Forestry", "fertilizerBio")), 2);
ModuleGardening.queuedNutrientFertilisers
@@ -255,12 +248,11 @@ public class ModuleGardening implements IInitializable {
addNutrientFertiliser(entry.getKey(), entry.getValue());
}
GameRegistry
.addRecipe(BotanyItems.Mortar.get(6), " c ", "cgc", " c ", 'c', Items.clay_ball, 'g', Blocks.gravel);
GameRegistry.addRecipe(Mortar.get(6), " c ", "cgc", " c ", 'c', Items.clay_ball, 'g', Blocks.gravel);
for (EnumFlowerColor c : EnumFlowerColor.values()) {
ItemStack clay = new ItemStack(Botany.clay, 1, c.ordinal());
ItemStack pigment = new ItemStack(Botany.pigment, 1, c.ordinal());
ItemStack clay = new ItemStack(BotanyItems.clay, 1, c.ordinal());
ItemStack pigment = new ItemStack(BotanyItems.pigment, 1, c.ordinal());
GameRegistry.addShapelessRecipe(clay, Items.clay_ball, Items.clay_ball, Items.clay_ball, pigment);
GameRegistry.addSmelting(clay, TileEntityMetadata.getItemStack(Botany.ceramic, c.ordinal()), 0.0f);
ItemStack glass = TileEntityMetadata.getItemStack(Botany.stained, c.ordinal());
@@ -14,7 +14,6 @@ import net.minecraft.world.World;
import com.mojang.authlib.GameProfile;
import binnie.botany.Botany;
import binnie.botany.api.EnumFlowerChromosome;
import binnie.botany.api.EnumFlowerStage;
import binnie.botany.api.IAlleleFlowerSpecies;
@@ -24,6 +23,7 @@ import binnie.botany.api.IFlower;
import binnie.botany.api.IFlowerGenome;
import binnie.botany.api.IFlowerMutation;
import binnie.botany.api.IFlowerRoot;
import binnie.botany.items.BotanyItems;
import forestry.api.genetics.AlleleManager;
import forestry.api.genetics.IAllele;
import forestry.api.genetics.IChromosomeType;
@@ -88,16 +88,16 @@ public class FlowerHelper extends SpeciesRoot implements IFlowerRoot {
return null;
}
Item flowerItem = Botany.flowerItem;
Item flowerItem = BotanyItems.flowerItem;
if (type == EnumFlowerStage.SEED.ordinal()) {
flowerItem = Botany.seed;
flowerItem = BotanyItems.seed;
}
if (type == EnumFlowerStage.POLLEN.ordinal()) {
flowerItem = Botany.pollen;
flowerItem = BotanyItems.pollen;
}
if (flowerItem != Botany.flowerItem) {
if (flowerItem != BotanyItems.flowerItem) {
((IFlower) flower).setAge(0);
}
@@ -113,13 +113,13 @@ public class FlowerHelper extends SpeciesRoot implements IFlowerRoot {
if (stack == null) {
return EnumFlowerStage.NONE;
}
if (stack.getItem() == Botany.flowerItem) {
if (stack.getItem() == BotanyItems.flowerItem) {
return EnumFlowerStage.FLOWER;
}
if (stack.getItem() == Botany.pollen) {
if (stack.getItem() == BotanyItems.pollen) {
return EnumFlowerStage.POLLEN;
}
if (stack.getItem() == Botany.seed) {
if (stack.getItem() == BotanyItems.seed) {
return EnumFlowerStage.SEED;
}
return EnumFlowerStage.NONE;
@@ -14,6 +14,7 @@ import binnie.botany.Botany;
import binnie.botany.CreativeTabBotany;
import binnie.botany.core.BotanyGUI;
import binnie.core.util.I18N;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -22,9 +23,13 @@ public class ItemDictionary extends Item {
protected IIcon iconMaster;
public ItemDictionary() {
final String name = "database";
setCreativeTab(CreativeTabBotany.instance);
setUnlocalizedName("database");
setUnlocalizedName(name);
setMaxStackSize(1);
GameRegistry.registerItem(this, name);
}
@Override
@@ -8,11 +8,9 @@ import binnie.Binnie;
import binnie.botany.Botany;
import binnie.botany.core.BotanyCore;
import binnie.botany.flower.BlockFlower;
import binnie.botany.flower.ItemFlower;
import binnie.botany.flower.ItemPollen;
import binnie.botany.flower.ItemSeed;
import binnie.botany.flower.RendererBotany;
import binnie.botany.flower.TileEntityFlower;
import binnie.botany.items.BotanyItems;
import binnie.core.BinnieCore;
import binnie.core.IInitializable;
import cpw.mods.fml.client.registry.RenderingRegistry;
@@ -30,14 +28,10 @@ public class ModuleGenetics implements IInitializable {
public void preInit() {
EnumFlowerColor.setupMutations();
Botany.flower = new BlockFlower();
Botany.flowerItem = new ItemFlower();
Botany.pollen = new ItemPollen();
Botany.seed = new ItemSeed();
AlleleManager.alleleRegistry.registerSpeciesRoot(BotanyCore.speciesRoot);
AlleleManager.alleleRegistry.registerAllele(ModuleGenetics.alleleEffectNone);
GameRegistry.registerBlock(Botany.flower, "flower");
BinnieCore.proxy.registerTileEntity(TileEntityFlower.class, "botany.tile.flower", null);
Botany.database = new ItemDictionary();
}
@Override
@@ -66,7 +60,7 @@ public class ModuleGenetics implements IInitializable {
100,
Binnie.Liquid.getLiquidStack("water", 2000),
null,
new ItemStack(Botany.database),
new ItemStack(BotanyItems.database),
"X#X",
"YEY",
"RDR",
@@ -1,62 +1,30 @@
package binnie.botany.items;
import java.util.List;
import net.minecraft.item.Item;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import binnie.botany.flower.ItemFlower;
import binnie.botany.flower.ItemInsulatedTube;
import binnie.botany.flower.ItemPollen;
import binnie.botany.flower.ItemSeed;
import binnie.botany.gardening.ItemSoilMeter;
import binnie.botany.gardening.ItemTrowel;
import binnie.botany.genetics.ItemDictionary;
import binnie.core.item.DamageItems;
import binnie.botany.Botany;
import binnie.core.item.IItemMisc;
import binnie.core.util.I18N;
public class BotanyItems {
public enum BotanyItems implements IItemMisc {
AshPowder("powderAsh"),
PulpPowder("powderPulp"),
MulchPowder("powderMulch"),
SulphurPowder("powderSulphur"),
FertiliserPowder("powderFertiliser"),
CompostPowder("powderCompost"),
Mortar("mortar"),
Weedkiller("weedkiller");
private IIcon icon;
private final String name;
private final String iconPath;
BotanyItems(String name) {
this.name = name;
this.iconPath = name;
}
@Override
public IIcon getIcon(ItemStack itemStack) {
return icon;
}
@Override
public void registerIcons(IIconRegister register) {
icon = Botany.proxy.getIcon(register, iconPath);
}
@Override
public void addInformation(List<String> data) {
// ignored
}
@Override
public String getName(ItemStack itemStack) {
return I18N.localise("botany.item." + name + ".name");
}
@Override
public ItemStack get(int count) {
return new ItemStack(Botany.misc, count, ordinal());
}
@Override
public boolean isActive() {
return true;
}
public static final ItemInsulatedTube insulatedTube = new ItemInsulatedTube();
public static final ItemSoilMeter soilMeter = new ItemSoilMeter();
public static final DamageItems misc = new BotanyMisc();
public static final ItemFlower flowerItem = new ItemFlower();
public static final ItemPigment pigment = new ItemPigment();
public static final ItemClay clay = new ItemClay();
public static final Item seed = new ItemSeed();
public static final Item pollen = new ItemPollen();
public static final ItemDictionary database = new ItemDictionary();
public static final ItemTrowel trowelWood = new ItemTrowel(Item.ToolMaterial.WOOD, "Wood");
public static final ItemTrowel trowelStone = new ItemTrowel(Item.ToolMaterial.STONE, "Stone");
public static final ItemTrowel trowelIron = new ItemTrowel(Item.ToolMaterial.IRON, "Iron");
public static final ItemTrowel trowelDiamond = new ItemTrowel(Item.ToolMaterial.EMERALD, "Diamond");
public static final ItemTrowel trowelGold = new ItemTrowel(Item.ToolMaterial.GOLD, "Gold");
}
@@ -0,0 +1,44 @@
package binnie.botany.items;
import static binnie.botany.Botany.BOTANY_MODID;
import static binnie.botany.items.BotanyItems.misc;
import java.util.Arrays;
import net.minecraft.item.ItemStack;
import binnie.botany.CreativeTabBotany;
import binnie.core.item.DamageItems;
public class BotanyMisc extends DamageItems {
public enum Items {
AshPowder("powderAsh"),
PulpPowder("powderPulp"),
MulchPowder("powderMulch"),
SulphurPowder("powderSulphur"),
FertiliserPowder("powderFertiliser"),
CompostPowder("powderCompost"),
Mortar("mortar"),
Weedkiller("weedkiller");
final String name;
private static final Items[] VALUES = values();
Items(String name) {
this.name = name;
}
public ItemStack get(int count) {
return misc.getStack(count, ordinal());
}
}
public BotanyMisc() {
super(
CreativeTabBotany.instance,
BOTANY_MODID,
Arrays.stream(Items.VALUES).map(i -> i.name).toArray(String[]::new));
}
}
@@ -13,15 +13,20 @@ import binnie.botany.Botany;
import binnie.botany.CreativeTabBotany;
import binnie.botany.genetics.EnumFlowerColor;
import binnie.core.util.I18N;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class ItemClay extends Item {
public ItemClay() {
setUnlocalizedName("clay");
final String name = "clay";
setUnlocalizedName(name);
setHasSubtypes(true);
setCreativeTab(CreativeTabBotany.instance);
GameRegistry.registerItem(this, name);
}
@Override
@@ -13,15 +13,20 @@ import binnie.botany.Botany;
import binnie.botany.CreativeTabBotany;
import binnie.botany.genetics.EnumFlowerColor;
import binnie.core.util.I18N;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class ItemPigment extends Item {
public ItemPigment() {
setUnlocalizedName("pigment");
final String name = "pigment";
setUnlocalizedName(name);
setHasSubtypes(true);
setCreativeTab(CreativeTabBotany.instance);
GameRegistry.registerItem(this, name);
}
@Override
+3 -50
View File
@@ -1,16 +1,11 @@
package binnie.core;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedHashSet;
import java.util.List;
import net.minecraftforge.common.MinecraftForge;
import binnie.Binnie;
import binnie.core.gui.IBinnieGUID;
import binnie.core.mod.parser.FieldParser;
import binnie.core.network.BinniePacketHandler;
import binnie.core.network.IPacketID;
import binnie.core.network.IPacketProvider;
@@ -23,17 +18,17 @@ import cpw.mods.fml.relauncher.Side;
public abstract class AbstractMod implements IPacketProvider, IInitializable {
private SimpleNetworkWrapper wrapper;
private final LinkedHashSet<Field> fields;
protected final List<IInitializable> modules;
public AbstractMod() {
fields = new LinkedHashSet<>();
modules = new ArrayList<>();
BinnieCore.registerMod(this);
MinecraftForge.EVENT_BUS.register(this);
}
public abstract boolean isActive();
public boolean isActive() {
return true;
}
@Override
public abstract String getChannel();
@@ -47,10 +42,6 @@ public abstract class AbstractMod implements IPacketProvider, IInitializable {
return new IBinnieGUID[0];
}
public Class<?>[] getConfigs() {
return new Class[0];
}
public abstract IProxyCore getProxy();
public abstract String getModID();
@@ -67,32 +58,10 @@ public abstract class AbstractMod implements IPacketProvider, IInitializable {
return;
}
if (getConfigs() != null) {
for (Class<?> cls : getConfigs()) {
Binnie.Configuration.registerConfiguration(cls, this);
}
}
getProxy().preInit();
for (IInitializable module : modules) {
module.preInit();
}
// TODO what does it mean?
Collections.addAll(fields, getClass().getFields());
for (Class<?> cls : getClass().getClasses()) {
Collections.addAll(fields, getClass().getFields());
}
for (IInitializable module : modules) {
Collections.addAll(fields, module.getClass().getFields());
}
for (Field field4 : fields) {
try {
FieldParser.preInitParse(field4, this);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
}
@Override
@@ -108,14 +77,6 @@ public abstract class AbstractMod implements IPacketProvider, IInitializable {
for (IInitializable module : modules) {
module.init();
}
for (Field field : fields) {
try {
FieldParser.initParse(field, this);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
}
@Override
@@ -128,14 +89,6 @@ public abstract class AbstractMod implements IPacketProvider, IInitializable {
for (IInitializable module : modules) {
module.postInit();
}
for (Field field : fields) {
try {
FieldParser.postInitParse(field, this);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
}
protected void addModule(IInitializable init) {
+7 -32
View File
@@ -16,23 +16,17 @@ import binnie.core.craftgui.minecraft.ModuleCraftGUI;
import binnie.core.gui.BinnieCoreGUI;
import binnie.core.gui.BinnieGUIHandler;
import binnie.core.gui.IBinnieGUID;
import binnie.core.item.ItemGenesis;
import binnie.core.item.ModuleItems;
import binnie.core.liquid.FluidContainer;
import binnie.core.liquid.ItemFluidContainer;
import binnie.core.machines.MachineGroup;
import binnie.core.machines.storage.ModuleStorage;
import binnie.core.mod.config.ConfigurationMain;
import binnie.core.mod.config.ConfigurationMods;
import binnie.core.mod.parser.FieldParser;
import binnie.core.mod.parser.ItemParser;
import binnie.core.network.BinnieCorePacketID;
import binnie.core.network.BinniePacketHandler;
import binnie.core.network.IPacketID;
import binnie.core.proxy.BinnieProxy;
import binnie.core.proxy.IBinnieProxy;
import binnie.core.triggers.ModuleTrigger;
import binnie.genetics.item.ItemFieldKit;
import cpw.mods.fml.client.registry.RenderingRegistry;
import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.Mod;
@@ -49,13 +43,16 @@ import forestry.api.core.ForestryEvent;
import forestry.plugins.PluginManager;
@Mod(
modid = "BinnieCore",
name = "Binnie Core",
modid = BinnieCore.CORE_MODID,
name = BinnieCore.CORE_MOD_NAME,
version = Tags.VERSION,
useMetadata = true,
dependencies = "after:Forestry@[4.2,),required-after:gtnhlib@[0.0.10,)")
public class BinnieCore extends AbstractMod {
public static final String CORE_MODID = "BinnieCore";
public static final String CORE_MOD_NAME = "Binnie Core";
@Mod.Instance("BinnieCore")
public static BinnieCore instance;
@@ -65,12 +62,9 @@ public class BinnieCore extends AbstractMod {
public static int multipassRenderID;
private static final List<AbstractMod> modList = new ArrayList<>();
public static MachineGroup packageCompartment;
public static ItemGenesis genesis;
public static ItemFieldKit fieldKit;
@Mod.EventHandler
public void preInit(FMLPreInitializationEvent event) {
Binnie.Configuration.registerConfiguration(ConfigurationMods.class, this);
for (ManagerBase baseManager : Binnie.Managers) {
addModule(baseManager);
}
@@ -106,7 +100,6 @@ public class BinnieCore extends AbstractMod {
Item item = new ItemFluidContainer(container);
GameRegistry.registerItem(item, item.getUnlocalizedName().substring(5));
}
FieldParser.parsers.add(new ItemParser());
super.preInit();
}
@@ -134,20 +127,12 @@ public class BinnieCore extends AbstractMod {
return PluginManager.Module.ARBORICULTURE.isEnabled();
}
public static boolean isBotanyActive() {
return ConfigurationMods.botany;
}
public static boolean isGeneticsActive() {
return ConfigurationMods.genetics;
}
public static boolean isExtraBeesActive() {
return ConfigurationMods.extraBees && isApicultureActive();
return isApicultureActive();
}
public static boolean isExtraTreesActive() {
return ConfigurationMods.extraTrees && isArboricultureActive();
return isArboricultureActive();
}
@Override
@@ -215,21 +200,11 @@ public class BinnieCore extends AbstractMod {
Binnie.Resource.registerIcons(event.map, event.map.getTextureType());
}
@Override
public Class<?>[] getConfigs() {
return new Class[] { ConfigurationMain.class };
}
@Override
protected Class<? extends BinniePacketHandler> getPacketHandler() {
return PacketHandler.class;
}
@Override
public boolean isActive() {
return true;
}
public static class PacketHandler extends BinniePacketHandler {
public PacketHandler() {
@@ -2,9 +2,9 @@ package binnie.core;
public interface IInitializable {
void preInit();
default void preInit() {}
void init();
default void init() {}
void postInit();
default void postInit() {}
}
@@ -7,19 +7,4 @@ public abstract class ManagerBase implements IInitializable {
public ManagerBase() {
Binnie.Managers.add(this);
}
@Override
public void preInit() {
// ignored
}
@Override
public void init() {
// ignored
}
@Override
public void postInit() {
// ignored
}
}
+1
View File
@@ -14,6 +14,7 @@ public class Mods {
public static final Mod botania = new Mod("Botania");
public static final Mod extraBiomes = new Mod("ExtrabiomesXL");
public static final Mod dreamcraft = new Mod("dreamcraft");
public static final Mod buildcraftCore = new Mod("BuildCraft|Core");
private static Item findItem(String modId, String name) {
Item stack = GameRegistry.findItem(modId, name);
@@ -13,7 +13,6 @@ import net.minecraft.util.IIcon;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
import binnie.core.BinnieCore;
@@ -61,16 +60,6 @@ public class BlockMetadata extends BlockContainer implements IBlockMetadata {
return getLocalizedName();
}
@Override
public void addBlockTooltip(ItemStack itemStack, List<String> tooltip) {
// ignored
}
@Override
public int getPlacedMeta(ItemStack itemStack, World world, int x, int y, int z, ForgeDirection direction) {
return TileEntityMetadata.getItemDamage(itemStack);
}
@Override
public int getDroppedMeta(int blockMeta, int tileMeta) {
return blockMeta;
@@ -9,13 +9,17 @@ import net.minecraftforge.common.util.ForgeDirection;
public interface IBlockMetadata extends ITileEntityProvider {
int getPlacedMeta(ItemStack itemStack, World world, int x, int y, int z, ForgeDirection direction);
default int getPlacedMeta(ItemStack itemStack, World world, int x, int y, int z, ForgeDirection direction) {
return TileEntityMetadata.getItemDamage(itemStack);
}
int getDroppedMeta(int blockMeta, int tileMeta);
default int getDroppedMeta(int blockMeta, int tileMeta) {
return tileMeta;
}
String getBlockName(ItemStack itemStack);
void addBlockTooltip(ItemStack itemStack, List<String> tooltip);
default void addBlockTooltip(ItemStack itemStack, List<String> tooltip) {}
void dropAsStack(World world, int x, int y, int z, ItemStack itemStack);
}
@@ -32,6 +32,7 @@ import binnie.core.craftgui.resource.StyleSheet;
import binnie.core.craftgui.resource.minecraft.CraftGUITexture;
import binnie.core.craftgui.resource.minecraft.PaddedTexture;
import binnie.core.craftgui.resource.minecraft.StandardTexture;
import binnie.core.item.BinnieItems;
import binnie.core.machines.inventory.SlotValidator;
import binnie.core.util.I18N;
import binnie.extrabees.core.ExtraBeeTexture;
@@ -225,7 +226,7 @@ public class WindowFieldKit extends Window {
super.onWindowInventoryChanged();
if (isServer()) {
ItemStack kit = getPlayer().getHeldItem();
if (kit == null || !kit.getItem().equals(BinnieCore.fieldKit)) {
if (kit == null || !kit.getItem().equals(BinnieItems.fieldKit)) {
return;
}
@@ -4,12 +4,6 @@ import binnie.core.IInitializable;
public class ModuleCraftGUI implements IInitializable {
@Override
public void preInit() {}
@Override
public void init() {}
@Override
public void postInit() {
for (GUIIcon icon : GUIIcon.values()) {
@@ -1,7 +1,5 @@
package binnie.core.craftgui.minecraft.control;
import net.minecraft.inventory.IInventory;
import org.lwjgl.opengl.GL11;
import binnie.core.craftgui.CraftGUI;
@@ -17,8 +15,6 @@ import binnie.core.craftgui.minecraft.MinecraftTooltip;
import binnie.core.craftgui.minecraft.Window;
import binnie.core.craftgui.resource.minecraft.CraftGUITexture;
import binnie.core.machines.Machine;
import binnie.core.machines.TileEntityMachine;
import binnie.core.machines.power.IPoweredMachine;
import binnie.core.machines.power.IProcess;
import binnie.core.util.I18N;
@@ -34,17 +30,6 @@ public class ControlEnergyBar extends Control implements ITooltip {
addAttribute(WidgetAttribute.MOUSE_OVER);
}
// TODO unused method?
public IPoweredMachine getClientPower() {
IInventory inventory = Window.get(this).getInventory();
TileEntityMachine machine = (inventory instanceof TileEntityMachine) ? (TileEntityMachine) inventory : null;
if (machine == null) {
return null;
}
return machine.getMachine().getInterface(IPoweredMachine.class);
}
public float getPercentage() {
float percentage = 100.0f * getStoredEnergy() / getMaxEnergy();
if (percentage > 100.0f) {
@@ -58,9 +58,8 @@ public class ManagerGenetics extends ManagerBase {
if (BinnieCore.isLepidopteryActive()) {
mothBreedingSystem = new MothBreedingSystem();
}
if (BinnieCore.isBotanyActive()) {
flowerBreedingSystem = new FlowerBreedingSystem();
}
flowerBreedingSystem = new FlowerBreedingSystem();
}
@Override
@@ -0,0 +1,9 @@
package binnie.core.item;
import binnie.genetics.item.ItemFieldKit;
public class BinnieItems {
public static final ItemGenesis genesis = new ItemGenesis();
public static final ItemFieldKit fieldKit = new ItemFieldKit();
}
@@ -0,0 +1,85 @@
package binnie.core.item;
import java.util.List;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import binnie.core.util.I18N;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public abstract class DamageItems extends Item {
private final String[] NAMES;
private final IIcon[] ICONS;
private final String modid;
private final boolean overrideIcons;
protected DamageItems(CreativeTabs tab, String modid, String... names) {
this(tab, modid, "misc", false, names);
}
protected DamageItems(CreativeTabs tab, String modid, String name, boolean overrideIcons, String... names) {
setCreativeTab(tab);
setHasSubtypes(true);
setUnlocalizedName(name);
this.overrideIcons = overrideIcons;
NAMES = names;
ICONS = overrideIcons ? null : new IIcon[names.length];
this.modid = modid;
GameRegistry.registerItem(this, name);
}
public ItemStack getStack(int count, int damage) {
return new ItemStack(this, count, damage);
}
/**
* @param name One of the names passed to the constructor
* @return The unlocalized name string
*/
public String getUnlocalizedName(String name) {
return modid + ".item." + name + ".name";
}
@Override
@SideOnly(Side.CLIENT)
public void getSubItems(Item thiz, CreativeTabs tab, List<ItemStack> list) {
for (int i = 0; i < NAMES.length; ++i) {
list.add(new ItemStack(thiz, 1, i));
}
}
@Override
public String getItemStackDisplayName(ItemStack stack) {
final int damage = stack.getItemDamage();
return (damage < NAMES.length) ? I18N.localise(getUnlocalizedName(NAMES[damage])) : "null";
}
@Override
@SideOnly(Side.CLIENT)
public IIcon getIconFromDamage(int damage) {
if (overrideIcons) return null;
return (damage < ICONS.length && damage >= 0) ? ICONS[damage] : null;
}
public String getIconName(int damage) {
return NAMES[damage];
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister register) {
if (overrideIcons) return;
for (int i = 0; i < NAMES.length; ++i) {
ICONS[i] = register.registerIcon(modid + ":" + getIconName(i));
}
}
}
@@ -1,14 +0,0 @@
package binnie.core.item;
import net.minecraft.item.ItemStack;
public interface IItemEnum {
boolean isActive();
String getName(ItemStack itemStack);
int ordinal();
ItemStack get(int count);
}
@@ -1,20 +0,0 @@
package binnie.core.item;
import java.util.List;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public interface IItemMisc extends IItemEnum {
IIcon getIcon(ItemStack itemStack);
@SideOnly(Side.CLIENT)
void registerIcons(IIconRegister register);
void addInformation(List<String> data);
}
@@ -9,6 +9,7 @@ import net.minecraft.world.World;
import binnie.core.BinnieCore;
import binnie.core.gui.BinnieCoreGUI;
import binnie.core.util.I18N;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import forestry.api.core.Tabs;
@@ -22,9 +23,13 @@ public class ItemGenesis extends Item {
}
public ItemGenesis() {
final String name = "genesis";
setCreativeTab(Tabs.tabApiculture);
setUnlocalizedName("genesis");
setUnlocalizedName(name);
setMaxStackSize(1);
GameRegistry.registerItem(this, name);
}
@Override
@@ -1,82 +0,0 @@
package binnie.core.item;
import java.util.List;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class ItemMisc extends Item {
private final IItemMisc[] items;
protected ItemMisc(CreativeTabs tab, IItemMisc[] items2) {
setCreativeTab(tab);
setHasSubtypes(true);
setUnlocalizedName("misc");
items = items2;
}
@Override
@SideOnly(Side.CLIENT)
public void getSubItems(Item par1, CreativeTabs tab, List<ItemStack> list) {
for (IItemMisc item : items) {
if (item.isActive()) {
list.add(getStack(item, 1));
}
}
}
private IItemMisc getItem(int damage) {
if (damage >= items.length) {
return items[0];
}
return items[damage];
}
public ItemStack getStack(IItemMisc type, int size) {
return new ItemStack(this, size, type.ordinal());
}
@Override
@SideOnly(Side.CLIENT)
public void addInformation(ItemStack itemStack, EntityPlayer player, List<String> tooltip, boolean advanced) {
super.addInformation(itemStack, player, tooltip, advanced);
IItemMisc item = getItem(itemStack.getItemDamage());
if (item != null) {
item.addInformation(tooltip);
}
}
@Override
public String getItemStackDisplayName(ItemStack stack) {
IItemMisc item = getItem(stack.getItemDamage());
return (item != null) ? item.getName(stack) : "null";
}
@Override
public IIcon getIcon(ItemStack stack, int pass) {
IItemMisc item = getItem(stack.getItemDamage());
return (item != null) ? item.getIcon(stack) : null;
}
@Override
public IIcon getIconFromDamage(int damage) {
IItemMisc item = getItem(damage);
return (item != null) ? item.getIcon(null) : null;
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister register) {
for (IItemMisc item : items) {
item.registerIcons(register);
}
}
}
@@ -1,10 +0,0 @@
package binnie.core.item;
import net.minecraft.creativetab.CreativeTabs;
public class ManagerItem {
public ItemMisc registerMiscItems(IItemMisc[] items, CreativeTabs tab) {
return new ItemMisc(tab, items);
}
}
@@ -1,5 +1,7 @@
package binnie.core.item;
import static binnie.core.item.BinnieItems.fieldKit;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
@@ -12,10 +14,8 @@ import binnie.botany.Botany;
import binnie.botany.api.IFlower;
import binnie.botany.flower.TileEntityFlower;
import binnie.botany.network.PacketID;
import binnie.core.BinnieCore;
import binnie.core.IInitializable;
import binnie.core.network.packet.MessageNBT;
import binnie.genetics.item.ItemFieldKit;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.registry.GameRegistry;
@@ -23,19 +23,15 @@ public class ModuleItems implements IInitializable {
@Override
public void preInit() {
BinnieCore.fieldKit = new ItemFieldKit();
BinnieCore.genesis = new ItemGenesis();
}
@Override
public void init() {
// ignored
// Loads BinnieItems.class, guaranteeing that items are init by this point
// TODO: is this needed?
fieldKit.getUnlocalizedName();
}
@Override
public void postInit() {
GameRegistry.addRecipe(
new ItemStack(BinnieCore.fieldKit, 1, 63),
new ItemStack(fieldKit, 1, 63),
"g ",
" is",
" pi",
@@ -51,13 +47,13 @@ public class ModuleItems implements IInitializable {
@SubscribeEvent
public void onUseFieldKit(PlayerInteractEvent event) {
if (!BinnieCore.isBotanyActive() || event.action != PlayerInteractEvent.Action.RIGHT_CLICK_BLOCK) {
if (event.action != PlayerInteractEvent.Action.RIGHT_CLICK_BLOCK) {
return;
}
EntityPlayer player = event.entityPlayer;
if (player != null && player.getHeldItem() != null
&& player.getHeldItem().getItem() == BinnieCore.fieldKit
&& player.getHeldItem().getItem() == fieldKit
&& player.isSneaking()) {
TileEntity tile = event.world.getTileEntity(event.x, event.y, event.z);
if (!(tile instanceof TileEntityFlower tileFlower)) {
@@ -9,7 +9,7 @@ import net.minecraftforge.fluids.FluidContainerRegistry;
import binnie.core.BinnieCore;
import binnie.core.Mods;
import binnie.core.util.I18N;
import binnie.genetics.item.GeneticsItems;
import binnie.genetics.item.GeneticsMisc;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -71,7 +71,7 @@ public enum FluidContainer {
case Capsule -> Mods.forestry.stack("waxCapsule");
case Glass -> new ItemStack(Items.glass_bottle, 1, 0);
case Refractory -> Mods.forestry.stack("refractoryEmpty");
case Cylinder -> GeneticsItems.Cylinder.get(1);
case Cylinder -> GeneticsMisc.Items.Cylinder.get(1);
};
}
@@ -5,6 +5,4 @@ import binnie.core.network.IOrdinaled;
public interface IMachineType extends IOrdinaled {
Class<? extends MachinePackage> getPackageClass();
boolean isActive();
}
@@ -31,14 +31,14 @@ public class MachineGroup {
this.blockName = blockName;
for (IMachineType type : types) {
if (type.getPackageClass() != null && type.isActive()) {
if (type.getPackageClass() != null) {
try {
MachinePackage pack = type.getPackageClass().newInstance();
pack.assignMetadata(type.ordinal());
pack.setActive(type.isActive());
pack.setActive(true);
addPackage(pack);
} catch (Exception e) {
throw new RuntimeException("Failed to create machine package " + type.toString(), e);
throw new RuntimeException("Failed to create machine package " + type, e);
}
}
}
@@ -1,233 +0,0 @@
package binnie.core.machines.inventory;
import net.minecraft.inventory.IInventory;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidContainerRegistry;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.IFluidTank;
import binnie.core.machines.Machine;
import binnie.core.machines.power.ITankMachine;
// TODO unused class?
public class TransferHandler {
public static ItemStack transfer(ItemStack item, IInventory origin, IInventory destination, boolean doAdd) {
ItemStack ret = transferItemToInventory(item, destination, doAdd);
if (destination instanceof ITankMachine) {
ret = transferContainerIntoTank(ret, origin, (ITankMachine) destination, doAdd);
ret = transferTankIntoContainer(ret, origin, (ITankMachine) destination, doAdd);
}
return ret;
}
public static ItemStack transferItemToInventory(ItemStack item, IInventory destination, boolean doAdd) {
if (item == null || destination == null) {
return item;
}
ItemStack addition = item.copy();
for (int i = 0; i < destination.getSizeInventory(); ++i) {
addition = transferToInventory(addition, destination, new int[] { i }, doAdd, false);
if (addition == null) {
return null;
}
}
return addition;
}
public static ItemStack transferToInventory(ItemStack item, IInventory destination, int[] targetSlots,
boolean doAdd, boolean ignoreValidation) {
for (int i : targetSlots) {
if (destination.isItemValidForSlot(i, item) || ignoreValidation) {
if (destination.getStackInSlot(i) == null) {
if (doAdd) {
destination.setInventorySlotContents(i, item.copy());
}
return null;
}
if (item.isStackable()) {
ItemStack merged = destination.getStackInSlot(i).copy();
ItemStack[] newStacks = mergeStacks(item.copy(), merged.copy());
item = newStacks[0];
if (doAdd) {
destination.setInventorySlotContents(i, newStacks[1]);
}
if (item == null) {
return null;
}
}
}
}
return item;
}
public static ItemStack[] mergeStacks(ItemStack itemstack, ItemStack merged) {
if (ItemStack.areItemStackTagsEqual(itemstack, merged) && itemstack.isItemEqual(merged)) {
int space = merged.getMaxStackSize() - merged.stackSize;
if (space > 0) {
if (itemstack.stackSize > space) {
itemstack.stackSize -= space;
merged.stackSize += space;
} else {
merged.stackSize += itemstack.stackSize;
itemstack = null;
}
}
}
return new ItemStack[] { itemstack, merged };
}
public static ItemStack transferContainerIntoTank(ItemStack item, IInventory origin, ITankMachine destination,
boolean doAdd) {
if (item == null) {
return null;
}
IFluidTank[] tanks = destination.getTanks();
ItemStack stack = item.copy();
for (int i = 0; i < tanks.length; ++i) {
stack = transferToTank(stack, origin, destination, i, doAdd);
}
return stack;
}
public static ItemStack transferTankIntoContainer(ItemStack item, IInventory origin, ITankMachine destination,
boolean doAdd) {
if (item == null) {
return null;
}
IFluidTank[] tanks = destination.getTanks();
ItemStack stack = item.copy();
for (int i = 0; i < tanks.length; ++i) {
stack = transferFromTank(stack, origin, destination, i, doAdd);
}
return stack;
}
public static ItemStack transferToTank(ItemStack item, IInventory origin, ITankMachine destination, int tankID,
boolean doAdd) {
if (item == null) {
return item;
}
FluidStack containerLiquid = null;
FluidContainerRegistry.FluidContainerData containerLiquidData = null;
for (FluidContainerRegistry.FluidContainerData data : FluidContainerRegistry
.getRegisteredFluidContainerData()) {
if (data.filledContainer.isItemEqual(item)) {
containerLiquidData = data;
containerLiquid = data.fluid.copy();
break;
}
}
if (containerLiquid == null) {
return item;
}
IFluidTank tank = destination.getTanks()[tankID];
IValidatedTankContainer validated = Machine.getInterface(IValidatedTankContainer.class, destination);
if (validated != null && !validated.isLiquidValidForTank(containerLiquid, tankID)) {
return item;
}
FluidStack largeAmountOfLiquid = containerLiquid.copy();
largeAmountOfLiquid.amount = tank.getCapacity();
int amountAdded = tank.fill(largeAmountOfLiquid, false);
int numberOfContainersToAdd = amountAdded / containerLiquid.amount;
if (numberOfContainersToAdd > item.stackSize) {
numberOfContainersToAdd = item.stackSize;
}
ItemStack copy;
ItemStack leftOverContainers = copy = item.copy();
copy.stackSize -= numberOfContainersToAdd;
if (leftOverContainers.stackSize <= 0) {
leftOverContainers = null;
}
ItemStack emptyContainers = containerLiquidData.emptyContainer.copy();
emptyContainers.stackSize = 0;
ItemStack itemStack = emptyContainers;
itemStack.stackSize += numberOfContainersToAdd;
if (emptyContainers.stackSize <= 0) {
emptyContainers = null;
}
ItemStack containersThatCantBeDumped = transferItemToInventory(emptyContainers, origin, false);
if (containersThatCantBeDumped != null) {
return item;
}
if (doAdd) {
FluidStack copy2;
FluidStack liquidToFillTank = copy2 = containerLiquid.copy();
copy2.amount *= numberOfContainersToAdd;
tank.fill(liquidToFillTank, true);
transferItemToInventory(emptyContainers, origin, true);
}
return leftOverContainers;
}
public static ItemStack transferFromTank(ItemStack item, IInventory origin, ITankMachine destination, int tankID,
boolean doAdd) {
if (item == null) {
return item;
}
IFluidTank tank = destination.getTanks()[tankID];
FluidStack liquidInTank = tank.getFluid();
if (liquidInTank == null) {
return item;
}
FluidContainerRegistry.FluidContainerData containerLiquidData = null;
for (FluidContainerRegistry.FluidContainerData data : FluidContainerRegistry
.getRegisteredFluidContainerData()) {
if (data.emptyContainer.isItemEqual(item) && liquidInTank.isFluidEqual(data.fluid)) {
containerLiquidData = data;
break;
}
}
if (containerLiquidData == null) {
return item;
}
int maximumExtractedLiquid = item.stackSize * containerLiquidData.fluid.amount;
FluidStack drainedLiquid = tank.drain(maximumExtractedLiquid, false);
int amountInTank = (drainedLiquid == null) ? 0 : drainedLiquid.amount;
int numberOfContainersToFill = amountInTank / containerLiquidData.fluid.amount;
if (numberOfContainersToFill > item.stackSize) {
numberOfContainersToFill = item.stackSize;
}
ItemStack copy;
ItemStack leftOverContainers = copy = item.copy();
copy.stackSize -= numberOfContainersToFill;
if (leftOverContainers.stackSize <= 0) {
leftOverContainers = null;
}
ItemStack filledContainers = containerLiquidData.filledContainer.copy();
filledContainers.stackSize = 0;
ItemStack itemStack = filledContainers;
itemStack.stackSize += numberOfContainersToFill;
if (filledContainers.stackSize <= 0) {
filledContainers = null;
}
ItemStack containersThatCantBeDumped = transferItemToInventory(filledContainers, origin, false);
if (containersThatCantBeDumped != null) {
return item;
}
if (doAdd) {
tank.drain(maximumExtractedLiquid, true);
transferItemToInventory(filledContainers, origin, true);
}
return leftOverContainers;
}
}
@@ -32,11 +32,6 @@ enum Compartment implements IMachineType {
return clss;
}
@Override
public boolean isActive() {
return true;
}
public ItemStack get(int i) {
return new ItemStack(BinnieCore.packageCompartment.getBlock(), i, ordinal());
}
@@ -23,11 +23,6 @@ public class ModuleStorage implements IInitializable {
BinnieCore.packageCompartment.setCreativeTab(CreativeTabs.tabBlock);
}
@Override
public void init() {
// ignored
}
@Override
public void postInit() {
String ironGear = OreDictionary.getOres("gearIron").isEmpty() ? "ingotIron" : "gearIron";
@@ -1,5 +0,0 @@
package binnie.core.machines.transfer;
// TODO unused class?
public class TransferHandler {
}
@@ -1,20 +0,0 @@
package binnie.core.mod.config;
import java.io.File;
import net.minecraftforge.common.config.Configuration;
import binnie.core.AbstractMod;
import binnie.core.BinnieCore;
public class BinnieConfiguration extends Configuration {
public AbstractMod mod;
private final String filename;
public BinnieConfiguration(String filename, AbstractMod mod) {
super(new File(BinnieCore.proxy.getDirectory(), filename));
this.mod = mod;
this.filename = filename;
}
}
@@ -1,15 +0,0 @@
package binnie.core.mod.config;
// TODO Why do we need this class?
class BinnieItemData {
private final int item;
private final BinnieConfiguration configFile;
private final String configKey;
public BinnieItemData(int item, BinnieConfiguration configFile, String configKey) {
this.item = item;
this.configFile = configFile;
this.configKey = configKey;
}
}
@@ -1,10 +0,0 @@
package binnie.core.mod.config;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@Retention(RetentionPolicy.RUNTIME)
public @interface ConfigFile {
String filename();
}
@@ -1,26 +0,0 @@
package binnie.core.mod.config;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Retention(RetentionPolicy.RUNTIME)
@Target({ ElementType.FIELD })
public @interface ConfigProperty {
String key();
String category() default "";
String[] comment() default {};
@Retention(RetentionPolicy.RUNTIME)
@Target({ ElementType.ANNOTATION_TYPE })
@interface Type {
Class<? extends PropertyBase> propertyClass();
String category() default "general";
}
}
@@ -1,5 +0,0 @@
package binnie.core.mod.config;
@ConfigFile(filename = "/config/forestry/binniecore/main.conf")
public class ConfigurationMain {
}
@@ -1,21 +0,0 @@
package binnie.core.mod.config;
@ConfigFile(filename = "/config/forestry/binnie-mods.conf")
public class ConfigurationMods {
@ConfigProperty(key = "extraBees", comment = { "Enables the Extra Bees Mod." })
@PropBoolean
public static boolean extraBees = true;
@ConfigProperty(key = "extraTrees", comment = { "Enables the Extra Trees Mod." })
@PropBoolean
public static boolean extraTrees = true;
@ConfigProperty(key = "botany", comment = { "Enables the Botany Mod." })
@PropBoolean
public static boolean botany = true;
@ConfigProperty(key = "genetics", comment = { "Enables the Genetics Mod." })
@PropBoolean
public static boolean genetics = true;
}
@@ -1,71 +0,0 @@
package binnie.core.mod.config;
import java.lang.annotation.Annotation;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import net.minecraftforge.common.config.Configuration;
import binnie.core.AbstractMod;
import binnie.core.ManagerBase;
public class ManagerConfig extends ManagerBase {
private final Map<Class<?>, Configuration> configurations;
private final Map<AbstractMod, List<BinnieItemData>> itemIDs;
public ManagerConfig() {
configurations = new LinkedHashMap<>();
itemIDs = new HashMap<>();
}
public void registerConfiguration(Class<?> cls, AbstractMod mod) {
if (cls.isAnnotationPresent(ConfigFile.class)) {
loadConfiguration(cls, mod);
}
}
public void loadConfiguration(Class<?> cls, AbstractMod mod) {
try {
String filename = cls.getAnnotation(ConfigFile.class).filename();
BinnieConfiguration config = new BinnieConfiguration(filename, mod);
config.load();
for (Field field : cls.getFields()) {
if (field.isAnnotationPresent(ConfigProperty.class)) {
ConfigProperty propertyAnnot = field.getAnnotation(ConfigProperty.class);
for (Annotation annotation : field.getAnnotations()) {
if (annotation.annotationType().isAnnotationPresent(ConfigProperty.Type.class)) {
Class<?> propertyClass = annotation.annotationType()
.getAnnotation(ConfigProperty.Type.class).propertyClass();
// TODO what for?
PropertyBase property = (PropertyBase) propertyClass.getConstructor(
Field.class,
BinnieConfiguration.class,
ConfigProperty.class,
annotation.annotationType()).newInstance(
field,
config,
propertyAnnot,
annotation.annotationType().cast(annotation));
}
}
}
}
config.save();
configurations.put(cls, config);
} catch (Exception e) {
e.printStackTrace();
}
}
public void addItemID(Integer configValue, String configKey, BinnieConfiguration configFile) {
if (!itemIDs.containsKey(configFile.mod)) {
itemIDs.put(configFile.mod, new ArrayList<>());
}
itemIDs.get(configFile.mod).add(new BinnieItemData(configValue + 256, configFile, configKey));
}
}
@@ -1,35 +0,0 @@
package binnie.core.mod.config;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.reflect.Field;
import net.minecraftforge.common.config.Property;
@Retention(RetentionPolicy.RUNTIME)
@ConfigProperty.Type(propertyClass = PropBoolean.PropertyBoolean.class)
public @interface PropBoolean {
class PropertyBoolean extends PropertyBase<Boolean, PropBoolean> {
public PropertyBoolean(Field field, BinnieConfiguration file, ConfigProperty configProperty,
PropBoolean annotedProperty) throws IllegalArgumentException, IllegalAccessException {
super(field, file, configProperty, annotedProperty);
}
@Override
protected Property getProperty() {
return file.get(getCategory(), getKey(), defaultValue);
}
@Override
protected Boolean getConfigValue() {
return property.getBoolean(defaultValue);
}
@Override
protected void addComments() {
addComment("Default value is " + defaultValue + ".");
}
}
}
@@ -1,35 +0,0 @@
package binnie.core.mod.config;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.reflect.Field;
import net.minecraftforge.common.config.Property;
@Retention(RetentionPolicy.RUNTIME)
@ConfigProperty.Type(propertyClass = PropDouble.PropertyDouble.class)
public @interface PropDouble {
class PropertyDouble extends PropertyBase<Double, PropDouble> {
public PropertyDouble(Field field, BinnieConfiguration file, ConfigProperty configProperty,
PropDouble annotedProperty) throws IllegalArgumentException, IllegalAccessException {
super(field, file, configProperty, annotedProperty);
}
@Override
protected Property getProperty() {
return file.get(getCategory(), getKey(), defaultValue);
}
@Override
protected Double getConfigValue() {
return property.getDouble(defaultValue);
}
@Override
protected void addComments() {
addComment("Default value is " + defaultValue + ".");
}
}
}
@@ -1,35 +0,0 @@
package binnie.core.mod.config;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.reflect.Field;
import net.minecraftforge.common.config.Property;
@Retention(RetentionPolicy.RUNTIME)
@ConfigProperty.Type(propertyClass = PropInteger.PropertyInteger.class)
public @interface PropInteger {
class PropertyInteger extends PropertyBase<Integer, PropInteger> {
public PropertyInteger(Field field, BinnieConfiguration file, ConfigProperty configProperty,
PropInteger annotedProperty) throws IllegalArgumentException, IllegalAccessException {
super(field, file, configProperty, annotedProperty);
}
@Override
protected Property getProperty() {
return file.get(getCategory(), getKey(), defaultValue);
}
@Override
protected Integer getConfigValue() {
return property.getInt(defaultValue);
}
@Override
protected void addComments() {
addComment("Default value is " + defaultValue + ".");
}
}
}
@@ -1,40 +0,0 @@
package binnie.core.mod.config;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.reflect.Field;
import net.minecraftforge.common.config.Property;
@Retention(RetentionPolicy.RUNTIME)
@ConfigProperty.Type(propertyClass = PropPercentage.PropertyPercentage.class)
public @interface PropPercentage {
int upper() default 100;
int lower() default 0;
class PropertyPercentage extends PropertyBase<Integer, PropPercentage> {
public PropertyPercentage(Field field, BinnieConfiguration file, ConfigProperty configProperty,
PropPercentage annotedProperty) throws IllegalArgumentException, IllegalAccessException {
super(field, file, configProperty, annotedProperty);
}
@Override
protected Integer getConfigValue() {
return property.getInt(defaultValue);
}
@Override
protected void addComments() {
addComment("Default value is " + defaultValue + "%.");
addComment("Range is " + annotatedProperty.lower() + "-" + annotatedProperty.upper() + "%.");
}
@Override
protected Property getProperty() {
return file.get(getCategory(), getKey(), defaultValue);
}
}
}
@@ -1,71 +0,0 @@
package binnie.core.mod.config;
import java.lang.annotation.Annotation;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
import net.minecraftforge.common.config.Configuration;
import net.minecraftforge.common.config.Property;
public abstract class PropertyBase<ValueType, AnnotationType extends Annotation> {
protected Configuration file;
protected Property property;
protected ValueType defaultValue;
protected AnnotationType annotatedProperty;
private final ConfigProperty configProperty;
private final List<String> comments;
private final Field field;
protected PropertyBase(Field field, BinnieConfiguration file, ConfigProperty configProperty,
AnnotationType annotedProperty) throws IllegalArgumentException, IllegalAccessException {
comments = new ArrayList<>();
this.field = field;
this.file = file;
this.configProperty = configProperty;
annotatedProperty = annotedProperty;
defaultValue = getDefaultValue(field);
property = getProperty();
for (String comment : configProperty.comment()) {
addComment(comment);
}
addComments();
property.comment = getComment();
field.set(null, getConfigValue());
}
protected abstract Property getProperty();
protected abstract ValueType getConfigValue();
protected abstract void addComments();
protected String getCategory() {
return configProperty.category().isEmpty()
? annotatedProperty.annotationType().getAnnotation(ConfigProperty.Type.class).category()
: configProperty.category();
}
protected String getKey() {
return configProperty.key();
}
protected ValueType getDefaultValue(Field field) throws IllegalArgumentException, IllegalAccessException {
return (ValueType) field.get(null);
}
protected void addComment(String comment) {
comments.add(comment);
}
protected String getComment() {
StringBuilder comment = new StringBuilder();
for (String com : comments) {
comment.append(com).append(" ");
}
return comment.toString();
}
}
@@ -1,52 +0,0 @@
package binnie.core.mod.parser;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Collection;
import binnie.core.AbstractMod;
public abstract class FieldParser {
public static Collection<FieldParser> parsers = new ArrayList<>();
public abstract boolean isHandled(Field field, AbstractMod mod);
public void preInit(Field field, AbstractMod mod) throws IllegalArgumentException, IllegalAccessException {
// ignored
}
public void init(Field field, AbstractMod mod) throws IllegalArgumentException, IllegalAccessException {
// ignored
}
public void postInit(Field field, AbstractMod mod) throws IllegalArgumentException, IllegalAccessException {
// ignored
}
public static void preInitParse(Field field, AbstractMod mod)
throws IllegalArgumentException, IllegalAccessException {
for (FieldParser parser : FieldParser.parsers) {
if (parser.isHandled(field, mod)) {
parser.preInit(field, mod);
}
}
}
public static void initParse(Field field, AbstractMod mod) throws IllegalArgumentException, IllegalAccessException {
for (FieldParser parser : FieldParser.parsers) {
if (parser.isHandled(field, mod)) {
parser.init(field, mod);
}
}
}
public static void postInitParse(Field field, AbstractMod mod)
throws IllegalArgumentException, IllegalAccessException {
for (FieldParser parser : FieldParser.parsers) {
if (parser.isHandled(field, mod)) {
parser.postInit(field, mod);
}
}
}
}
@@ -1,24 +0,0 @@
package binnie.core.mod.parser;
import java.lang.reflect.Field;
import net.minecraft.item.Item;
import binnie.core.AbstractMod;
import cpw.mods.fml.common.registry.GameRegistry;
public class ItemParser extends FieldParser {
@Override
public boolean isHandled(Field field, AbstractMod mod) {
return Item.class.isAssignableFrom(field.getType());
}
@Override
public void preInit(Field field, AbstractMod mod) throws IllegalArgumentException, IllegalAccessException {
Item item = (Item) field.get(null);
if (item != null) {
GameRegistry.registerItem(item, item.getUnlocalizedName().substring(5));
}
}
}
@@ -1,9 +0,0 @@
package binnie.core.network.packet;
import net.minecraft.network.Packet;
// TODO unused interface?
public interface IPacket {
Packet getPacket();
}
@@ -1,15 +0,0 @@
package binnie.core.network.packet;
// TODO unused class?
public class IndexInPayload {
public int intIndex;
public int floatIndex;
public int stringIndex;
public IndexInPayload(int intIndex, int floatIndex, int stringIndex) {
this.intIndex = intIndex;
this.floatIndex = floatIndex;
this.stringIndex = stringIndex;
}
}
@@ -8,8 +8,4 @@ public class MessageContainerUpdate extends MessageCraftGUI {
super(nbt);
}
// TODO unused constructor?
public MessageContainerUpdate(MessageBinnie message) {
super(message);
}
}
@@ -3,7 +3,6 @@ package binnie.core.network.packet;
import java.io.IOException;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ChunkCoordinates;
import net.minecraft.world.World;
import io.netty.buffer.ByteBuf;
@@ -18,11 +17,6 @@ public class MessageCoordinates extends MessageBase {
super(message);
}
// TODO unused constructor?
public MessageCoordinates(int id, ChunkCoordinates coordinates) {
this(id, coordinates.posX, coordinates.posY, coordinates.posZ);
}
public MessageCoordinates(int id, int posX, int posY, int posZ) {
super(id);
this.posX = posX;
@@ -44,11 +38,6 @@ public class MessageCoordinates extends MessageBase {
posZ = data.readInt();
}
// TODO unused method?
public ChunkCoordinates getCoordinates() {
return new ChunkCoordinates(posX, posY, posZ);
}
public TileEntity getTileEntity(World world) {
return world.getTileEntity(posX, posY, posZ);
}
@@ -4,7 +4,6 @@ import java.io.IOException;
import java.nio.charset.StandardCharsets;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import binnie.core.network.INetworkedEntity;
import io.netty.buffer.ByteBuf;
@@ -75,8 +74,4 @@ public class MessageUpdate extends MessageCoordinates {
}
}
// TODO unused method?
public TileEntity getTarget(World world) {
return world.getTileEntity(posX, posY, posZ);
}
}
@@ -3,8 +3,6 @@ package binnie.core.network.packet;
import java.util.ArrayList;
import java.util.List;
import binnie.core.network.INetworkedEntity;
public class PacketPayload {
public List<Integer> intPayload;
@@ -17,12 +15,6 @@ public class PacketPayload {
stringPayload = new ArrayList<>();
}
// TODO unused constructor?
public PacketPayload(INetworkedEntity tile) {
this();
tile.writeToPacket(this);
}
public void addInteger(int a) {
intPayload.add(a);
}
@@ -47,16 +39,6 @@ public class PacketPayload {
return stringPayload.remove(0);
}
// TODO unused method
public void append(PacketPayload other) {
if (other == null) {
return;
}
intPayload.addAll(other.intPayload);
floatPayload.addAll(other.floatPayload);
stringPayload.addAll(other.stringPayload);
}
public boolean isEmpty() {
return intPayload.isEmpty() && floatPayload.isEmpty() && stringPayload.isEmpty();
}
@@ -44,19 +44,4 @@ public class BinnieModProxy implements IBinnieModProxy {
public IIcon getIcon(IIconRegister register, String string) {
return BinnieCore.proxy.getIcon(register, mod.getModID(), string);
}
@Override
public void preInit() {
// ignored
}
@Override
public void init() {
// ignored
}
@Override
public void postInit() {
// ignored
}
}
@@ -20,7 +20,6 @@ import binnie.core.network.INetworkedEntity;
import binnie.core.network.packet.MessageUpdate;
import binnie.core.resource.BinnieResource;
import cpw.mods.fml.client.registry.RenderingRegistry;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.registry.GameRegistry;
public class BinnieProxy extends BinnieModProxy implements IBinnieProxy {
@@ -69,11 +68,6 @@ public class BinnieProxy extends BinnieModProxy implements IBinnieProxy {
return null;
}
// TODO unused method?
public void throwException(String message, Throwable e) {
FMLCommonHandler.instance().raiseException(e, message, true);
}
@Override
public Minecraft getMinecraftInstance() {
return null;
@@ -129,16 +123,6 @@ public class BinnieProxy extends BinnieModProxy implements IBinnieProxy {
return null;
}
// TODO unused method?
public void handleTextureRefresh(IIconRegister register, int type) {
// ignored
}
// TODO unused method?
public void handlePostTextureRefresh(IIconRegister register, int type) {
// ignored
}
public short getUniqueTextureUID() {
uniqueTextureUID++;
return uniqueTextureUID;
@@ -21,7 +21,6 @@ import net.minecraftforge.client.MinecraftForgeClient;
import org.lwjgl.input.Keyboard;
import org.lwjgl.opengl.GL11;
import binnie.Binnie;
import binnie.core.craftgui.resource.minecraft.CraftGUIResourceManager;
import binnie.core.resource.BinnieResource;
import cpw.mods.fml.client.FMLClientHandler;
@@ -139,13 +138,6 @@ public class BinnieProxyClient extends BinnieProxy implements IBinnieProxy {
return Minecraft.getMinecraft().thePlayer;
}
// TODO unused method?
public void handlePreTextureRefresh(IIconRegister register, int type) {
if (type == 0) {
Binnie.Liquid.reloadIcons(register);
}
}
@Override
public void preInit() {
IResourceManager manager = Minecraft.getMinecraft().getResourceManager();
@@ -6,11 +6,6 @@ import buildcraft.api.statements.StatementManager;
public class ModuleTrigger implements IInitializable {
@Override
public void preInit() {
// ignored
}
@Override
public void init() {
BinnieAction.actionPauseProcess = new BinnieAction(
@@ -80,8 +75,4 @@ public class ModuleTrigger implements IInitializable {
StatementManager.registerTriggerProvider(new TriggerProvider());
}
@Override
public void postInit() {
// ignored
}
}
+45 -17
View File
@@ -2,7 +2,11 @@ package binnie.extrabees;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.item.Item;
import net.minecraft.init.Items;
import net.minecraftforge.oredict.OreDictionary;
import com.gtnewhorizon.gtnhlib.config.ConfigException;
import com.gtnewhorizon.gtnhlib.config.ConfigurationManager;
import binnie.core.AbstractMod;
import binnie.core.BinnieCore;
@@ -11,29 +15,35 @@ 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.config.EBConfig;
import binnie.extrabees.core.ExtraBeeGUID;
import binnie.extrabees.core.ModuleCore;
import binnie.extrabees.genetics.ModuleGenetics;
import binnie.extrabees.liquids.ModuleLiquids;
import binnie.extrabees.products.CombItems;
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.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLMissingMappingsEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.registry.GameRegistry;
@Mod(
modid = "ExtraBees",
name = "Extra Bees",
modid = ExtraBees.EB_MODID,
name = ExtraBees.EB_MOD_NAME,
version = Tags.VERSION,
useMetadata = true,
dependencies = "after:BinnieCore")
dependencies = "after:BinnieCore",
guiFactory = "binnie.extrabees.config.EBConfigGUIFactory")
public class ExtraBees extends AbstractMod {
public static final String EB_MODID = "extrabees";
public static final String EB_MOD_NAME = "Extra Bees";
@Mod.Instance("ExtraBees")
public static ExtraBees instance;
@@ -42,14 +52,17 @@ public class ExtraBees extends AbstractMod {
serverSide = "binnie.extrabees.proxy.ExtraBeesProxyServer")
public static ExtraBeesProxy proxy;
static {
try {
ConfigurationManager.registerConfig(EBConfig.class);
} catch (ConfigException e) {
throw new RuntimeException(e);
}
}
public static Block hive;
public static Material materialBeehive;
public static Block ectoplasm;
public static Item comb;
public static Item propolis;
public static Item honeyDrop;
public static Item dictionary;
public static Item itemMisc;
public ExtraBees() {
ExtraBees.instance = this;
@@ -68,6 +81,13 @@ public class ExtraBees extends AbstractMod {
@Mod.EventHandler
public void init(FMLInitializationEvent event) {
OreDictionary.registerOre("ingotIron", Items.iron_ingot);
OreDictionary.registerOre("ingotGold", Items.gold_ingot);
OreDictionary.registerOre("gemDiamond", Items.diamond);
OreDictionary.registerOre("gemEmerald", Items.emerald);
CombItems.addSubtypes();
init();
}
@@ -76,14 +96,22 @@ public class ExtraBees extends AbstractMod {
postInit();
}
@Override
public IBinnieGUID[] getGUIDs() {
return ExtraBeeGUID.values();
@Mod.EventHandler
public void missingMappings(FMLMissingMappingsEvent event) {
for (FMLMissingMappingsEvent.MissingMapping m : event.getAll()) {
final String[] name = m.name.split(":");
if (name.length < 2) continue;
if (name[0].equals("ExtraBees")) {
if (m.type == GameRegistry.Type.BLOCK) m.remap(GameRegistry.findBlock(EB_MODID, name[1]));
else m.remap(GameRegistry.findItem(EB_MODID, name[1]));
}
}
}
@Override
public Class<?>[] getConfigs() {
return new Class[] { ConfigurationMain.class, ConfigurationMachines.class };
public IBinnieGUID[] getGUIDs() {
return ExtraBeeGUID.values();
}
@Override
@@ -98,7 +126,7 @@ public class ExtraBees extends AbstractMod {
@Override
public String getModID() {
return "extrabees";
return EB_MODID;
}
@Override
@@ -1,10 +1,7 @@
package binnie.extrabees.apiary;
import net.minecraft.item.ItemStack;
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;
@@ -61,21 +58,11 @@ public class ComponentBeeModifier extends MachineComponent implements IBeeModifi
return false;
}
// TODO unused method?
public void onQueenChange(ItemStack queen) {
// ignored
}
@Override
public void wearOutEquipment(int amount) {
// ignored
}
// TODO unused method?
public boolean onEggLaid(IBee queen) {
return false;
}
@Override
public float getGeneticDecay(IBeeGenome genome, float currentModifier) {
return 1.0f;
@@ -46,11 +46,6 @@ public enum AlvearyMachine implements IMachineType {
return new ItemStack(ModuleApiary.blockComponent, size, ordinal());
}
@Override
public boolean isActive() {
return true;
}
public abstract static class AlvearyPackage extends MachinePackage {
protected BinnieResource machineTexture;
@@ -1,24 +0,0 @@
package binnie.extrabees.config;
import binnie.core.mod.config.ConfigFile;
import binnie.core.mod.config.ConfigProperty;
import binnie.core.mod.config.PropDouble;
import binnie.core.mod.config.PropPercentage;
@ConfigFile(filename = "/config/forestry/extrabees/machines.conf")
public class ConfigurationMachines {
@ConfigProperty(
key = "isolatorConsumptionChance",
comment = { "Percentage chance of Isolator consuming bee, in x%." })
@PropPercentage
public static int isolatorConsumptionChance = 30;
@ConfigProperty(
key = "geneticErrorModifier",
comment = { "Modifier that changes how severe splicer/inoculator erros are.",
"0 would result in no errors, even for awful serums.",
"2.0 would result in twice as severe errors" })
@PropDouble
public static double geneticErrorModifier = 1.0;
}
@@ -1,30 +0,0 @@
package binnie.extrabees.config;
import binnie.core.mod.config.ConfigFile;
import binnie.core.mod.config.ConfigProperty;
import binnie.core.mod.config.PropBoolean;
import binnie.core.mod.config.PropInteger;
@ConfigFile(filename = "/config/forestry/extrabees/main.conf")
public class ConfigurationMain {
@ConfigProperty(key = "canQuarryMineHives")
@PropBoolean
public static boolean canQuarryMineHives = true;
@ConfigProperty(key = "waterHiveRate")
@PropInteger
public static int waterHiveRate = 1;
@ConfigProperty(key = "rockHiveRate")
@PropInteger
public static int rockHiveRate = 2;
@ConfigProperty(key = "netherHiveRate")
@PropInteger
public static int netherHiveRate = 2;
@ConfigProperty(key = "marbleHiveRate")
@PropInteger
public static int marbleHiveRate = 2;
}
@@ -0,0 +1,28 @@
package binnie.extrabees.config;
import static binnie.extrabees.ExtraBees.EB_MODID;
import com.gtnewhorizon.gtnhlib.config.Config;
@Config(modid = EB_MODID)
public class EBConfig {
@Config.DefaultBoolean(true)
@Config.RequiresMcRestart
public static boolean canQuarryMineHives;
@Config.Comment("Attempt to generate this many hives per chunk.")
@Config.RangeInt(min = 0)
@Config.DefaultInt(1)
public static int waterHiveRate;
@Config.Comment("Attempt to generate this many hives per chunk.")
@Config.RangeInt(min = 0)
@Config.DefaultInt(2)
public static int rockHiveRate;
@Config.Comment("Attempt to generate this many hives per chunk.")
@Config.RangeInt(min = 0)
@Config.DefaultInt(2)
public static int netherHiveRate;
}
@@ -0,0 +1,16 @@
package binnie.extrabees.config;
import static binnie.extrabees.ExtraBees.EB_MODID;
import static binnie.extrabees.ExtraBees.EB_MOD_NAME;
import net.minecraft.client.gui.GuiScreen;
import com.gtnewhorizon.gtnhlib.config.ConfigException;
import com.gtnewhorizon.gtnhlib.config.SimpleGuiConfig;
public class EBConfigGUI extends SimpleGuiConfig {
public EBConfigGUI(GuiScreen parent) throws ConfigException {
super(parent, EB_MODID, EB_MOD_NAME, false, EBConfig.class, EBConfigMachines.class);
}
}
@@ -0,0 +1,13 @@
package binnie.extrabees.config;
import net.minecraft.client.gui.GuiScreen;
import com.gtnewhorizon.gtnhlib.config.SimpleGuiFactory;
public class EBConfigGUIFactory implements SimpleGuiFactory {
@Override
public Class<? extends GuiScreen> mainConfigGuiClass() {
return EBConfigGUI.class;
}
}
@@ -0,0 +1,14 @@
package binnie.extrabees.config;
import static binnie.extrabees.ExtraBees.EB_MODID;
import com.gtnewhorizon.gtnhlib.config.Config;
@Config(modid = EB_MODID)
public class EBConfigMachines {
@Config.Comment("Percentage chance of Isolator consuming bee. 0 never consumes, 1 always does.")
@Config.RangeFloat(min = 0f, max = 1f)
@Config.DefaultFloat(0.05f)
public static float isolatorConsumptionChance;
}
@@ -1,220 +0,0 @@
package binnie.extrabees.core;
import java.util.List;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraftforge.oredict.OreDictionary;
import binnie.Binnie;
import binnie.core.Mods;
import binnie.core.item.IItemMisc;
import binnie.core.util.I18N;
import binnie.extrabees.ExtraBees;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import forestry.api.recipes.RecipeManagers;
public enum ExtraBeeItems implements IItemMisc {
ScentedGear("scentedGear"),
DiamondShard("diamondShard"),
EmeraldShard("emeraldShard"),
RubyShard("rubyShard"),
SapphireShard("sapphireShard"),
LapisShard("lapisShard"),
IronDust("ironDust"),
GoldDust("goldDust"),
SilverDust("silverDust"),
PlatinumDust("platinumDust"),
CopperDust("copperDust"),
TinDust("tinDust"),
NickelDust("nickelDust"),
LeadDust("leadDust"),
ZincDust("zincDust"),
TitaniumDust("titaniumDust"),
TungstenDust("tungstenDust"),
UraniumDust("radioactiveDust"),
CoalDust("coalDust"),
RedDye("dyeRed"),
YellowDye("dyeYellow"),
BlueDye("dyeBlue"),
GreenDye("dyeGreen"),
WhiteDye("dyeWhite"),
BlackDye("dyeBlack"),
BrownDye("dyeBrown"),
ClayDust("clayDust"),
YelloriumDust("yelloriumDust"),
BlutoniumDust("blutoniumDust"),
CyaniteDust("cyaniteDust");
static {
ExtraBeeItems.TinDust.setMetal("Tin");
ExtraBeeItems.ZincDust.setMetal("Zinc");
ExtraBeeItems.CopperDust.setMetal("Copper");
ExtraBeeItems.IronDust.setMetal("Iron");
ExtraBeeItems.NickelDust.setMetal("Nickel");
ExtraBeeItems.LeadDust.setMetal("Lead");
ExtraBeeItems.SilverDust.setMetal("Silver");
ExtraBeeItems.GoldDust.setMetal("Gold");
ExtraBeeItems.PlatinumDust.setMetal("Platinum");
ExtraBeeItems.TungstenDust.setMetal("Tungsten");
ExtraBeeItems.TitaniumDust.setMetal("Titanium");
ExtraBeeItems.CoalDust.setMetal("Coal");
ExtraBeeItems.YelloriumDust.setMetal("Yellorium");
ExtraBeeItems.BlutoniumDust.setMetal("Blutonium");
ExtraBeeItems.CyaniteDust.setMetal("Cyanite");
ExtraBeeItems.DiamondShard.setGem("Diamond");
ExtraBeeItems.EmeraldShard.setGem("Emerald");
ExtraBeeItems.RubyShard.setGem("Ruby");
ExtraBeeItems.SapphireShard.setGem("Sapphire");
}
protected String name;
protected String iconPath;
protected IIcon icon;
protected String metalString;
protected String gemString;
ExtraBeeItems(String name) {
this.name = name;
this.iconPath = name;
metalString = null;
gemString = null;
}
public static void init() {
OreDictionary.registerOre("dyeRed", ExtraBeeItems.RedDye.get(1));
OreDictionary.registerOre("dyeYellow", ExtraBeeItems.YellowDye.get(1));
OreDictionary.registerOre("dyeBlue", ExtraBeeItems.BlueDye.get(1));
OreDictionary.registerOre("dyeGreen", ExtraBeeItems.GreenDye.get(1));
OreDictionary.registerOre("dyeBlack", ExtraBeeItems.BlackDye.get(1));
OreDictionary.registerOre("dyeWhite", ExtraBeeItems.WhiteDye.get(1));
OreDictionary.registerOre("dyeBrown", ExtraBeeItems.BrownDye.get(1));
}
public static void postInit() {
ItemStack lapisShard = ExtraBeeItems.LapisShard.get(1);
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, 4), lapisShard, lapisShard, lapisShard, lapisShard);
for (ExtraBeeItems item : values()) {
if (item.metalString != null) {
ItemStack dust = null;
ItemStack ingot = null;
if (!OreDictionary.getOres("ingot" + item.metalString).isEmpty()) {
ingot = OreDictionary.getOres("ingot" + item.metalString).get(0).copy();
}
if (!OreDictionary.getOres("dust" + item.metalString).isEmpty()) {
dust = OreDictionary.getOres("dust" + item.metalString).get(0).copy();
}
ItemStack input = item.get(1);
if (dust != null) {
GameRegistry.addShapelessRecipe(dust, input, input, input, input);
} else if (ingot != null) {
GameRegistry
.addShapelessRecipe(ingot, input, input, input, input, input, input, input, input, input);
} else if (item == ExtraBeeItems.CoalDust) {
GameRegistry.addShapelessRecipe(new ItemStack(Items.coal), input, input, input, input);
}
} else if (item.gemString != null) {
ItemStack gem = null;
if (!OreDictionary.getOres("gem" + item.gemString).isEmpty()) {
gem = OreDictionary.getOres("gem" + item.gemString).get(0);
}
ItemStack input2 = item.get(1);
if (gem != null) {
GameRegistry.addShapelessRecipe(
gem.copy(),
input2,
input2,
input2,
input2,
input2,
input2,
input2,
input2,
input2);
}
}
}
Item woodGear = null;
try {
woodGear = (Item) Class.forName("buildcraft.BuildCraftCore").getField("woodenGearItem").get(null);
} catch (Exception ex) {
// ignored
}
ItemStack gear = new ItemStack(Blocks.planks, 1);
if (woodGear != null) {
gear = new ItemStack(woodGear, 1);
}
RecipeManagers.carpenterManager.addRecipe(
100,
Binnie.Liquid.getLiquidStack("for.honey", 500),
null,
ExtraBeeItems.ScentedGear.get(1),
" j ",
"bgb",
" p ",
'j',
Mods.forestry.item("royalJelly"),
'b',
Mods.forestry.item("beeswax"),
'p',
Mods.forestry.item("pollen"),
'g',
gear);
}
private void setGem(String string) {
gemString = string;
}
private void setMetal(String string) {
metalString = string;
}
@Override
public boolean isActive() {
if (metalString != null) {
return !OreDictionary.getOres("ingot" + metalString).isEmpty()
|| !OreDictionary.getOres("dust" + metalString).isEmpty()
|| this == ExtraBeeItems.CoalDust;
}
return gemString == null || !OreDictionary.getOres("gem" + gemString).isEmpty();
}
@Override
public IIcon getIcon(ItemStack itemStack) {
return icon;
}
@SideOnly(Side.CLIENT)
@Override
public void registerIcons(IIconRegister register) {
icon = ExtraBees.proxy.getIcon(register, "misc/" + iconPath);
}
@Override
public void addInformation(List tooltip) {
// ignored
}
@Override
public String getName(ItemStack itemStack) {
return I18N.localise("extrabees.item." + name);
}
@Override
public ItemStack get(int count) {
return new ItemStack(ExtraBees.itemMisc, count, ordinal());
}
}
@@ -1,24 +1,26 @@
package binnie.extrabees.core;
import binnie.Binnie;
import static binnie.extrabees.item.EBItems.itemMisc;
import binnie.core.IInitializable;
import binnie.extrabees.ExtraBees;
import forestry.api.core.Tabs;
import binnie.extrabees.item.EBMisc;
public class ModuleCore implements IInitializable {
@Override
public void preInit() {
ExtraBees.itemMisc = Binnie.Item.registerMiscItems(ExtraBeeItems.values(), Tabs.tabApiculture);
// Loads EBItems.class, guaranteeing that items are init by this point
// TODO: is this needed?
itemMisc.getUnlocalizedName();
}
@Override
public void init() {
ExtraBeeItems.init();
EBMisc.init();
}
@Override
public void postInit() {
ExtraBeeItems.postInit();
EBMisc.postInit();
}
}
@@ -14,8 +14,7 @@ import net.minecraftforge.common.BiomeDictionary;
import binnie.core.Mods;
import binnie.extrabees.genetics.effect.ExtraBeesEffect;
import binnie.extrabees.genetics.requirements.RequirementPerson;
import binnie.extrabees.products.EnumHoneyComb;
import binnie.extrabees.products.ItemHoneyComb;
import binnie.extrabees.products.CombItems;
import binnie.genetics.genetics.AlleleHelper;
import forestry.api.apiculture.BeeManager;
import forestry.api.apiculture.EnumBeeChromosome;
@@ -42,7 +41,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.BARREN.get(1), 0.30f).setTemperature(EnumTemperature.HOT)
beeSpecies.addProduct(CombItems.Items.BARREN.get(1), 0.30f).setTemperature(EnumTemperature.HOT)
.setHumidity(EnumHumidity.ARID);
}
@@ -61,7 +60,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.BARREN.get(1), 0.30f).setTemperature(EnumTemperature.HOT)
beeSpecies.addProduct(CombItems.Items.BARREN.get(1), 0.30f).setTemperature(EnumTemperature.HOT)
.setHumidity(EnumHumidity.ARID);
}
@@ -74,7 +73,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.BARREN.get(1), 0.30f).setTemperature(EnumTemperature.HOT)
beeSpecies.addProduct(CombItems.Items.BARREN.get(1), 0.30f).setTemperature(EnumTemperature.HOT)
.setHumidity(EnumHumidity.ARID).setHasEffect();
}
@@ -94,8 +93,9 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.BARREN.get(1), 0.30f).addSpecialty(EnumHoneyComb.COMPOST.get(1), 0.08f)
.setTemperature(EnumTemperature.HOT).setHumidity(EnumHumidity.ARID);
beeSpecies.addProduct(CombItems.Items.BARREN.get(1), 0.30f)
.addSpecialty(CombItems.Items.COMPOST.get(1), 0.08f).setTemperature(EnumTemperature.HOT)
.setHumidity(EnumHumidity.ARID);
}
@Override
@@ -107,8 +107,9 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.BARREN.get(1), 0.25f).addSpecialty(EnumHoneyComb.SAWDUST.get(1), 0.25f)
.setTemperature(EnumTemperature.HOT).setHumidity(EnumHumidity.ARID);
beeSpecies.addProduct(CombItems.Items.BARREN.get(1), 0.25f)
.addSpecialty(CombItems.Items.SAWDUST.get(1), 0.25f).setTemperature(EnumTemperature.HOT)
.setHumidity(EnumHumidity.ARID);
}
@Override
@@ -130,8 +131,9 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.BARREN.get(1), 0.30f).addSpecialty(EnumHoneyComb.ROTTEN.get(1), 0.10f)
.setTemperature(EnumTemperature.HOT).setHumidity(EnumHumidity.ARID);
beeSpecies.addProduct(CombItems.Items.BARREN.get(1), 0.30f)
.addSpecialty(CombItems.Items.ROTTEN.get(1), 0.10f).setTemperature(EnumTemperature.HOT)
.setHumidity(EnumHumidity.ARID);
}
@Override
@@ -151,7 +153,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.BARREN.get(1), 0.30f).addSpecialty(EnumHoneyComb.BONE.get(1), 0.10f)
beeSpecies.addProduct(CombItems.Items.BARREN.get(1), 0.30f).addSpecialty(CombItems.Items.BONE.get(1), 0.10f)
.setTemperature(EnumTemperature.HOT).setHumidity(EnumHumidity.ARID);
}
@@ -172,8 +174,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.BARREN.get(1), 0.30f)
.addSpecialty(ItemHoneyComb.VanillaComb.POWDERY.get(), 0.08f).setTemperature(EnumTemperature.HOT)
beeSpecies.addProduct(CombItems.Items.BARREN.get(1), 0.30f)
.addSpecialty(CombItems.ForestryCombs.POWDERY.get(), 0.08f).setTemperature(EnumTemperature.HOT)
.setHumidity(EnumHumidity.ARID);
}
@@ -196,14 +198,14 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.30f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.30f);
}
},
STONE(ExtraBeeBranchDefinition.ROCKY, "lapis", false, new Color(0x757575), new Color(0x999999)) {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.30f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.30f);
}
@Override
@@ -215,7 +217,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.30f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.30f);
}
@Override
@@ -233,7 +235,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.30f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.30f);
}
@Override
@@ -253,7 +255,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.COPPER.get(1), 0.06f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f)
.addSpecialty(CombItems.Items.COPPER.get(1), 0.06f);
}
@Override
@@ -266,7 +269,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.TIN.get(1), 0.06f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f).addSpecialty(CombItems.Items.TIN.get(1), 0.06f);
}
@Override
@@ -279,7 +282,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.IRON.get(1), 0.05f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f).addSpecialty(CombItems.Items.IRON.get(1), 0.05f);
}
@Override
@@ -292,7 +295,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.LEAD.get(1), 0.05f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f).addSpecialty(CombItems.Items.LEAD.get(1), 0.05f);
}
@Override
@@ -307,7 +310,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.ZINC.get(1), 0.05f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f).addSpecialty(CombItems.Items.ZINC.get(1), 0.05f);
}
@Override
@@ -320,7 +323,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.TITANIUM.get(1), 0.02f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f)
.addSpecialty(CombItems.Items.TITANIUM.get(1), 0.02f);
}
@Override
@@ -332,7 +336,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.TUNGSTEN.get(1), 0.01f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f)
.addSpecialty(CombItems.Items.TUNGSTEN.get(1), 0.01f);
}
@Override
@@ -344,7 +349,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.NICKEL.get(1), 0.05f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f)
.addSpecialty(CombItems.Items.NICKEL.get(1), 0.05f);
}
@Override
@@ -359,7 +365,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.GOLD.get(1), 0.02f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f).addSpecialty(CombItems.Items.GOLD.get(1), 0.02f);
}
@Override
@@ -374,7 +380,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.SILVER.get(1), 0.02f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f)
.addSpecialty(CombItems.Items.SILVER.get(1), 0.02f);
}
@Override
@@ -390,7 +397,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.PLATINUM.get(1), 0.01f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f)
.addSpecialty(CombItems.Items.PLATINUM.get(1), 0.01f);
}
@Override
@@ -404,7 +412,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.LAPIS.get(1), 0.05f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f)
.addSpecialty(CombItems.Items.LAPIS.get(1), 0.05f);
}
@Override
@@ -423,7 +432,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.EMERALD.get(1), 0.04f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f)
.addSpecialty(CombItems.Items.EMERALD.get(1), 0.04f);
}
@Override
@@ -435,7 +445,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.RUBY.get(1), 0.03f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f).addSpecialty(CombItems.Items.RUBY.get(1), 0.03f);
}
@Override
@@ -447,7 +457,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.SAPPHIRE.get(1), 0.03f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f)
.addSpecialty(CombItems.Items.SAPPHIRE.get(1), 0.03f);
}
@Override
@@ -460,7 +471,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.STONE.get(1), 0.20f).addSpecialty(EnumHoneyComb.DIAMOND.get(1), 0.01f);
beeSpecies.addProduct(CombItems.Items.STONE.get(1), 0.20f)
.addSpecialty(CombItems.Items.DIAMOND.get(1), 0.01f);
}
@Override
@@ -474,7 +486,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.BARREN.get(1), 0.20f);
beeSpecies.addProduct(CombItems.Items.BARREN.get(1), 0.20f);
}
@Override
@@ -486,7 +498,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.BARREN.get(1), 0.20f);
beeSpecies.addProduct(CombItems.Items.BARREN.get(1), 0.20f);
}
@Override
@@ -503,8 +515,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.BARREN.get(1), 0.20f).addSpecialty(EnumHoneyComb.URANIUM.get(1), 0.02f)
.setHasEffect();
beeSpecies.addProduct(CombItems.Items.BARREN.get(1), 0.20f)
.addSpecialty(CombItems.Items.URANIUM.get(1), 0.02f).setHasEffect();
}
@Override
@@ -517,8 +529,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.BARREN.get(1), 0.20f)
.addSpecialty(EnumHoneyComb.YELLORIUM.get(1), 0.02f);
beeSpecies.addProduct(CombItems.Items.BARREN.get(1), 0.20f)
.addSpecialty(CombItems.Items.YELLORIUM.get(1), 0.02f);
}
@Override
@@ -540,7 +552,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.BARREN.get(1), 0.20f).addSpecialty(EnumHoneyComb.CYANITE.get(1), 0.01f);
beeSpecies.addProduct(CombItems.Items.BARREN.get(1), 0.20f)
.addSpecialty(CombItems.Items.CYANITE.get(1), 0.01f);
}
@Override
@@ -562,8 +575,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.BARREN.get(1), 0.20f)
.addSpecialty(EnumHoneyComb.BLUTONIUM.get(1), 0.01f);
beeSpecies.addProduct(CombItems.Items.BARREN.get(1), 0.20f)
.addSpecialty(CombItems.Items.BLUTONIUM.get(1), 0.01f);
}
@Override
@@ -587,7 +600,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.OLD.get(1), 0.30f);
beeSpecies.addProduct(CombItems.Items.OLD.get(1), 0.30f);
}
@Override
@@ -599,7 +612,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.OLD.get(1), 0.30f);
beeSpecies.addProduct(CombItems.Items.OLD.get(1), 0.30f);
}
@Override
@@ -616,7 +629,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.OLD.get(1), 0.30f);
beeSpecies.addProduct(CombItems.Items.OLD.get(1), 0.30f);
}
@Override
@@ -634,7 +647,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.OLD.get(1), 0.30f).setHasEffect();
beeSpecies.addProduct(CombItems.Items.OLD.get(1), 0.30f).setHasEffect();
}
@Override
@@ -653,7 +666,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.OLD.get(1), 0.20f).addSpecialty(EnumHoneyComb.COAL.get(1), 0.08f);
beeSpecies.addProduct(CombItems.Items.OLD.get(1), 0.20f).addSpecialty(CombItems.Items.COAL.get(1), 0.08f);
}
@Override
@@ -666,7 +679,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.OLD.get(1), 0.20f).addSpecialty(EnumHoneyComb.RESIN.get(1), 0.05f);
beeSpecies.addProduct(CombItems.Items.OLD.get(1), 0.20f).addSpecialty(CombItems.Items.RESIN.get(1), 0.05f);
}
@Override
@@ -678,7 +691,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.OLD.get(1), 0.20f).addSpecialty(EnumHoneyComb.OIL.get(1), 0.05f);
beeSpecies.addProduct(CombItems.Items.OLD.get(1), 0.20f).addSpecialty(CombItems.Items.OIL.get(1), 0.05f);
}
@Override
@@ -694,7 +707,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.OLD.get(1), 0.10f);
beeSpecies.addProduct(CombItems.Items.OLD.get(1), 0.10f);
}
@Override
@@ -706,7 +719,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.OIL.get(1), 0.10f).addSpecialty(EnumHoneyComb.FUEL.get(1), 0.04f)
beeSpecies.addProduct(CombItems.Items.OIL.get(1), 0.10f).addSpecialty(CombItems.Items.FUEL.get(1), 0.04f)
.setHasEffect();
}
@@ -719,8 +732,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.COAL.get(1), 0.10f).addSpecialty(EnumHoneyComb.CREOSOTE.get(1), 0.07f)
.setHasEffect();
beeSpecies.addProduct(CombItems.Items.COAL.get(1), 0.10f)
.addSpecialty(CombItems.Items.CREOSOTE.get(1), 0.07f).setHasEffect();
}
@Override
@@ -732,7 +745,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.RESIN.get(1), 0.10f).addSpecialty(EnumHoneyComb.LATEX.get(1), 0.05f)
beeSpecies.addProduct(CombItems.Items.RESIN.get(1), 0.10f).addSpecialty(CombItems.Items.LATEX.get(1), 0.05f)
.setHasEffect();
}
@@ -747,14 +760,14 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.WATER.get(1), 0.30f).setHumidity(EnumHumidity.DAMP);
beeSpecies.addProduct(CombItems.Items.WATER.get(1), 0.30f).setHumidity(EnumHumidity.DAMP);
}
},
RIVER(ExtraBeeBranchDefinition.AQUATIC, "flumen", true, new Color(0x83b3d4), new Color(0xffdc16)) {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.WATER.get(1), 0.30f).addSpecialty(EnumHoneyComb.CLAY.get(1), 0.20f)
beeSpecies.addProduct(CombItems.Items.WATER.get(1), 0.30f).addSpecialty(CombItems.Items.CLAY.get(1), 0.20f)
.setHumidity(EnumHumidity.DAMP);
}
@@ -767,7 +780,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.WATER.get(1), 0.30f).setHumidity(EnumHumidity.DAMP);
beeSpecies.addProduct(CombItems.Items.WATER.get(1), 0.30f).setHumidity(EnumHumidity.DAMP);
}
@Override
@@ -779,8 +792,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.WATER.get(1), 0.30f).addSpecialty(new ItemStack(Items.dye, 1, 0), 0.10f)
.setHumidity(EnumHumidity.DAMP);
beeSpecies.addProduct(CombItems.Items.WATER.get(1), 0.30f)
.addSpecialty(new ItemStack(Items.dye, 1, 0), 0.10f).setHumidity(EnumHumidity.DAMP);
}
@Override
@@ -794,7 +807,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.35f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.35f);
}
@Override
@@ -816,8 +829,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.WHEATEN.get(), 0.30f)
.addSpecialty(EnumHoneyComb.SEED.get(1), 0.10f);
beeSpecies.addProduct(CombItems.ForestryCombs.WHEATEN.get(), 0.30f)
.addSpecialty(CombItems.Items.SEED.get(1), 0.10f);
}
@Override
@@ -829,7 +842,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.35f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.35f);
}
@Override
@@ -851,7 +864,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.35f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.35f);
}
@Override
@@ -879,7 +892,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.40f)
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.40f)
.addProduct(new ItemStack(Items.sugar, 1, 0), 0.10f);
}
@@ -892,7 +905,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.40f)
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.40f)
.addProduct(new ItemStack(Items.sugar, 1, 0), 0.20f);
}
@@ -905,9 +918,9 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.30f)
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.30f)
.addProduct(new ItemStack(Items.sugar, 1, 0), 0.10f)
.addSpecialty(EnumHoneyComb.FRUIT.get(1), 0.10f);
.addSpecialty(CombItems.Items.FRUIT.get(1), 0.10f);
}
@Override
@@ -927,9 +940,9 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.30f)
.addProduct(new ItemStack(Items.sugar, 1, 0), 0.15f).addSpecialty(EnumHoneyComb.FRUIT.get(1), 0.20f)
.setHasEffect();
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.30f)
.addProduct(new ItemStack(Items.sugar, 1, 0), 0.15f)
.addSpecialty(CombItems.Items.FRUIT.get(1), 0.20f).setHasEffect();
}
@Override
@@ -951,8 +964,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.WHEATEN.get(), 0.30f)
.addSpecialty(EnumHoneyComb.ALCOHOL.get(1), 0.10f);
beeSpecies.addProduct(CombItems.ForestryCombs.WHEATEN.get(), 0.30f)
.addSpecialty(CombItems.Items.ALCOHOL.get(1), 0.10f);
}
@Override
@@ -970,8 +983,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.WHEATEN.get(), 0.30f)
.addSpecialty(EnumHoneyComb.MILK.get(1), 0.10f);
beeSpecies.addProduct(CombItems.ForestryCombs.WHEATEN.get(), 0.30f)
.addSpecialty(CombItems.Items.MILK.get(1), 0.10f);
}
@Override
@@ -983,8 +996,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.WHEATEN.get(), 0.30f)
.addSpecialty(EnumHoneyComb.COFFEE.get(1), 0.08f);
beeSpecies.addProduct(CombItems.ForestryCombs.WHEATEN.get(), 0.30f)
.addSpecialty(CombItems.Items.COFFEE.get(1), 0.08f);
}
@Override
@@ -1000,7 +1013,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.MOSSY.get(), 0.30f).setHumidity(EnumHumidity.DAMP);
beeSpecies.addProduct(CombItems.ForestryCombs.MOSSY.get(), 0.30f).setHumidity(EnumHumidity.DAMP);
}
@Override
@@ -1018,7 +1031,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.MOSSY.get(), 0.30f);
beeSpecies.addProduct(CombItems.ForestryCombs.MOSSY.get(), 0.30f);
}
@Override
@@ -1036,8 +1049,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.MOSSY.get(), 0.30f)
.addSpecialty(EnumHoneyComb.FUNGAL.get(1), 0.15f).setHasEffect();
beeSpecies.addProduct(CombItems.ForestryCombs.MOSSY.get(), 0.30f)
.addSpecialty(CombItems.Items.FUNGAL.get(1), 0.15f).setHasEffect();
}
@Override
@@ -1066,7 +1079,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.SIMMERING.get(), 0.25f)
beeSpecies.addProduct(CombItems.ForestryCombs.SIMMERING.get(), 0.25f)
.setTemperature(EnumTemperature.HELLISH).setHumidity(EnumHumidity.ARID);
}
@@ -1079,7 +1092,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.SIMMERING.get(), 0.25f)
beeSpecies.addProduct(CombItems.ForestryCombs.SIMMERING.get(), 0.25f)
.setTemperature(EnumTemperature.HELLISH).setHumidity(EnumHumidity.ARID);
}
@@ -1094,8 +1107,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.SIMMERING.get(), 0.25f)
.addSpecialty(EnumHoneyComb.BLAZE.get(1), 0.10f).setTemperature(EnumTemperature.HELLISH)
beeSpecies.addProduct(CombItems.ForestryCombs.SIMMERING.get(), 0.25f)
.addSpecialty(CombItems.Items.BLAZE.get(1), 0.10f).setTemperature(EnumTemperature.HELLISH)
.setHumidity(EnumHumidity.ARID).setHasEffect();
}
@@ -1109,7 +1122,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.GLOWSTONE.get(1), 0.15f).setTemperature(EnumTemperature.HELLISH)
beeSpecies.addProduct(CombItems.Items.GLOWSTONE.get(1), 0.15f).setTemperature(EnumTemperature.HELLISH)
.setHumidity(EnumHumidity.ARID);
}
@@ -1129,7 +1142,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.SILKY.get(), 0.25f).setHumidity(EnumHumidity.DAMP)
beeSpecies.addProduct(CombItems.ForestryCombs.SILKY.get(), 0.25f).setHumidity(EnumHumidity.DAMP)
.setTemperature(EnumTemperature.WARM);
}
@@ -1142,7 +1155,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.SILKY.get(), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.SILKY.get(), 0.25f);
}
@Override
@@ -1159,8 +1172,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.SILKY.get(), 0.25f)
.addSpecialty(EnumHoneyComb.VENOMOUS.get(1), 0.12f).setHumidity(EnumHumidity.DAMP)
beeSpecies.addProduct(CombItems.ForestryCombs.SILKY.get(), 0.25f)
.addSpecialty(CombItems.Items.VENOMOUS.get(1), 0.12f).setHumidity(EnumHumidity.DAMP)
.setTemperature(EnumTemperature.WARM).setHasEffect();
}
@@ -1180,7 +1193,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.SILKY.get(), 0.25f).setHumidity(EnumHumidity.DAMP)
beeSpecies.addProduct(CombItems.ForestryCombs.SILKY.get(), 0.25f).setHumidity(EnumHumidity.DAMP)
.setTemperature(EnumTemperature.WARM);
}
@@ -1193,7 +1206,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.SILKY.get(), 0.25f).setHumidity(EnumHumidity.DAMP)
beeSpecies.addProduct(CombItems.ForestryCombs.SILKY.get(), 0.25f).setHumidity(EnumHumidity.DAMP)
.setTemperature(EnumTemperature.WARM);
}
@@ -1211,8 +1224,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.SILKY.get(), 0.25f)
.addSpecialty(EnumHoneyComb.SLIME.get(1), 0.12f).setHasEffect();
beeSpecies.addProduct(CombItems.ForestryCombs.SILKY.get(), 0.25f)
.addSpecialty(CombItems.Items.SLIME.get(1), 0.12f).setHasEffect();
}
@Override
@@ -1231,7 +1244,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.SILKY.get(), 0.20f).setHumidity(EnumHumidity.DAMP)
beeSpecies.addProduct(CombItems.ForestryCombs.SILKY.get(), 0.20f).setHumidity(EnumHumidity.DAMP)
.setTemperature(EnumTemperature.WARM);
}
@@ -1244,8 +1257,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.SILKY.get(), 0.25f)
.addSpecialty(EnumHoneyComb.ACIDIC.get(1), 0.03f).setHumidity(EnumHumidity.DAMP)
beeSpecies.addProduct(CombItems.ForestryCombs.SILKY.get(), 0.25f)
.addSpecialty(CombItems.Items.ACIDIC.get(1), 0.03f).setHumidity(EnumHumidity.DAMP)
.setTemperature(EnumTemperature.WARM);
}
@@ -1258,8 +1271,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.SILKY.get(), 0.20f)
.addSpecialty(EnumHoneyComb.ACIDIC.get(1), 0.16f).setHumidity(EnumHumidity.DAMP)
beeSpecies.addProduct(CombItems.ForestryCombs.SILKY.get(), 0.20f)
.addSpecialty(CombItems.Items.ACIDIC.get(1), 0.16f).setHumidity(EnumHumidity.DAMP)
.setTemperature(EnumTemperature.WARM).setHasEffect();
}
@@ -1274,7 +1287,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.REDSTONE.get(1), 0.10f);
beeSpecies.addProduct(CombItems.Items.REDSTONE.get(1), 0.10f);
}
@Override
@@ -1286,7 +1299,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.REDSTONE.get(1), 0.12f);
beeSpecies.addProduct(CombItems.Items.REDSTONE.get(1), 0.12f);
}
@Override
@@ -1298,8 +1311,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.REDSTONE.get(1), 0.20f)
.addSpecialty(EnumHoneyComb.IC2ENERGY.get(1), 0.08f).setHasEffect();
beeSpecies.addProduct(CombItems.Items.REDSTONE.get(1), 0.20f)
.addSpecialty(CombItems.Items.IC2ENERGY.get(1), 0.08f).setHasEffect();
}
@Override
@@ -1319,7 +1332,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.FROZEN.get(), 0.25f).setTemperature(EnumTemperature.ICY);
beeSpecies.addProduct(CombItems.ForestryCombs.FROZEN.get(), 0.25f).setTemperature(EnumTemperature.ICY);
}
@Override
@@ -1338,8 +1351,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.FROZEN.get(), 0.20f)
.addSpecialty(EnumHoneyComb.GLACIAL.get(1), 0.10f).setTemperature(EnumTemperature.ICY);
beeSpecies.addProduct(CombItems.ForestryCombs.FROZEN.get(), 0.20f)
.addSpecialty(CombItems.Items.GLACIAL.get(1), 0.10f).setTemperature(EnumTemperature.ICY);
}
@Override
@@ -1360,7 +1373,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.SHADOW.get(1), 0.05f).setTemperature(EnumTemperature.HELLISH)
beeSpecies.addProduct(CombItems.Items.SHADOW.get(1), 0.05f).setTemperature(EnumTemperature.HELLISH)
.setHumidity(EnumHumidity.ARID);
}
@@ -1373,7 +1386,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.SHADOW.get(1), 0.10f).setTemperature(EnumTemperature.HELLISH)
beeSpecies.addProduct(CombItems.Items.SHADOW.get(1), 0.10f).setTemperature(EnumTemperature.HELLISH)
.setHumidity(EnumHumidity.ARID);
}
@@ -1386,7 +1399,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.SHADOW.get(1), 0.25f).setTemperature(EnumTemperature.HELLISH)
beeSpecies.addProduct(CombItems.Items.SHADOW.get(1), 0.25f).setTemperature(EnumTemperature.HELLISH)
.setHumidity(EnumHumidity.ARID).setHasEffect();
}
@@ -1407,8 +1420,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.RED.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.RED.get(1), 0.25f);
}
@Override
@@ -1420,8 +1433,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.YELLOW.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.YELLOW.get(1), 0.25f);
}
@Override
@@ -1433,8 +1446,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.BLUE.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.BLUE.get(1), 0.25f);
}
@Override
@@ -1446,8 +1459,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.GREEN.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.GREEN.get(1), 0.25f);
}
@Override
@@ -1459,8 +1472,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.BLACK.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.BLACK.get(1), 0.25f);
}
@Override
@@ -1472,8 +1485,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.WHITE.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.WHITE.get(1), 0.25f);
}
@Override
@@ -1485,8 +1498,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.BROWN.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.BROWN.get(1), 0.25f);
}
@Override
@@ -1500,8 +1513,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.ORANGE.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.ORANGE.get(1), 0.25f);
}
@Override
@@ -1513,8 +1526,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.CYAN.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.CYAN.get(1), 0.25f);
}
@Override
@@ -1526,8 +1539,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.PURPLE.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.PURPLE.get(1), 0.25f);
}
@Override
@@ -1539,8 +1552,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.GRAY.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.GRAY.get(1), 0.25f);
}
@Override
@@ -1552,8 +1565,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.LIGHTBLUE.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.LIGHTBLUE.get(1), 0.25f);
}
@Override
@@ -1565,8 +1578,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.PINK.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.PINK.get(1), 0.25f);
}
@Override
@@ -1578,8 +1591,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.LIMEGREEN.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.LIMEGREEN.get(1), 0.25f);
}
@Override
@@ -1593,8 +1606,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.MAGENTA.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.MAGENTA.get(1), 0.25f);
}
@Override
@@ -1606,8 +1619,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.75f)
.addSpecialty(EnumHoneyComb.LIGHTGRAY.get(1), 0.25f);
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.75f)
.addSpecialty(CombItems.Items.LIGHTGRAY.get(1), 0.25f);
}
@Override
@@ -1644,9 +1657,9 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.HONEY.get(), 0.30f)
.addSpecialty(Mods.forestry.stack("pollen"), 0.20f).addSpecialty(EnumHoneyComb.PURPLE.get(1), 0.15f)
.setIsNotCounted().setHasEffect();
beeSpecies.addProduct(CombItems.ForestryCombs.HONEY.get(), 0.30f)
.addSpecialty(Mods.forestry.stack("pollen"), 0.20f)
.addSpecialty(CombItems.Items.PURPLE.get(1), 0.15f).setIsNotCounted().setHasEffect();
}
@Override
@@ -1660,7 +1673,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(new ItemStack(Items.cake, 1), 1f)
.addSpecialty(Mods.forestry.stack("pollenFertile"), 0.50f)
.addSpecialty(EnumHoneyComb.MILK.get(1), 0.55f).setIsNotCounted().setHasEffect();
.addSpecialty(CombItems.Items.MILK.get(1), 0.55f).setIsNotCounted().setHasEffect();
}
protected void setAlleles(IAllele[] template) {
@@ -1722,7 +1735,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(EnumHoneyComb.SALTPETER.get(1), 0.12f).setTemperature(EnumTemperature.HOT)
beeSpecies.addProduct(CombItems.Items.SALTPETER.get(1), 0.12f).setTemperature(EnumTemperature.HOT)
.setHumidity(EnumHumidity.ARID);
}
@@ -1751,9 +1764,9 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.QUARTZ.get(), 0.25f)
.addSpecialty(EnumHoneyComb.CERTUS.get(1), 0.15f)
.addSpecialty(EnumHoneyComb.ENDERPEARL.get(1), 0.15f);
beeSpecies.addProduct(CombItems.ForestryCombs.QUARTZ.get(), 0.25f)
.addSpecialty(CombItems.Items.CERTUS.get(1), 0.15f)
.addSpecialty(CombItems.Items.ENDERPEARL.get(1), 0.15f);
}
@Override
@@ -1777,7 +1790,7 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.QUARTZ.get(), 0.25f).setTemperature(EnumTemperature.COLD);
beeSpecies.addProduct(CombItems.ForestryCombs.QUARTZ.get(), 0.25f).setTemperature(EnumTemperature.COLD);
}
@Override
@@ -1789,8 +1802,8 @@ public enum ExtraBeeDefinition implements IBeeDefinition {
@Override
protected void setSpeciesProperties(IAlleleBeeSpeciesCustom beeSpecies) {
beeSpecies.addProduct(ItemHoneyComb.VanillaComb.QUARTZ.get(), 0.25f)
.addSpecialty(EnumHoneyComb.CERTUS.get(1), 0.05f).setTemperature(EnumTemperature.COLD);
beeSpecies.addProduct(CombItems.ForestryCombs.QUARTZ.get(), 0.25f)
.addSpecialty(CombItems.Items.CERTUS.get(1), 0.05f).setTemperature(EnumTemperature.COLD);
}
@Override
@@ -9,7 +9,7 @@ import binnie.core.IInitializable;
import binnie.extrabees.ExtraBees;
import binnie.extrabees.genetics.effect.BlockEctoplasm;
import binnie.extrabees.genetics.effect.ExtraBeesEffect;
import binnie.extrabees.genetics.items.ItemDictionary;
import binnie.extrabees.item.EBItems;
import cpw.mods.fml.common.registry.GameRegistry;
import forestry.api.apiculture.IAlleleBeeSpecies;
import forestry.api.genetics.IGenome;
@@ -24,8 +24,6 @@ public class ModuleGenetics implements IInitializable {
@Override
public void preInit() {
ExtraBees.dictionary = new ItemDictionary();
ExtraBees.ectoplasm = new BlockEctoplasm();
GameRegistry.registerBlock(ExtraBees.ectoplasm, "ectoplasm");
}
@@ -43,7 +41,7 @@ public class ModuleGenetics implements IInitializable {
100,
Binnie.Liquid.getLiquidStack("water", 2000),
null,
new ItemStack(ExtraBees.dictionary),
new ItemStack(EBItems.dictionary),
"X#X",
"YEY",
"RDR",
@@ -13,6 +13,7 @@ import net.minecraft.world.World;
import binnie.core.util.I18N;
import binnie.extrabees.ExtraBees;
import binnie.extrabees.core.ExtraBeeGUID;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import forestry.api.core.Tabs;
@@ -22,9 +23,13 @@ public class ItemDictionary extends Item {
protected IIcon iconMaster;
public ItemDictionary() {
final String name = "dictionary";
setCreativeTab(Tabs.tabApiculture);
setUnlocalizedName("dictionary");
setUnlocalizedName(name);
setMaxStackSize(1);
GameRegistry.registerItem(this, name);
}
@Override
@@ -70,7 +75,7 @@ public class ItemDictionary extends Item {
@Override
public String getItemStackDisplayName(ItemStack stack) {
return (stack.getItemDamage() == 0) ? I18N.localise("extrabees.item.database")
: I18N.localise("extrabees.item.masterDatabase");
return (stack.getItemDamage() == 0) ? I18N.localise("extrabees.item.database.name")
: I18N.localise("extrabees.item.masterDatabase.name");
}
}
@@ -0,0 +1,18 @@
package binnie.extrabees.item;
import net.minecraft.item.Item;
import binnie.core.item.DamageItems;
import binnie.extrabees.genetics.items.ItemDictionary;
import binnie.extrabees.products.CombItems;
import binnie.extrabees.products.DropItems;
import binnie.extrabees.products.Propolis;
public class EBItems {
public final static DamageItems itemMisc = new EBMisc();
public final static DamageItems comb = new CombItems();
public final static DamageItems propolis = new Propolis();
public final static DamageItems honeyDrop = new DropItems();
public static Item dictionary = new ItemDictionary();
}
@@ -0,0 +1,199 @@
package binnie.extrabees.item;
import static binnie.extrabees.ExtraBees.EB_MODID;
import static binnie.extrabees.item.EBItems.itemMisc;
import java.util.Arrays;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraftforge.oredict.OreDictionary;
import binnie.Binnie;
import binnie.core.Mods;
import binnie.core.item.DamageItems;
import cpw.mods.fml.common.registry.GameRegistry;
import forestry.api.core.Tabs;
import forestry.api.recipes.RecipeManagers;
public class EBMisc extends DamageItems {
public enum Items {
ScentedGear("scentedGear"),
DiamondShard("diamondShard", "Diamond", false),
EmeraldShard("emeraldShard", "Emerald", false),
RubyShard("rubyShard", "Ruby", false),
SapphireShard("sapphireShard", "Sapphire", false),
LapisShard("lapisShard"),
IronDust("ironDust", "Iron", true),
GoldDust("goldDust", "Gold", true),
SilverDust("silverDust", "Silver", true),
PlatinumDust("platinumDust", "Platinum", true),
CopperDust("copperDust", "Copper", true),
TinDust("tinDust", "Tin", true),
NickelDust("nickelDust", "Nickel", true),
LeadDust("leadDust", "Lead", true),
ZincDust("zincDust", "Zinc", true),
TitaniumDust("titaniumDust", "Titanium", true),
TungstenDust("tungstenDust", "Tungsten", true),
UraniumDust("radioactiveDust"),
// Don't look at me, it was like this when I got here
CoalDust("coalDust", "Coal", true),
RedDye("dyeRed"),
YellowDye("dyeYellow"),
BlueDye("dyeBlue"),
GreenDye("dyeGreen"),
WhiteDye("dyeWhite"),
BlackDye("dyeBlack"),
BrownDye("dyeBrown"),
ClayDust("clayDust"),
YelloriumDust("yelloriumDust", "Yellorium", true),
BlutoniumDust("blutoniumDust", "Blutonium", true),
CyaniteDust("cyaniteDust", "Cyanite", true);
final String name;
final String resourceString;
final boolean isMetal;
private static final Items[] VALUES = values();
private static final int[] binnieToVanillaColors = { 1, 11, 4, 2, 0, 15, 3, 14, 6, 5, 8, 12, 9, 10, 13, 7 };
Items(String name) {
this(name, null, false);
}
Items(String name, String resourceString, boolean isMetal) {
this.name = name;
this.resourceString = resourceString;
this.isMetal = isMetal;
}
public ItemStack get(int count) {
return itemMisc.getStack(count, ordinal());
}
/**
* @param binnieID The index of colors used by Binnie's mods, starting with red = 0
* @return An itemstack containing one dye item, preferring Binnie's when possible
*/
public static ItemStack getDye(int binnieID) {
final int i = binnieToVanillaColors[binnieID];
return switch (i) {
case 0 -> BlackDye.get(1);
case 1 -> RedDye.get(1);
case 2 -> GreenDye.get(1);
case 3 -> BrownDye.get(1);
case 4 -> BlueDye.get(1);
case 11 -> YellowDye.get(1);
case 15 -> WhiteDye.get(1);
default -> new ItemStack(net.minecraft.init.Items.dye, 1, i);
};
}
}
protected EBMisc() {
super(Tabs.tabApiculture, EB_MODID, Arrays.stream(Items.VALUES).map(i -> i.name).toArray(String[]::new));
}
@Override
public String getIconName(int damage) {
return "misc/" + super.getIconName(damage);
}
public static void init() {
OreDictionary.registerOre("dyeRed", Items.RedDye.get(1));
OreDictionary.registerOre("dyeYellow", Items.YellowDye.get(1));
OreDictionary.registerOre("dyeBlue", Items.BlueDye.get(1));
OreDictionary.registerOre("dyeGreen", Items.GreenDye.get(1));
OreDictionary.registerOre("dyeBlack", Items.BlackDye.get(1));
OreDictionary.registerOre("dyeWhite", Items.WhiteDye.get(1));
OreDictionary.registerOre("dyeBrown", Items.BrownDye.get(1));
}
public static void postInit() {
ItemStack lapisShard = Items.LapisShard.get(1);
GameRegistry.addShapelessRecipe(
new ItemStack(net.minecraft.init.Items.dye, 1, 4),
lapisShard,
lapisShard,
lapisShard,
lapisShard);
for (Items item : Items.VALUES) {
if (item.resourceString != null && item.isMetal) {
ItemStack dust = null;
ItemStack ingot = null;
if (!OreDictionary.getOres("ingot" + item.resourceString).isEmpty()) {
ingot = OreDictionary.getOres("ingot" + item.resourceString).get(0).copy();
}
if (!OreDictionary.getOres("dust" + item.resourceString).isEmpty()) {
dust = OreDictionary.getOres("dust" + item.resourceString).get(0).copy();
}
ItemStack input = item.get(1);
if (dust != null) {
GameRegistry.addShapelessRecipe(dust, input, input, input, input);
} else if (ingot != null) {
GameRegistry
.addShapelessRecipe(ingot, input, input, input, input, input, input, input, input, input);
} else if (item == Items.CoalDust) {
GameRegistry.addShapelessRecipe(
new ItemStack(net.minecraft.init.Items.coal),
input,
input,
input,
input);
}
} else if (item.resourceString != null) {
ItemStack gem = null;
if (!OreDictionary.getOres("gem" + item.resourceString).isEmpty()) {
gem = OreDictionary.getOres("gem" + item.resourceString).get(0);
}
ItemStack input2 = item.get(1);
if (gem != null) {
GameRegistry.addShapelessRecipe(
gem.copy(),
input2,
input2,
input2,
input2,
input2,
input2,
input2,
input2,
input2);
}
}
}
Item woodGear = null;
try {
woodGear = (Item) Class.forName("buildcraft.BuildCraftCore").getField("woodenGearItem").get(null);
} catch (Exception ex) {
// ignored
}
ItemStack gear = new ItemStack(Blocks.planks, 1);
if (woodGear != null) {
gear = new ItemStack(woodGear, 1);
}
RecipeManagers.carpenterManager.addRecipe(
100,
Binnie.Liquid.getLiquidStack("for.honey", 500),
null,
Items.ScentedGear.get(1),
" j ",
"bgb",
" p ",
'j',
Mods.forestry.item("royalJelly"),
'b',
Mods.forestry.item("beeswax"),
'p',
Mods.forestry.item("pollen"),
'g',
gear);
}
}
@@ -10,14 +10,4 @@ public class ModuleLiquids implements IInitializable {
public void preInit() {
Binnie.Liquid.createLiquids(ExtraBeeLiquid.values(), ItemFluidContainer.LiquidExtraBee);
}
@Override
public void init() {
// ignored
}
@Override
public void postInit() {
// ignored
}
}
@@ -0,0 +1,445 @@
package binnie.extrabees.products;
import static binnie.extrabees.ExtraBees.EB_MODID;
import static binnie.extrabees.item.EBItems.comb;
import static binnie.extrabees.item.EBMisc.Items.BlutoniumDust;
import static binnie.extrabees.item.EBMisc.Items.CoalDust;
import static binnie.extrabees.item.EBMisc.Items.CopperDust;
import static binnie.extrabees.item.EBMisc.Items.CyaniteDust;
import static binnie.extrabees.item.EBMisc.Items.DiamondShard;
import static binnie.extrabees.item.EBMisc.Items.EmeraldShard;
import static binnie.extrabees.item.EBMisc.Items.GoldDust;
import static binnie.extrabees.item.EBMisc.Items.IronDust;
import static binnie.extrabees.item.EBMisc.Items.LeadDust;
import static binnie.extrabees.item.EBMisc.Items.NickelDust;
import static binnie.extrabees.item.EBMisc.Items.PlatinumDust;
import static binnie.extrabees.item.EBMisc.Items.RubyShard;
import static binnie.extrabees.item.EBMisc.Items.SapphireShard;
import static binnie.extrabees.item.EBMisc.Items.SilverDust;
import static binnie.extrabees.item.EBMisc.Items.TinDust;
import static binnie.extrabees.item.EBMisc.Items.TitaniumDust;
import static binnie.extrabees.item.EBMisc.Items.TungstenDust;
import static binnie.extrabees.item.EBMisc.Items.YelloriumDust;
import static binnie.extrabees.item.EBMisc.Items.ZincDust;
import static net.minecraft.init.Items.dye;
import java.awt.Color;
import java.util.Arrays;
import java.util.List;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraftforge.oredict.OreDictionary;
import binnie.core.Mods;
import binnie.core.item.DamageItems;
import binnie.extrabees.item.EBItems;
import binnie.extrabees.item.EBMisc;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import forestry.api.core.Tabs;
import forestry.api.recipes.RecipeManagers;
import it.unimi.dsi.fastutil.objects.Object2FloatOpenHashMap;
public class CombItems extends DamageItems {
public enum Items {
BARREN("barren", new Color(0x736c44), new Color(0xc2bea7)),
ROTTEN("rotten", new Color(0x3e5221), new Color(0xb1cc89)),
BONE("bone", new Color(0xc4c4af), new Color(0xdedec1)),
OIL("oil", new Color(0x060608), new Color(0x2c2b36)),
COAL("coal", new Color(0x9e9478), new Color(0x38311e)),
FUEL("fuel", new Color(0x9c6f40), new Color(0xffc400)),
WATER("water", new Color(0x2732cf), new Color(0x79a8c9)),
MILK("milk", new Color(0xd7d9c7), new Color(0xffffff)),
FRUIT("fruit", new Color(0x7d2934), new Color(0xdb4f62)),
SEED("seed", new Color(0x344f33), new Color(0x71cc6e)),
ALCOHOL("alcohol", new Color(0x418521), new Color(0xded94e)),
STONE("stone", new Color(0x8c8c91), new Color(0xc6c6cc)),
REDSTONE("redstone", new Color(0xfa9696), new Color(0xe61010)),
RESIN("resin", new Color(0xffc74f), new Color(0xc98a00)),
IC2ENERGY("energy", new Color(0xe9f50f), new Color(0x20b3c9)),
IRON("iron", new Color(0x363534), new Color(0xa87058)),
GOLD("gold", new Color(0x363534), new Color(0xe6cc0b)),
COPPER("copper", new Color(0x363534), new Color(0xd16308)),
TIN("tin", new Color(0x363534), new Color(0xbdb1bd)),
SILVER("silver", new Color(0x363534), new Color(0xdbdbdb)),
URANIUM("uranium", new Color(0x1eff00), new Color(0x41ab33)),
CLAY("clay", new Color(0x6b563a), new Color(0xb0c0d6)),
OLD("old", new Color(0x453314), new Color(0xb39664)),
FUNGAL("fungal", new Color(0x6e654b), new Color(0x2b9443)),
CREOSOTE("creosote", new Color(0x9c810c), new Color(0xbdaa57)),
LATEX("latex", new Color(0x595541), new Color(0xa8a285)),
ACIDIC("acidic", new Color(0x348543), new Color(0x14f73e)),
VENOMOUS("venomous", new Color(0x7d187d), new Color(0xff33ff)),
SLIME("slime", new Color(0x3b473c), new Color(0x80d185)),
BLAZE("blaze", new Color(0xff6a00), new Color(0xffcc00)),
COFFEE("coffee", new Color(0x54381d), new Color(0xb37f4b)),
GLACIAL("glacial", new Color(0x4e8787), new Color(0xcbf2f2)),
SHADOW("shadow", new Color(0x000000), new Color(0x361835)),
LEAD("lead", new Color(0x363534), new Color(0x9a809c)),
ZINC("zinc", new Color(0x363534), new Color(0xedebff)),
TITANIUM("titanium", new Color(0x363534), new Color(0xb0aae3)),
TUNGSTEN("tungsten", new Color(0x363534), new Color(0x131214)),
PLATINUM("platinum", new Color(0x363534), new Color(0x9a809c)),
LAPIS("lapis", new Color(0x363534), new Color(0x3d2cdb)),
EMERALD("emerald", new Color(0x363534), new Color(0x1cff03)),
RUBY("ruby", new Color(0x363534), new Color(0xd60000)),
SAPPHIRE("sapphire", new Color(0x363534), new Color(0xa47ff)),
DIAMOND("diamond", new Color(0x363534), new Color(0x7fbdfa)),
RED("red", new Color(0xcc4c4c), new Color(0xff0000)),
YELLOW("yellow", new Color(0xe5e533), new Color(0xffdd00)),
BLUE("blue", new Color(0x99b2f2), new Color(0x0022ff)),
GREEN("green", new Color(0x667f33), new Color(0x009900)),
BLACK("black", new Color(0x191919), new Color(0x575757)),
WHITE("white", new Color(0xd6d6d6), new Color(0xffffff)),
BROWN("brown", new Color(0x7f664c), new Color(0x5c350f)),
ORANGE("orange", new Color(0xf2b233), new Color(0xff9d00)),
CYAN("cyan", new Color(0x4c99b2), new Color(0x00ffe5)),
PURPLE("purple", new Color(0xb266e5), new Color(0xae00ff)),
GRAY("gray", new Color(0x4c4c4c), new Color(0xbababa)),
LIGHTBLUE("lightblue", new Color(0x99b2f2), new Color(0x009dff)),
PINK("pink", new Color(0xf2b2cc), new Color(0xff80df)),
LIMEGREEN("limegreen", new Color(0x7fcc19), new Color(0x00ff08)),
MAGENTA("magenta", new Color(0xe57fd8), new Color(0xff00cc)),
LIGHTGRAY("lightgray", new Color(0x999999), new Color(0xc9c9c9)),
NICKEL("nickel", new Color(0x363534), new Color(0xffdefc)),
GLOWSTONE("glowstone", new Color(0xa69c5e), new Color(0xe0c409)),
SALTPETER("saltpeter", new Color(0xa69c5e), new Color(0xe0c409)),
COMPOST("compost", new Color(0x423308), new Color(0x6b5e3b)),
SAWDUST("sawdust", new Color(0xbfaa71), new Color(0xf2d37e)),
CERTUS("certus", new Color(0xc6d0ff), new Color(0x394d63)),
ENDERPEARL("enderpearl", new Color(0x349786), new Color(0x32620)),
YELLORIUM("yellorium", new Color(0x27204d), new Color(14019840)),
CYANITE("cyanite", new Color(0x27204d), new Color(0x86ed)),
BLUTONIUM("blutonium", new Color(0x27204d), new Color(0x1b00e6));
final String name;
final int primary;
final int secondary;
final Object2FloatOpenHashMap<ItemStack> products = new Object2FloatOpenHashMap<>();
public static final Items[] VALUES = values();
Items(String name, Color primary, Color secondary) {
this.name = name;
this.primary = primary.getRGB();
this.secondary = secondary.getRGB();
}
public ItemStack get(int count) {
return comb.getStack(count, ordinal());
}
public void addRecipe() {
RecipeManagers.centrifugeManager.addRecipe(20, get(1), products);
}
public void addProduct(ItemStack item, float chance) {
if (item == null) return;
products.put(item.copy(), chance);
}
public void copyProducts(Items comb) {
products.putAll(comb.products);
}
}
public enum ForestryCombs {
HONEY,
COCOA,
SIMMERING,
STRINGY,
FROZEN,
DRIPPING,
SILKY,
PARCHED,
MYSTERIOUS,
IRRADIATED,
POWDERY,
REDDENED,
DARKENED,
OMEGA,
WHEATEN,
MOSSY,
QUARTZ;
public ItemStack get() {
return new ItemStack(Mods.forestry.item("beeCombs"), 1, ordinal());
}
}
private IIcon cells;
private IIcon outline;
public CombItems() {
super(
Tabs.tabApiculture,
EB_MODID,
"honeyComb",
true,
Arrays.stream(Items.VALUES).map(i -> i.name).toArray(String[]::new));
setMaxStackSize(64);
setMaxDamage(0);
}
@Override
public String getUnlocalizedName(String name) {
return "extrabees.item.comb." + name;
}
@Override
@SideOnly(Side.CLIENT)
public boolean requiresMultipleRenderPasses() {
return true;
}
@Override
public int getColorFromItemStack(ItemStack stack, int indexColor) {
final int damage = stack.getItemDamage();
final Items comb = damage < Items.VALUES.length ? Items.VALUES[stack.getItemDamage()] : null;
if (comb == null) return 0xffffff;
return indexColor == 0 ? comb.primary : comb.secondary;
}
@Override
@SideOnly(Side.CLIENT)
public IIcon getIconFromDamageForRenderPass(int damage, int pass) {
return pass > 0 ? cells : outline;
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister register) {
cells = register.registerIcon("forestry:beeCombs.0");
outline = register.registerIcon("forestry:beeCombs.1");
}
public static void addSubtypes() {
final ItemStack beeswax = Mods.forestry.stack("beeswax");
final ItemStack honeyDrop = Mods.forestry.stack("honeyDrop");
OreDictionary.registerOre("gemLapis", new ItemStack(dye, 1, 4));
Items.BARREN.addProduct(beeswax, 1.00f);
Items.BARREN.addProduct(honeyDrop, 0.50f);
Items.ROTTEN.addProduct(beeswax, 0.20f);
Items.ROTTEN.addProduct(honeyDrop, 0.20f);
Items.ROTTEN.addProduct(new ItemStack(net.minecraft.init.Items.rotten_flesh, 1, 0), 0.80f);
Items.BONE.addProduct(beeswax, 0.20f);
Items.BONE.addProduct(honeyDrop, 0.20f);
Items.BONE.addProduct(new ItemStack(dye, 1, 15), 0.80f);
Items.OIL.addProduct(Propolis.Items.OIL.get(1), 0.60f);
Items.OIL.addProduct(honeyDrop, 0.75f);
Items.COAL.addProduct(beeswax, 0.80f);
Items.COAL.addProduct(honeyDrop, 0.75f);
Items.COAL.addProduct(CoalDust.get(1), 1.00f);
Items.WATER.addProduct(Propolis.Items.WATER.get(1), 1.00f);
Items.WATER.addProduct(honeyDrop, 0.90f);
Items.STONE.addProduct(beeswax, 0.50f);
Items.STONE.addProduct(honeyDrop, 0.25f);
Items.MILK.addProduct(DropItems.Items.MILK.get(1), 1.00f);
Items.MILK.addProduct(honeyDrop, 0.90f);
Items.FRUIT.addProduct(DropItems.Items.APPLE.get(1), 1.00f);
Items.FRUIT.addProduct(honeyDrop, 0.90f);
Items.SEED.addProduct(DropItems.Items.SEED.get(1), 1.00f);
Items.SEED.addProduct(honeyDrop, 0.90f);
Items.ALCOHOL.addProduct(DropItems.Items.ALCOHOL.get(1), 1.00f);
Items.ALCOHOL.addProduct(honeyDrop, 0.90f);
Items.FUEL.addProduct(Propolis.Items.FUEL.get(1), 0.60f);
Items.FUEL.addProduct(honeyDrop, 0.50f);
Items.CREOSOTE.addProduct(Propolis.Items.CREOSOTE.get(1), 0.70f);
Items.CREOSOTE.addProduct(honeyDrop, 0.50f);
Items.LATEX.addProduct(honeyDrop, 0.50f);
Items.LATEX.addProduct(beeswax, 0.85f);
if (!OreDictionary.getOres("itemRubber").isEmpty()) {
Items.LATEX.addProduct(OreDictionary.getOres("itemRubber").get(0), 1.00f);
}
Items.REDSTONE.addProduct(beeswax, 0.80f);
Items.REDSTONE.addProduct(new ItemStack(net.minecraft.init.Items.redstone, 1, 0), 1.00f);
Items.REDSTONE.addProduct(honeyDrop, 0.50f);
Items.RESIN.addProduct(beeswax, 1.00f);
Items.RESIN.addProduct(Mods.ic2.stack("itemHarz"), 1.00f);
Items.RESIN.addProduct(Mods.ic2.stack("itemHarz"), 0.50f);
Items.IC2ENERGY.addProduct(beeswax, 0.80f);
Items.IC2ENERGY.addProduct(new ItemStack(net.minecraft.init.Items.redstone, 1, 0), 0.75f);
Items.IC2ENERGY.addProduct(DropItems.Items.ENERGY.get(1), 1.00f);
Items.IRON.copyProducts(Items.STONE);
Items.IRON.addProduct(IronDust.get(1), 1.00f);
Items.GOLD.copyProducts(Items.STONE);
Items.GOLD.addProduct(GoldDust.get(1), 1.00f);
Items.COPPER.copyProducts(Items.STONE);
Items.COPPER.addProduct(CopperDust.get(1), 1.00f);
Items.TIN.copyProducts(Items.STONE);
Items.TIN.addProduct(TinDust.get(1), 1.00f);
Items.NICKEL.copyProducts(Items.STONE);
Items.NICKEL.addProduct(NickelDust.get(1), 1.00f);
Items.SILVER.copyProducts(Items.STONE);
Items.SILVER.addProduct(SilverDust.get(1), 1.00f);
Items.URANIUM.copyProducts(Items.STONE);
if (!OreDictionary.getOres("crushedUranium").isEmpty()) {
Items.URANIUM.addProduct(OreDictionary.getOres("crushedUranium").get(0), 0.50f);
}
Items.CLAY.addProduct(beeswax, 0.25f);
Items.CLAY.addProduct(honeyDrop, 0.80f);
Items.CLAY.addProduct(new ItemStack(net.minecraft.init.Items.clay_ball), 0.80f);
Items.OLD.addProduct(beeswax, 1.00f);
Items.OLD.addProduct(honeyDrop, 0.90f);
Items.FUNGAL.addProduct(beeswax, 0.90f);
Items.FUNGAL.addProduct(new ItemStack(Blocks.brown_mushroom_block, 1, 0), 1.00f);
Items.FUNGAL.addProduct(new ItemStack(Blocks.red_mushroom_block, 1, 0), 0.75f);
Items.ACIDIC.addProduct(beeswax, 0.80f);
Items.ACIDIC.addProduct(DropItems.Items.ACID.get(1), 0.50f);
if (!OreDictionary.getOres("dustSulfur").isEmpty()) {
Items.ACIDIC.addProduct(OreDictionary.getOres("dustSulfur").get(0), 0.75f);
}
Items.VENOMOUS.addProduct(beeswax, 0.80f);
Items.VENOMOUS.addProduct(DropItems.Items.POISON.get(1), 0.80f);
Items.SLIME.addProduct(beeswax, 1.00f);
Items.SLIME.addProduct(honeyDrop, 0.75f);
Items.SLIME.addProduct(new ItemStack(net.minecraft.init.Items.slime_ball, 1, 0), 0.75f);
Items.BLAZE.addProduct(beeswax, 0.75f);
Items.BLAZE.addProduct(new ItemStack(net.minecraft.init.Items.blaze_powder, 1, 0), 1.00f);
Items.COFFEE.addProduct(beeswax, 0.90f);
Items.COFFEE.addProduct(honeyDrop, 0.75f);
Items.COFFEE.addProduct(Mods.ic2.stack("itemCofeePowder"), 0.75f);
Items.GLACIAL.addProduct(DropItems.Items.ICE.get(1), 0.80f);
Items.GLACIAL.addProduct(honeyDrop, 0.75f);
Items.SHADOW.addProduct(honeyDrop, 0.50f);
if (!OreDictionary.getOres("dustObsidian").isEmpty()) {
Items.SHADOW.addProduct(OreDictionary.getOres("dustObsidian").get(0), 0.75f);
}
Items.LEAD.copyProducts(Items.STONE);
Items.LEAD.addProduct(LeadDust.get(1), 1.00f);
Items.ZINC.copyProducts(Items.STONE);
Items.ZINC.addProduct(ZincDust.get(1), 1.00f);
Items.TITANIUM.copyProducts(Items.STONE);
Items.TITANIUM.addProduct(TitaniumDust.get(1), 1.00f);
Items.TUNGSTEN.copyProducts(Items.STONE);
Items.TUNGSTEN.addProduct(TungstenDust.get(1), 1.00f);
Items.PLATINUM.copyProducts(Items.STONE);
Items.PLATINUM.addProduct(PlatinumDust.get(1), 1.00f);
Items.LAPIS.copyProducts(Items.STONE);
Items.LAPIS.addProduct(new ItemStack(dye, 6, 4), 1.00f);
Items.EMERALD.copyProducts(Items.STONE);
Items.EMERALD.addProduct(EmeraldShard.get(1), 1.00f);
Items.RUBY.copyProducts(Items.STONE);
Items.RUBY.addProduct(RubyShard.get(1), 1.00f);
Items.SAPPHIRE.copyProducts(Items.STONE);
Items.SAPPHIRE.addProduct(SapphireShard.get(1), 1.00f);
Items.DIAMOND.copyProducts(Items.STONE);
Items.DIAMOND.addProduct(DiamondShard.get(1), 1.00f);
Items.RED.addProduct(honeyDrop, 0.80f);
Items.RED.addProduct(beeswax, 0.80f);
Items.GLOWSTONE.addProduct(honeyDrop, 0.25f);
Items.GLOWSTONE.addProduct(new ItemStack(net.minecraft.init.Items.glowstone_dust), 1.00f);
Items.SALTPETER.addProduct(honeyDrop, 0.25f);
final List<ItemStack> ores = OreDictionary.getOres("dustSaltpeter");
final ItemStack saltpeter = ores.isEmpty() ? null : ores.get(0);
Items.SALTPETER.addProduct(saltpeter, 1.00f);
Items.COMPOST.addProduct(honeyDrop, 0.25f);
Items.COMPOST.addProduct(Mods.forestry.stack("fertilizerBio"), 1.00f);
Items.SAWDUST.addProduct(honeyDrop, 0.25f);
if (!OreDictionary.getOres("dustSawdust").isEmpty()) {
Items.SAWDUST.addProduct(OreDictionary.getOres("dustSawdust").get(0), 1.00f);
} else if (!OreDictionary.getOres("sawdust").isEmpty()) {
Items.SAWDUST.addProduct(OreDictionary.getOres("sawdust").get(0), 1.00f);
}
Items.CERTUS.addProduct(honeyDrop, 0.25f);
Items.CERTUS.addProduct(new ItemStack(net.minecraft.init.Items.quartz), 0.25f);
if (!OreDictionary.getOres("dustCertusQuartz").isEmpty()) {
Items.CERTUS.addProduct(OreDictionary.getOres("dustCertusQuartz").get(0), 0.20f);
}
Items.ENDERPEARL.addProduct(honeyDrop, 0.25f);
if (!OreDictionary.getOres("dustEnderPearl").isEmpty()) {
Items.ENDERPEARL.addProduct(OreDictionary.getOres("dustEnderPearl").get(0), 0.25f);
}
Items.YELLORIUM.copyProducts(Items.STONE);
Items.YELLORIUM.addProduct(YelloriumDust.get(1), 0.25f);
Items.CYANITE.copyProducts(Items.STONE);
Items.CYANITE.addProduct(CyaniteDust.get(1), 0.25f);
Items.BLUTONIUM.copyProducts(Items.STONE);
Items.BLUTONIUM.addProduct(BlutoniumDust.get(1), 0.25f);
OreDictionary.registerOre("beeComb", new ItemStack(EBItems.comb, 1, 32767));
// Copy the default products on RED, then add a drop
for (int i = 0; i < 16; ++i) {
final Items dyeComb = Items.VALUES[Items.RED.ordinal() + i];
final DropItems.Items drop = DropItems.Items.VALUES[DropItems.Items.RED.ordinal() + i];
if (dyeComb != Items.RED) {
dyeComb.copyProducts(Items.RED);
dyeComb.addProduct(drop.get(1), 1);
}
}
// RED gets its drop later, to avoid copying it to all the others
Items.RED.addProduct(DropItems.Items.RED.get(1), 1);
// Add dyes to binnie drops
// TODO: move this to itemDrop
for (int i = 0; i < 16; ++i) {
final DropItems.Items drop = DropItems.Items.VALUES[DropItems.Items.RED.ordinal() + i];
drop.addRemnant(EBMisc.Items.getDye(i));
}
}
}
@@ -0,0 +1,135 @@
package binnie.extrabees.products;
import static binnie.extrabees.ExtraBees.EB_MODID;
import static binnie.extrabees.item.EBItems.honeyDrop;
import java.awt.Color;
import java.util.Arrays;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraftforge.fluids.FluidStack;
import binnie.Binnie;
import binnie.core.item.DamageItems;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import forestry.api.core.Tabs;
import forestry.api.recipes.RecipeManagers;
public class DropItems extends DamageItems {
public enum Items {
ENERGY("energy", new Color(0x9c4972), new Color(0xe37171), ""),
ACID("acid", new Color(0x4bb541), new Color(0x49de3c), "acid"),
POISON("poison", new Color(0xd106b9), new Color(0xff03e2), "poison"),
APPLE("apple", new Color(0xc75252), new Color(0xc92a2a), "juice"),
// CITRUS,
ICE("ice", new Color(0xaee8e2), new Color(0x96fff5), "liquidnitrogen"),
MILK("milk", new Color(0xe0e0e0), new Color(0xffffff), "milk"),
SEED("seed", new Color(0x7cc272), new Color(0xc2bea7), "seedoil"),
ALCOHOL("alcohol", new Color(0xdbe84d), new Color(0xa5e84d), "short.mead"),
// FRUIT,
// VEGETABLE,
// PUMPKIN,
// MELON,
RED("red", new Color(0xcc4c4c), new Color(0xff0000), "for.honey"),
YELLOW("yellow", new Color(0xe5e533), new Color(0xffdd00), "for.honey"),
BLUE("blue", new Color(0x99b2f2), new Color(0x0022ff), "for.honey"),
GREEN("green", new Color(0x667f33), new Color(0x009900), "for.honey"),
BLACK("black", new Color(0x191919), new Color(0x575757), "for.honey"),
WHITE("white", new Color(0xd6d6d6), new Color(0xffffff), "for.honey"),
BROWN("brown", new Color(0x7f664c), new Color(0x5c350f), "for.honey"),
ORANGE("orange", new Color(0xf2b233), new Color(0xff9d00), "for.honey"),
CYAN("cyan", new Color(0x4c99b2), new Color(0x00ffe5), "for.honey"),
PURPLE("purple", new Color(0xb266e5), new Color(0xae00ff), "for.honey"),
GRAY("gray", new Color(0x4c4c4c), new Color(0xbababa), "for.honey"),
LIGHTBLUE("lightblue", new Color(0x99b2f2), new Color(0x009dff), "for.honey"),
PINK("pink", new Color(0xf2b2cc), new Color(0xff80df), "for.honey"),
LIMEGREEN("limegreen", new Color(0x7fcc19), new Color(0x00ff08), "for.honey"),
MAGENTA("magenta", new Color(0xe57fd8), new Color(0xff00cc), "for.honey"),
LIGHTGRAY("lightgray", new Color(0x999999), new Color(0xc9c9c9), "for.honey");
final String name;
final String liquid;
final int primary;
final int secondary;
ItemStack remnant;
public static final Items[] VALUES = values();
Items(String name, Color primary, Color secondary, String liquid) {
this.name = name;
this.liquid = liquid;
this.primary = primary.getRGB();
this.secondary = secondary.getRGB();
}
public ItemStack get(int count) {
return honeyDrop.getStack(count, ordinal());
}
public void addRemnant(ItemStack stack) {
remnant = stack;
}
public void addRecipe() {
FluidStack liquid = Binnie.Liquid.getLiquidStack(name, 200);
if (liquid == null) {
return;
}
RecipeManagers.squeezerManager.addRecipe(10, new ItemStack[] { get(1) }, liquid, remnant, 100);
}
}
private IIcon drop;
private IIcon shine;
public DropItems() {
super(
Tabs.tabApiculture,
EB_MODID,
"honeyDrop",
true,
Arrays.stream(Items.VALUES).map(i -> i.name).toArray(String[]::new));
setMaxStackSize(64);
setMaxDamage(0);
}
@Override
public String getUnlocalizedName(String name) {
return "extrabees.item.honeydrop." + name;
}
@Override
@SideOnly(Side.CLIENT)
public boolean requiresMultipleRenderPasses() {
return true;
}
@Override
public int getColorFromItemStack(ItemStack stack, int indexColor) {
final int damage = stack.getItemDamage();
final CombItems.Items comb = damage < CombItems.Items.VALUES.length
? CombItems.Items.VALUES[stack.getItemDamage()]
: null;
if (comb == null) return 0xffffff;
return indexColor == 0 ? comb.primary : comb.secondary;
}
@Override
@SideOnly(Side.CLIENT)
public IIcon getIconFromDamageForRenderPass(int damage, int pass) {
return pass > 0 ? drop : shine;
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister register) {
drop = register.registerIcon("forestry:honeyDrop.0");
shine = register.registerIcon("forestry:honeyDrop.1");
}
}
@@ -1,165 +0,0 @@
package binnie.extrabees.products;
import java.awt.Color;
import java.util.LinkedHashMap;
import java.util.Locale;
import java.util.Map;
import net.minecraft.item.ItemStack;
import binnie.core.item.IItemEnum;
import binnie.core.util.I18N;
import binnie.extrabees.ExtraBees;
import forestry.api.recipes.RecipeManagers;
public enum EnumHoneyComb implements IItemEnum {
BARREN(new Color(0x736c44), new Color(0xc2bea7)),
ROTTEN(new Color(0x3e5221), new Color(0xb1cc89)),
BONE(new Color(0xc4c4af), new Color(0xdedec1)),
OIL(new Color(0x060608), new Color(0x2c2b36)),
COAL(new Color(0x9e9478), new Color(0x38311e)),
FUEL(new Color(0x9c6f40), new Color(0xffc400)),
WATER(new Color(0x2732cf), new Color(0x79a8c9)),
MILK(new Color(0xd7d9c7), new Color(0xffffff)),
FRUIT(new Color(0x7d2934), new Color(0xdb4f62)),
SEED(new Color(0x344f33), new Color(0x71cc6e)),
ALCOHOL(new Color(0x418521), new Color(0xded94e)),
STONE(new Color(0x8c8c91), new Color(0xc6c6cc)),
REDSTONE(new Color(0xfa9696), new Color(0xe61010)),
RESIN(new Color(0xffc74f), new Color(0xc98a00)),
IC2ENERGY(new Color(0xe9f50f), new Color(0x20b3c9)),
IRON(new Color(0x363534), new Color(0xa87058)),
GOLD(new Color(0x363534), new Color(0xe6cc0b)),
COPPER(new Color(0x363534), new Color(0xd16308)),
TIN(new Color(0x363534), new Color(0xbdb1bd)),
SILVER(new Color(0x363534), new Color(0xdbdbdb)),
// BRONZE,
URANIUM(new Color(0x1eff00), new Color(0x41ab33)),
CLAY(new Color(0x6b563a), new Color(0xb0c0d6)),
OLD(new Color(0x453314), new Color(0xb39664)),
FUNGAL(new Color(0x6e654b), new Color(0x2b9443)),
CREOSOTE(new Color(0x9c810c), new Color(0xbdaa57)),
LATEX(new Color(0x595541), new Color(0xa8a285)),
ACIDIC(new Color(0x348543), new Color(0x14f73e)),
VENOMOUS(new Color(0x7d187d), new Color(0xff33ff)),
SLIME(new Color(0x3b473c), new Color(0x80d185)),
BLAZE(new Color(0xff6a00), new Color(0xffcc00)),
COFFEE(new Color(0x54381d), new Color(0xb37f4b)),
GLACIAL(new Color(0x4e8787), new Color(0xcbf2f2)),
// MINT,
// CITRUS,
// PEAT,
SHADOW(new Color(0x000000), new Color(0x361835)),
LEAD(new Color(0x363534), new Color(0x9a809c)),
// BRASS,
// ELECTRUM,
ZINC(new Color(0x363534), new Color(0xedebff)),
TITANIUM(new Color(0x363534), new Color(0xb0aae3)),
TUNGSTEN(new Color(0x363534), new Color(0x131214)),
// STEEL,
// IRIDIUM,
PLATINUM(new Color(0x363534), new Color(0x9a809c)),
LAPIS(new Color(0x363534), new Color(0x3d2cdb)),
// SODALITE,
// PYRITE,
// BAUXITE,
// CINNABAR,
// SPHALERITE,
EMERALD(new Color(0x363534), new Color(0x1cff03)),
RUBY(new Color(0x363534), new Color(0xd60000)),
SAPPHIRE(new Color(0x363534), new Color(0xa47ff)),
// OLIVINE,
DIAMOND(new Color(0x363534), new Color(0x7fbdfa)),
RED(new Color(0xcc4c4c), new Color(0xff0000)),
YELLOW(new Color(0xe5e533), new Color(0xffdd00)),
BLUE(new Color(0x99b2f2), new Color(0x0022ff)),
GREEN(new Color(0x667f33), new Color(0x009900)),
BLACK(new Color(0x191919), new Color(0x575757)),
WHITE(new Color(0xd6d6d6), new Color(0xffffff)),
BROWN(new Color(0x7f664c), new Color(0x5c350f)),
ORANGE(new Color(0xf2b233), new Color(0xff9d00)),
CYAN(new Color(0x4c99b2), new Color(0x00ffe5)),
PURPLE(new Color(0xb266e5), new Color(0xae00ff)),
GRAY(new Color(0x4c4c4c), new Color(0xbababa)),
LIGHTBLUE(new Color(0x99b2f2), new Color(0x009dff)),
PINK(new Color(0xf2b2cc), new Color(0xff80df)),
LIMEGREEN(new Color(0x7fcc19), new Color(0x00ff08)),
MAGENTA(new Color(0xe57fd8), new Color(0xff00cc)),
LIGHTGRAY(new Color(0x999999), new Color(0xc9c9c9)),
NICKEL(new Color(0x363534), new Color(0xffdefc)),
// INVAR,
GLOWSTONE(new Color(0xa69c5e), new Color(0xe0c409)),
SALTPETER(new Color(0xa69c5e), new Color(0xe0c409)),
// PULP,
// MULCH,
COMPOST(new Color(0x423308), new Color(0x6b5e3b)),
SAWDUST(new Color(0xbfaa71), new Color(0xf2d37e)),
CERTUS(new Color(0xc6d0ff), new Color(0x394d63)),
ENDERPEARL(new Color(0x349786), new Color(0x32620)),
YELLORIUM(new Color(0x27204d), new Color(14019840)),
CYANITE(new Color(0x27204d), new Color(0x86ed)),
BLUTONIUM(new Color(0x27204d), new Color(0x1b00e6));
public final Map<ItemStack, Float> products;
public final int primaryColor;
public final int secondaryColor;
public final String name;
boolean active;
EnumHoneyComb(Color primaryColor, Color secondaryColor) {
this.primaryColor = primaryColor.getRGB();
this.secondaryColor = secondaryColor.getRGB();
name = toString().toLowerCase(Locale.ENGLISH);
products = new LinkedHashMap<>();
}
public static EnumHoneyComb get(ItemStack itemStack) {
int i = itemStack.getItemDamage();
if (i >= 0 && i < values().length) {
return values()[i];
}
return values()[0];
}
public void addRecipe() {
RecipeManagers.centrifugeManager.addRecipe(20, get(1), products);
}
@Override
public boolean isActive() {
return active;
}
@Override
public ItemStack get(int count) {
return new ItemStack(ExtraBees.comb, count, ordinal());
}
@Override
public String getName(ItemStack stack) {
return I18N.localise("extrabees.item.comb." + name);
}
public boolean addProduct(ItemStack item, Float chance) {
if (item == null) {
return false;
}
products.put(item.copy(), chance);
return true;
}
public void tryAddProduct(ItemStack item, Float chance) {
active = addProduct(item, chance);
}
public void tryAddProduct(IItemEnum type, Float chance) {
tryAddProduct(type.get(1), chance);
active = active && type.isActive();
}
public void copyProducts(EnumHoneyComb comb) {
products.putAll(comb.products);
}
}
@@ -1,93 +0,0 @@
package binnie.extrabees.products;
import java.awt.Color;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidRegistry;
import net.minecraftforge.fluids.FluidStack;
import binnie.Binnie;
import binnie.core.item.IItemEnum;
import binnie.core.util.I18N;
import binnie.extrabees.ExtraBees;
import forestry.api.recipes.RecipeManagers;
public enum EnumHoneyDrop implements IItemEnum {
ENERGY(new Color(0x9c4972), new Color(0xe37171), ""),
ACID(new Color(0x4bb541), new Color(0x49de3c), "acid"),
POISON(new Color(0xd106b9), new Color(0xff03e2), "poison"),
APPLE(new Color(0xc75252), new Color(0xc92a2a), "juice"),
// CITRUS,
ICE(new Color(0xaee8e2), new Color(0x96fff5), "liquidnitrogen"),
MILK(new Color(0xe0e0e0), new Color(0xffffff), "milk"),
SEED(new Color(0x7cc272), new Color(0xc2bea7), "seedoil"),
ALCOHOL(new Color(0xdbe84d), new Color(0xa5e84d), "short.mead"),
// FRUIT,
// VEGETABLE,
// PUMPKIN,
// MELON,
RED(new Color(0xcc4c4c), new Color(0xff0000), "for.honey"),
YELLOW(new Color(0xe5e533), new Color(0xffdd00), "for.honey"),
BLUE(new Color(0x99b2f2), new Color(0x0022ff), "for.honey"),
GREEN(new Color(0x667f33), new Color(0x009900), "for.honey"),
BLACK(new Color(0x191919), new Color(0x575757), "for.honey"),
WHITE(new Color(0xd6d6d6), new Color(0xffffff), "for.honey"),
BROWN(new Color(0x7f664c), new Color(0x5c350f), "for.honey"),
ORANGE(new Color(0xf2b233), new Color(0xff9d00), "for.honey"),
CYAN(new Color(0x4c99b2), new Color(0x00ffe5), "for.honey"),
PURPLE(new Color(0xb266e5), new Color(0xae00ff), "for.honey"),
GRAY(new Color(0x4c4c4c), new Color(0xbababa), "for.honey"),
LIGHTBLUE(new Color(0x99b2f2), new Color(0x009dff), "for.honey"),
PINK(new Color(0xf2b2cc), new Color(0xff80df), "for.honey"),
LIMEGREEN(new Color(0x7fcc19), new Color(0x00ff08), "for.honey"),
MAGENTA(new Color(0xe57fd8), new Color(0xff00cc), "for.honey"),
LIGHTGRAY(new Color(0x999999), new Color(0xc9c9c9), "for.honey");
public final int primaryColor;
public final int secondaryColor;
private final String liquidName;
private ItemStack remenant;
EnumHoneyDrop(Color primaryColor, Color secondaryColor, String liquid) {
this.primaryColor = primaryColor.getRGB();
this.secondaryColor = secondaryColor.getRGB();
liquidName = liquid;
}
public static EnumHoneyDrop get(ItemStack itemStack) {
int i = itemStack.getItemDamage();
if (i >= 0 && i < values().length) {
return values()[i];
}
return values()[0];
}
public void addRemenant(ItemStack stack) {
remenant = stack;
}
public void addRecipe() {
FluidStack liquid = Binnie.Liquid.getLiquidStack(liquidName, 200);
if (liquid == null) {
return;
}
RecipeManagers.squeezerManager.addRecipe(10, new ItemStack[] { get(1) }, liquid, remenant, 100);
}
@Override
public boolean isActive() {
return liquidName == null || FluidRegistry.isFluidRegistered(liquidName);
}
@Override
public ItemStack get(int count) {
return new ItemStack(ExtraBees.honeyDrop, count, ordinal());
}
@Override
public String getName(ItemStack itemStack) {
return I18N.localise("extrabees.item.honeydrop." + name().toLowerCase());
}
}
@@ -1,67 +0,0 @@
package binnie.extrabees.products;
import java.awt.Color;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidStack;
import binnie.Binnie;
import binnie.core.item.IItemEnum;
import binnie.core.util.I18N;
import binnie.extrabees.ExtraBees;
import forestry.api.recipes.RecipeManagers;
public enum EnumPropolis implements IItemEnum {
WATER(new Color(0x24b3c9), new Color(0xc2bea7), "Water"),
OIL(new Color(0x172f33), new Color(0xc2bea7), "oil"),
FUEL(new Color(0xa38d12), new Color(0xc2bea7), "fuel"),
// MILK,
// FRUIT,
// SEED,
// ALCOHOL,
CREOSOTE(new Color(0x877501), new Color(0xbda613), "creosote");
// GLACIAL,
// PEAT
public final int secondaryColor;
public final int primaryColor;
public final String liquidName;
EnumPropolis(Color primaryColor, Color secondaryColor, String liquidName) {
this.primaryColor = primaryColor.getRGB();
this.secondaryColor = secondaryColor.getRGB();
this.liquidName = liquidName;
}
public static EnumPropolis get(ItemStack itemStack) {
int i = itemStack.getItemDamage();
if (i >= 0 && i < values().length) {
return values()[i];
}
return values()[0];
}
public void addRecipe() {
FluidStack liquid = Binnie.Liquid.getLiquidStack(liquidName, 500);
if (liquid == null) {
return;
}
RecipeManagers.squeezerManager.addRecipe(20, new ItemStack[] { get(1) }, liquid, null, 0);
}
@Override
public boolean isActive() {
return Binnie.Liquid.getLiquidStack(liquidName, 100) != null;
}
@Override
public ItemStack get(int count) {
return new ItemStack(ExtraBees.propolis, count, ordinal());
}
@Override
public String getName(ItemStack itemStack) {
return I18N.localise("extrabees.item.propolis." + name().toLowerCase());
}
}
@@ -1,326 +0,0 @@
package binnie.extrabees.products;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraftforge.oredict.OreDictionary;
import binnie.core.BinnieCore;
import binnie.core.Mods;
import binnie.extrabees.ExtraBees;
import binnie.extrabees.core.ExtraBeeItems;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import forestry.api.core.Tabs;
public class ItemHoneyComb extends ItemProduct {
protected IIcon icon1;
protected IIcon icon2;
public ItemHoneyComb() {
super(EnumHoneyComb.values());
setCreativeTab(Tabs.tabApiculture);
setUnlocalizedName("honeyComb");
}
public static void addSubtypes() {
ItemStack beeswax = Mods.forestry.stack("beeswax");
ItemStack honeyDrop = Mods.forestry.stack("honeyDrop");
OreDictionary.registerOre("ingotIron", Items.iron_ingot);
OreDictionary.registerOre("ingotGold", Items.gold_ingot);
OreDictionary.registerOre("gemDiamond", Items.diamond);
OreDictionary.registerOre("gemEmerald", Items.emerald);
OreDictionary.registerOre("gemLapis", new ItemStack(Items.dye, 1, 4));
EnumHoneyComb.BARREN.addProduct(beeswax, 1.00f);
EnumHoneyComb.BARREN.addProduct(honeyDrop, 0.50f);
EnumHoneyComb.ROTTEN.addProduct(beeswax, 0.20f);
EnumHoneyComb.ROTTEN.addProduct(honeyDrop, 0.20f);
EnumHoneyComb.ROTTEN.addProduct(new ItemStack(Items.rotten_flesh, 1, 0), 0.80f);
EnumHoneyComb.BONE.addProduct(beeswax, 0.20f);
EnumHoneyComb.BONE.addProduct(honeyDrop, 0.20f);
EnumHoneyComb.BONE.addProduct(new ItemStack(Items.dye, 1, 15), 0.80f);
EnumHoneyComb.OIL.tryAddProduct(EnumPropolis.OIL, 0.60f);
EnumHoneyComb.OIL.addProduct(honeyDrop, 0.75f);
EnumHoneyComb.COAL.addProduct(beeswax, 0.80f);
EnumHoneyComb.COAL.addProduct(honeyDrop, 0.75f);
EnumHoneyComb.COAL.tryAddProduct(ExtraBeeItems.CoalDust, 1.00f);
EnumHoneyComb.WATER.tryAddProduct(EnumPropolis.WATER, 1.00f);
EnumHoneyComb.WATER.addProduct(honeyDrop, 0.90f);
EnumHoneyComb.STONE.addProduct(beeswax, 0.50f);
EnumHoneyComb.STONE.addProduct(honeyDrop, 0.25f);
EnumHoneyComb.MILK.tryAddProduct(EnumHoneyDrop.MILK, 1.00f);
EnumHoneyComb.MILK.addProduct(honeyDrop, 0.90f);
EnumHoneyComb.FRUIT.tryAddProduct(EnumHoneyDrop.APPLE, 1.00f);
EnumHoneyComb.FRUIT.addProduct(honeyDrop, 0.90f);
EnumHoneyComb.SEED.tryAddProduct(EnumHoneyDrop.SEED, 1.00f);
EnumHoneyComb.SEED.addProduct(honeyDrop, 0.90f);
EnumHoneyComb.ALCOHOL.tryAddProduct(EnumHoneyDrop.ALCOHOL, 1.00f);
EnumHoneyComb.ALCOHOL.addProduct(honeyDrop, 0.90f);
EnumHoneyComb.FUEL.tryAddProduct(EnumPropolis.FUEL, 0.60f);
EnumHoneyComb.FUEL.addProduct(honeyDrop, 0.50f);
EnumHoneyComb.CREOSOTE.tryAddProduct(EnumPropolis.CREOSOTE, 0.70f);
EnumHoneyComb.CREOSOTE.addProduct(honeyDrop, 0.50f);
EnumHoneyComb.LATEX.addProduct(honeyDrop, 0.50f);
EnumHoneyComb.LATEX.addProduct(beeswax, 0.85f);
if (!OreDictionary.getOres("itemRubber").isEmpty()) {
EnumHoneyComb.LATEX.tryAddProduct(OreDictionary.getOres("itemRubber").get(0), 1.00f);
} else {
EnumHoneyComb.LATEX.active = false;
}
EnumHoneyComb.REDSTONE.addProduct(beeswax, 0.80f);
EnumHoneyComb.REDSTONE.addProduct(new ItemStack(Items.redstone, 1, 0), 1.00f);
EnumHoneyComb.REDSTONE.addProduct(honeyDrop, 0.50f);
EnumHoneyComb.RESIN.addProduct(beeswax, 1.00f);
EnumHoneyComb.RESIN.tryAddProduct(Mods.ic2.stack("itemHarz"), 1.00f);
EnumHoneyComb.RESIN.tryAddProduct(Mods.ic2.stack("itemHarz"), 0.50f);
EnumHoneyComb.IC2ENERGY.addProduct(beeswax, 0.80f);
EnumHoneyComb.IC2ENERGY.addProduct(new ItemStack(Items.redstone, 1, 0), 0.75f);
EnumHoneyComb.IC2ENERGY.tryAddProduct(EnumHoneyDrop.ENERGY, 1.00f);
EnumHoneyComb.IRON.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.IRON.tryAddProduct(ExtraBeeItems.IronDust, 1.00f);
EnumHoneyComb.GOLD.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.GOLD.tryAddProduct(ExtraBeeItems.GoldDust, 1.00f);
EnumHoneyComb.COPPER.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.COPPER.tryAddProduct(ExtraBeeItems.CopperDust, 1.00f);
EnumHoneyComb.TIN.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.TIN.tryAddProduct(ExtraBeeItems.TinDust, 1.00f);
EnumHoneyComb.NICKEL.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.NICKEL.tryAddProduct(ExtraBeeItems.NickelDust, 1.00f);
EnumHoneyComb.SILVER.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.SILVER.tryAddProduct(ExtraBeeItems.SilverDust, 1.00f);
EnumHoneyComb.URANIUM.copyProducts(EnumHoneyComb.STONE);
if (!OreDictionary.getOres("crushedUranium").isEmpty()) {
EnumHoneyComb.URANIUM.tryAddProduct(OreDictionary.getOres("crushedUranium").get(0), 0.50f);
}
EnumHoneyComb.CLAY.addProduct(beeswax, 0.25f);
EnumHoneyComb.CLAY.addProduct(honeyDrop, 0.80f);
EnumHoneyComb.CLAY.addProduct(new ItemStack(Items.clay_ball), 0.80f);
EnumHoneyComb.OLD.addProduct(beeswax, 1.00f);
EnumHoneyComb.OLD.addProduct(honeyDrop, 0.90f);
EnumHoneyComb.FUNGAL.addProduct(beeswax, 0.90f);
EnumHoneyComb.FUNGAL.addProduct(new ItemStack(Blocks.brown_mushroom_block, 1, 0), 1.00f);
EnumHoneyComb.FUNGAL.addProduct(new ItemStack(Blocks.red_mushroom_block, 1, 0), 0.75f);
EnumHoneyComb.ACIDIC.addProduct(beeswax, 0.80f);
EnumHoneyComb.ACIDIC.tryAddProduct(EnumHoneyDrop.ACID, 0.50f);
if (!OreDictionary.getOres("dustSulfur").isEmpty()) {
EnumHoneyComb.ACIDIC.addProduct(OreDictionary.getOres("dustSulfur").get(0), 0.75f);
}
EnumHoneyComb.VENOMOUS.addProduct(beeswax, 0.80f);
EnumHoneyComb.VENOMOUS.tryAddProduct(EnumHoneyDrop.POISON, 0.80f);
EnumHoneyComb.SLIME.addProduct(beeswax, 1.00f);
EnumHoneyComb.SLIME.addProduct(honeyDrop, 0.75f);
EnumHoneyComb.SLIME.addProduct(new ItemStack(Items.slime_ball, 1, 0), 0.75f);
EnumHoneyComb.BLAZE.addProduct(beeswax, 0.75f);
EnumHoneyComb.BLAZE.addProduct(new ItemStack(Items.blaze_powder, 1, 0), 1.00f);
EnumHoneyComb.COFFEE.addProduct(beeswax, 0.90f);
EnumHoneyComb.COFFEE.addProduct(honeyDrop, 0.75f);
EnumHoneyComb.COFFEE.tryAddProduct(Mods.ic2.stack("itemCofeePowder"), 0.75f);
EnumHoneyComb.GLACIAL.tryAddProduct(EnumHoneyDrop.ICE, 0.80f);
EnumHoneyComb.GLACIAL.addProduct(honeyDrop, 0.75f);
EnumHoneyComb.SHADOW.addProduct(honeyDrop, 0.50f);
if (!OreDictionary.getOres("dustObsidian").isEmpty()) {
EnumHoneyComb.SHADOW.tryAddProduct(OreDictionary.getOres("dustObsidian").get(0), 0.75f);
} else {
EnumHoneyComb.SHADOW.active = false;
}
EnumHoneyComb.LEAD.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.LEAD.tryAddProduct(ExtraBeeItems.LeadDust, 1.00f);
EnumHoneyComb.ZINC.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.ZINC.tryAddProduct(ExtraBeeItems.ZincDust, 1.00f);
EnumHoneyComb.TITANIUM.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.TITANIUM.tryAddProduct(ExtraBeeItems.TitaniumDust, 1.00f);
EnumHoneyComb.TUNGSTEN.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.TUNGSTEN.tryAddProduct(ExtraBeeItems.TungstenDust, 1.00f);
EnumHoneyComb.PLATINUM.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.PLATINUM.tryAddProduct(ExtraBeeItems.PlatinumDust, 1.00f);
EnumHoneyComb.LAPIS.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.LAPIS.addProduct(new ItemStack(Items.dye, 6, 4), 1.00f);
EnumHoneyComb.EMERALD.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.EMERALD.tryAddProduct(ExtraBeeItems.EmeraldShard, 1.00f);
EnumHoneyComb.RUBY.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.RUBY.tryAddProduct(ExtraBeeItems.RubyShard, 1.00f);
EnumHoneyComb.SAPPHIRE.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.SAPPHIRE.tryAddProduct(ExtraBeeItems.SapphireShard, 1.00f);
EnumHoneyComb.DIAMOND.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.DIAMOND.tryAddProduct(ExtraBeeItems.DiamondShard, 1.00f);
EnumHoneyComb.RED.addProduct(honeyDrop, 0.80f);
EnumHoneyComb.RED.addProduct(beeswax, 0.80f);
EnumHoneyComb.GLOWSTONE.addProduct(honeyDrop, 0.25f);
EnumHoneyComb.GLOWSTONE.addProduct(new ItemStack(Items.glowstone_dust), 1.00f);
EnumHoneyComb.SALTPETER.addProduct(honeyDrop, 0.25f);
EnumHoneyComb.SALTPETER.tryAddProduct(getOreDictionary("dustSaltpeter"), 1.00f);
EnumHoneyComb.COMPOST.addProduct(honeyDrop, 0.25f);
EnumHoneyComb.COMPOST.tryAddProduct(Mods.forestry.stack("fertilizerBio"), 1.00f);
EnumHoneyComb.SAWDUST.addProduct(honeyDrop, 0.25f);
if (!OreDictionary.getOres("dustSawdust").isEmpty()) {
EnumHoneyComb.SAWDUST.tryAddProduct(OreDictionary.getOres("dustSawdust").get(0), 1.00f);
} else if (!OreDictionary.getOres("sawdust").isEmpty()) {
EnumHoneyComb.SAWDUST.tryAddProduct(OreDictionary.getOres("sawdust").get(0), 1.00f);
}
EnumHoneyComb.CERTUS.addProduct(honeyDrop, 0.25f);
EnumHoneyComb.CERTUS.addProduct(new ItemStack(Items.quartz), 0.25f);
if (!OreDictionary.getOres("dustCertusQuartz").isEmpty()) {
EnumHoneyComb.CERTUS.tryAddProduct(OreDictionary.getOres("dustCertusQuartz").get(0), 0.20f);
}
EnumHoneyComb.ENDERPEARL.addProduct(honeyDrop, 0.25f);
if (!OreDictionary.getOres("dustEnderPearl").isEmpty()) {
EnumHoneyComb.ENDERPEARL.tryAddProduct(OreDictionary.getOres("dustEnderPearl").get(0), 0.25f);
}
EnumHoneyComb.YELLORIUM.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.YELLORIUM.tryAddProduct(ExtraBeeItems.YelloriumDust, 0.25f);
EnumHoneyComb.CYANITE.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.CYANITE.tryAddProduct(ExtraBeeItems.CyaniteDust, 0.25f);
EnumHoneyComb.BLUTONIUM.copyProducts(EnumHoneyComb.STONE);
EnumHoneyComb.BLUTONIUM.tryAddProduct(ExtraBeeItems.BlutoniumDust, 0.25f);
OreDictionary.registerOre("beeComb", new ItemStack(ExtraBees.comb, 1, 32767));
for (int i = 0; i < 16; ++i) {
EnumHoneyComb type = EnumHoneyComb.values()[EnumHoneyComb.RED.ordinal() + i];
if (type != EnumHoneyComb.RED) {
type.copyProducts(EnumHoneyComb.RED);
}
}
for (int i = 0; i < 16; ++i) {
EnumHoneyComb type = EnumHoneyComb.values()[EnumHoneyComb.RED.ordinal() + i];
EnumHoneyDrop drop = EnumHoneyDrop.values()[EnumHoneyDrop.RED.ordinal() + i];
int[] dyeC = { 1, 11, 4, 2, 0, 15, 3, 14, 6, 5, 8, 12, 9, 10, 13, 7 };
int k = dyeC[i];
ItemStack dye = switch (k) {
case 0 -> ExtraBeeItems.BlackDye.get(1);
case 1 -> ExtraBeeItems.RedDye.get(1);
case 2 -> ExtraBeeItems.GreenDye.get(1);
case 3 -> ExtraBeeItems.BrownDye.get(1);
case 4 -> ExtraBeeItems.BlueDye.get(1);
case 11 -> ExtraBeeItems.YellowDye.get(1);
case 15 -> ExtraBeeItems.WhiteDye.get(1);
default -> new ItemStack(Items.dye, 1, k);
};
type.addProduct(drop.get(1), 1.00f);
drop.addRemenant(dye);
}
}
private static ItemStack getOreDictionary(String string) {
if (!OreDictionary.getOres(string).isEmpty()) {
return OreDictionary.getOres(string).get(0);
}
return null;
}
@Override
@SideOnly(Side.CLIENT)
public boolean requiresMultipleRenderPasses() {
return true;
}
@Override
public int getColorFromItemStack(ItemStack stack, int indexColor) {
EnumHoneyComb comb = EnumHoneyComb.get(stack);
if (comb == null) {
return 0xffffff;
}
if (indexColor == 0) {
return comb.primaryColor;
}
return comb.secondaryColor;
}
@Override
@SideOnly(Side.CLIENT)
public IIcon getIconFromDamageForRenderPass(int i, int j) {
if (j > 0) {
return icon1;
}
return icon2;
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister register) {
icon1 = BinnieCore.proxy.getIcon(register, "forestry", "beeCombs.0");
icon2 = BinnieCore.proxy.getIcon(register, "forestry", "beeCombs.1");
}
public enum VanillaComb {
HONEY,
COCOA,
SIMMERING,
STRINGY,
FROZEN,
DRIPPING,
SILKY,
PARCHED,
MYSTERIOUS,
IRRADIATED,
POWDERY,
REDDENED,
DARKENED,
OMEGA,
WHEATEN,
MOSSY,
QUARTZ;
public ItemStack get() {
return new ItemStack(Mods.forestry.item("beeCombs"), 1, ordinal());
}
}
}
@@ -1,52 +0,0 @@
package binnie.extrabees.products;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import binnie.core.BinnieCore;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import forestry.api.core.Tabs;
public class ItemHoneyDrop extends ItemProduct {
protected IIcon icon1;
protected IIcon icon2;
public ItemHoneyDrop() {
super(EnumHoneyDrop.values());
setCreativeTab(Tabs.tabApiculture);
setUnlocalizedName("honeyDrop");
}
@Override
@SideOnly(Side.CLIENT)
public boolean requiresMultipleRenderPasses() {
return true;
}
@Override
public int getColorFromItemStack(ItemStack itemStack, int j) {
if (j == 0) {
return EnumHoneyDrop.get(itemStack).primaryColor;
}
return EnumHoneyDrop.get(itemStack).secondaryColor;
}
@Override
@SideOnly(Side.CLIENT)
public IIcon getIconFromDamageForRenderPass(int i, int j) {
if (j > 0) {
return icon1;
}
return icon2;
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister register) {
icon1 = BinnieCore.proxy.getIcon(register, "forestry", "honeyDrop.0");
icon2 = BinnieCore.proxy.getIcon(register, "forestry", "honeyDrop.1");
}
}
@@ -1,43 +0,0 @@
package binnie.extrabees.products;
import java.util.List;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import binnie.core.item.IItemEnum;
public class ItemProduct extends Item {
protected IItemEnum[] types;
public ItemProduct(IItemEnum[] types) {
this.types = types;
setMaxStackSize(64);
setMaxDamage(0);
setHasSubtypes(true);
}
public IItemEnum get(ItemStack stack) {
int i = stack.getItemDamage();
if (i >= 0 && i < types.length) {
return types[i];
}
return types[0];
}
@Override
public String getItemStackDisplayName(ItemStack stack) {
return get(stack).getName(stack);
}
@Override
public void getSubItems(Item item, CreativeTabs tab, List<ItemStack> list) {
for (IItemEnum type : types) {
if (type.isActive()) {
list.add(new ItemStack(this, 1, type.ordinal()));
}
}
}
}
@@ -1,32 +0,0 @@
package binnie.extrabees.products;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.item.ItemStack;
import binnie.core.BinnieCore;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import forestry.api.core.Tabs;
public class ItemPropolis extends ItemProduct {
public ItemPropolis() {
super(EnumPropolis.values());
setCreativeTab(Tabs.tabApiculture);
setUnlocalizedName("propolis");
}
@Override
public int getColorFromItemStack(ItemStack itemStack, int j) {
if (j == 0) {
return EnumPropolis.get(itemStack).primaryColor;
}
return EnumPropolis.get(itemStack).secondaryColor;
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister register) {
itemIcon = BinnieCore.proxy.getIcon(register, "forestry", "propolis.0");
}
}
Loaded 100 of 185 files, more files were not shown because too many files have changed in this diff. Show more