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
148 changed files with 2569 additions and 3002 deletions

No files matched your search

+4 -4
View File
@@ -1,12 +1,12 @@
// Add your dependencies here
dependencies {
api('com.github.GTNewHorizons:ForestryMC:4.10.5:dev')
implementation('com.github.GTNewHorizons:GTNHLib:0.6.18:dev')
api('com.github.GTNewHorizons:ForestryMC:4.9.16:dev')
implementation('com.github.GTNewHorizons:GTNHLib:0.5.11:dev')
devOnlyNonPublishable('com.github.GTNewHorizons:NotEnoughItems:2.7.34-GTNH:dev')
devOnlyNonPublishable('com.github.GTNewHorizons:NotEnoughItems:2.6.38-GTNH:dev')
compileOnly('com.github.GTNewHorizons:BuildCraft:7.1.42:api')
compileOnly('com.github.GTNewHorizons:BuildCraft:7.1.39:api')
compileOnly('net.industrial-craft:industrialcraft-2:2.2.828-experimental:dev')
compileOnly("curse.maven:extrabiomesxl-60041:2273301")
}
+1 -1
View File
@@ -14,7 +14,7 @@ modId = BinnieCore
modGroup = binnie
# Whether to use modGroup as the maven publishing group.
# When false, com.github.GTNewHorizons is used.
# Due to a history of using JitPack, the default is com.github.GTNewHorizons for all mods.
useModGroupForPublishing = false
# Updates your build.gradle and settings.gradle automatically whenever an update is available.
Binary file not shown.
+1 -1
View File
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Vendored
+3 -2
View File
@@ -86,7 +86,8 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -205,7 +206,7 @@ fi
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.
+1 -1
View File
@@ -17,5 +17,5 @@ pluginManagement {
}
plugins {
id 'com.gtnewhorizons.gtnhsettingsconvention' version '1.0.38'
id 'com.gtnewhorizons.gtnhsettingsconvention' version '1.0.27'
}
-2
View File
@@ -5,7 +5,6 @@ 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.resource.ManagerResource;
@@ -16,6 +15,5 @@ public final class Binnie {
public static ManagerGenetics Genetics = new ManagerGenetics();
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 -28
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());
@@ -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();
}
}
@@ -34,7 +34,6 @@ public class BlockStained extends Block implements IBlockMetadata {
public BlockStained() {
super(Material.glass);
setHardness(0.3f);
setCreativeTab(CreativeTabBotany.instance);
setBlockName("stained");
}
@@ -96,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
@@ -1,15 +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.core.gui.IBinnieGUID;
import binnie.core.mod.parser.FieldParser;
import binnie.core.network.BinniePacketHandler;
import binnie.core.network.IPacketID;
import binnie.core.network.IPacketProvider;
@@ -22,11 +18,9 @@ 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);
@@ -68,22 +62,6 @@ public abstract class AbstractMod implements IPacketProvider, IInitializable {
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
@@ -99,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
@@ -119,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) {
-12
View File
@@ -16,21 +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.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;
@@ -66,8 +62,6 @@ 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) {
@@ -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();
}
@@ -212,11 +205,6 @@ public class BinnieCore extends AbstractMod {
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
}
}
@@ -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()) {
@@ -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",
@@ -57,7 +53,7 @@ public class ModuleItems implements IInitializable {
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);
};
}
@@ -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,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));
}
}
}
@@ -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
}
}
@@ -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
}
}
+29 -9
View File
@@ -2,7 +2,8 @@ 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;
@@ -19,24 +20,28 @@ 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.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_MODID = "extrabees";
public static final String EB_MOD_NAME = "Extra Bees";
@Mod.Instance("ExtraBees")
@@ -58,11 +63,6 @@ public class ExtraBees extends AbstractMod {
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;
@@ -81,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();
}
@@ -89,6 +96,19 @@ public class ExtraBees 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("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 IBinnieGUID[] getGUIDs() {
return ExtraBeeGUID.values();
@@ -106,7 +126,7 @@ public class ExtraBees extends AbstractMod {
@Override
public String getModID() {
return "extrabees";
return EB_MODID;
}
@Override
@@ -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;
}
}
@@ -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");
}
}
@@ -1,38 +1,19 @@
package binnie.extrabees.products;
import net.minecraft.init.Items;
import net.minecraftforge.oredict.OreDictionary;
import binnie.core.IInitializable;
import binnie.extrabees.ExtraBees;
public class ModuleProducts implements IInitializable {
@Override
public void preInit() {
ExtraBees.honeyDrop = new ItemHoneyDrop();
ExtraBees.comb = new ItemHoneyComb();
ExtraBees.propolis = new ItemPropolis();
OreDictionary.registerOre("ingotIron", Items.iron_ingot);
OreDictionary.registerOre("ingotGold", Items.gold_ingot);
OreDictionary.registerOre("gemDiamond", Items.diamond);
}
@Override
public void init() {
ItemHoneyComb.addSubtypes();
}
@Override
public void postInit() {
for (EnumHoneyComb info : EnumHoneyComb.values()) {
info.addRecipe();
for (CombItems.Items comb : CombItems.Items.VALUES) {
comb.addRecipe();
}
for (EnumHoneyDrop info2 : EnumHoneyDrop.values()) {
info2.addRecipe();
for (DropItems.Items drop : DropItems.Items.VALUES) {
drop.addRecipe();
}
for (EnumPropolis info3 : EnumPropolis.values()) {
info3.addRecipe();
for (Propolis.Items propolis : Propolis.Items.VALUES) {
propolis.addRecipe();
}
}
}
@@ -0,0 +1,93 @@
package binnie.extrabees.products;
import static binnie.extrabees.ExtraBees.EB_MODID;
import static binnie.extrabees.item.EBItems.propolis;
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 Propolis extends DamageItems {
public enum Items {
WATER(new Color(0x24b3c9), new Color(0xc2bea7), "water"),
OIL(new Color(0x172f33), new Color(0xc2bea7), "oil"),
FUEL(new Color(0xa38d12), new Color(0xc2bea7), "fuel"),
CREOSOTE(new Color(0x877501), new Color(0xbda613), "creosote");
final String name;
final int primary;
final int secondary;
public static final Items[] VALUES = values();
Items(Color primary, Color secondary, String name) {
this.name = name;
this.primary = primary.getRGB();
this.secondary = secondary.getRGB();
}
public ItemStack get(int count) {
return propolis.getStack(count, ordinal());
}
public void addRecipe() {
FluidStack liquid = Binnie.Liquid.getLiquidStack(name, 500);
if (liquid == null) return;
RecipeManagers.squeezerManager.addRecipe(20, new ItemStack[] { get(1) }, liquid, null, 0);
}
}
public Propolis() {
// I don't like this, but the modid is actually only used for registering icons and names, so it's fine
super(
Tabs.tabApiculture,
EB_MODID,
"propolis",
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.propolis." + name;
}
@Override
@SideOnly(Side.CLIENT)
public int getColorFromItemStack(ItemStack itemStack, int layer) {
final Items i = Items.VALUES[itemStack.getItemDamage()];
return layer == 0 ? i.primary : i.secondary;
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister register) {
itemIcon = register.registerIcon("forestry:propolis.0");
}
@Override
public IIcon getIcon(ItemStack stack, int pass) {
return itemIcon;
}
@Override
public IIcon getIconFromDamage(int damage) {
return itemIcon;
}
}
+19 -11
View File
@@ -4,7 +4,6 @@ import static binnie.extratrees.ExtraTrees.EB_MOD_NAME;
import static binnie.extratrees.ExtraTrees.ET_MODID;
import net.minecraft.block.Block;
import net.minecraft.item.Item;
import com.gtnewhorizon.gtnhlib.config.ConfigException;
import com.gtnewhorizon.gtnhlib.config.ConfigurationManager;
@@ -33,18 +32,21 @@ import binnie.extratrees.proxy.Proxy;
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 = ET_MODID,
name = EB_MOD_NAME,
version = Tags.VERSION,
useMetadata = true,
dependencies = "after:BinnieCore")
dependencies = "after:BinnieCore",
guiFactory = "binnie.extratrees.config.ETConfigGUIFactory")
public class ExtraTrees extends AbstractMod {
public static final String ET_MODID = "ExtraTrees";
public static final String ET_MODID = "extratrees";
public static final String EB_MOD_NAME = "Extra Trees";
@Mod.Instance("ExtraTrees")
@@ -61,10 +63,6 @@ public class ExtraTrees extends AbstractMod {
}
}
public static Item itemDictionary;
public static Item itemDictionaryLepi;
public static Item itemMisc;
public static Item itemFood;
public static Block blockStairs;
public static Block blockLog;
public static BlockCarpentry blockCarpentry;
@@ -75,8 +73,6 @@ public class ExtraTrees extends AbstractMod {
public static BlockCarpentry blockPanel;
public static Block blockSlab;
public static Block blockDoubleSlab;
public static Item itemHammer;
public static Item itemDurableHammer;
public static Block blockGate;
public static Block blockDoor;
public static BlockMultiFence blockMultiFence;
@@ -113,6 +109,19 @@ public class ExtraTrees 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("ExtraTrees")) {
if (m.type == GameRegistry.Type.BLOCK) m.remap(GameRegistry.findBlock(ET_MODID, name[1]));
else m.remap(GameRegistry.findItem(ET_MODID, name[1]));
}
}
}
@Override
public IBinnieGUID[] getGUIDs() {
return ExtraTreesGUID.values();
@@ -128,10 +137,9 @@ public class ExtraTrees extends AbstractMod {
return ExtraTrees.proxy;
}
// Concerningly, this isn't the same as the MODID
@Override
public String getModID() {
return "extratrees";
return ET_MODID;
}
@Override
@@ -5,7 +5,5 @@ import net.minecraft.item.ItemStack;
public interface IToolHammer {
boolean isActive(ItemStack stack);
void onHammerUsed(ItemStack stack, EntityPlayer player);
}
@@ -204,16 +204,6 @@ public class BlockETDoor extends BlockDoor implements IBlockMetadata {
return true;
}
@Override
public int getPlacedMeta(ItemStack stack, World world, int x, int y, int z, ForgeDirection direction) {
return TileEntityMetadata.getItemDamage(stack);
}
@Override
public int getDroppedMeta(int blockMeta, int tileMeta) {
return tileMeta;
}
@Override
public String getBlockName(ItemStack stack) {
int meta = TileEntityMetadata.getItemDamage(stack);
@@ -225,11 +215,6 @@ public class BlockETDoor extends BlockDoor implements IBlockMetadata {
return I18N.localise("extratrees.block.door.name.adv", woodName, typeName);
}
@Override
public void addBlockTooltip(ItemStack stack, List<String> tooltip) {
// ignored
}
@Override
public void dropAsStack(World world, int x, int y, int z, ItemStack stack) {
dropBlockAsItem(world, x, y, z, stack);
@@ -117,11 +117,6 @@ public class BlockETLog extends BlockLog implements IBlockMetadata {
return tileentity != null && tileentity.receiveClientEvent(eventId, eventType);
}
@Override
public int getDroppedMeta(int blockMeta, int tileMeta) {
return tileMeta;
}
@Override
public String getBlockName(ItemStack itemStack) {
int meta = TileEntityMetadata.getItemDamage(itemStack);
@@ -132,16 +127,6 @@ public class BlockETLog extends BlockLog implements IBlockMetadata {
return I18N.localise("extratrees.block.log.name", logs[meta].getName());
}
@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 onBlockPlaced(World world, int x, int y, int z, int side, float par6, float par7, float par8, int meta) {
return switch (side) {
@@ -176,9 +161,4 @@ public class BlockETLog extends BlockLog implements IBlockMetadata {
public ItemStack getPickBlock(MovingObjectPosition target, World world, int x, int y, int z, EntityPlayer player) {
return BlockMetadata.getPickBlock(world, x, y, z);
}
@Override
public ItemStack getPickBlock(MovingObjectPosition target, World world, int x, int y, int z) {
return this.getPickBlock(target, world, x, y, z, null);
}
}
@@ -62,27 +62,12 @@ public class BlockETPlanks extends BlockWood 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) {
int meta = TileEntityMetadata.getItemDamage(itemStack);
return I18N.localise("extratrees.block.plank.name", PlankType.ExtraTreePlanks.values()[meta].getName());
}
@Override
public void addBlockTooltip(ItemStack itemStack, List<String> tooltip) {
// ignored
}
@Override
public void dropAsStack(World world, int x, int y, int z, ItemStack itemStack) {
dropBlockAsItem(world, x, y, z, itemStack);
@@ -75,27 +75,12 @@ public class BlockETSlab extends BlockWoodSlab 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) {
int meta = TileEntityMetadata.getItemDamage(itemStack);
return I18N.localise("extratrees.block.woodslab.name", PlankType.ExtraTreePlanks.values()[meta].getName());
}
@Override
public void addBlockTooltip(ItemStack itemStack, List<String> tooltip) {
// ignored
}
@Override
public void dropAsStack(World world, int x, int y, int z, ItemStack itemStack) {
dropBlockAsItem(world, x, y, z, itemStack);
@@ -95,27 +95,12 @@ public class BlockETStairs extends BlockStairs 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) {
int meta = TileEntityMetadata.getItemDamage(itemStack);
return I18N.localise("extratrees.block.woodstairs.name", WoodManager.getPlankType(meta + 32).getName());
}
@Override
public void addBlockTooltip(ItemStack itemStack, List tooltip) {
// ignored
}
@Override
public void breakBlock(World world, int x, int y, int z, Block block, int side) {
super.breakBlock(world, x, y, z, block, side);
@@ -109,25 +109,12 @@ public class BlockFence extends net.minecraft.block.BlockFence implements IBlock
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);
return I18N.localise("extratrees.block.woodfence.name", getDescription(meta).getPlankType().getName());
}
@Override
public void addBlockTooltip(ItemStack itemStack, List tooltip) {}
@Override
public boolean canPlaceTorchOnTop(World world, int x, int y, int z) {
return true;
@@ -90,25 +90,12 @@ public class BlockGate extends BlockFenceGate 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) {
int meta = TileEntityMetadata.getItemDamage(itemStack);
return I18N.localise("extratrees.block.woodgate.name", WoodManager.getPlankType(meta).getName());
}
@Override
public void addBlockTooltip(ItemStack itemStack, List tooltip) {}
@Override
public void breakBlock(World world, int x, int y, int z, Block block, int side) {
super.breakBlock(world, x, y, z, block, side);
@@ -60,8 +60,7 @@ public abstract class BlockDesign extends BlockMetadata implements IMultipassBlo
}
ItemStack item = player.getHeldItem();
if (item == null || !(item.getItem() instanceof IToolHammer)
|| !((IToolHammer) item.getItem()).isActive(item)) {
if (item == null || !(item.getItem() instanceof IToolHammer)) {
return;
}
@@ -1,5 +1,8 @@
package binnie.extratrees.carpentry;
import static binnie.extratrees.item.ETMisc.Items.GlassFitting;
import static binnie.extratrees.item.ETMisc.Items.WoodWax;
import java.util.HashMap;
import java.util.Map;
@@ -15,7 +18,6 @@ import binnie.extratrees.api.IDesignMaterial;
import binnie.extratrees.api.IDesignSystem;
import binnie.extratrees.api.IPattern;
import binnie.extratrees.block.PlankType;
import binnie.extratrees.item.ExtraTreeItems;
public enum DesignSystem implements IDesignSystem {
@@ -81,8 +83,8 @@ public enum DesignSystem implements IDesignSystem {
@Override
public ItemStack getAdhesive() {
return switch (this) {
case Glass -> ExtraTreeItems.GlassFitting.get(1);
case Wood -> ExtraTreeItems.WoodWax.get(1);
case Glass -> GlassFitting.get(1);
case Wood -> WoodWax.get(1);
};
}
@@ -98,11 +98,6 @@ public class ModuleCarpentry implements IInitializable {
.registerCustomItemRenderer(Item.getItemFromBlock(ExtraTrees.blockPanel), new MultipassItemRenderer());
}
@Override
public void init() {
// ignored
}
@Override
public void postInit() {
for (EnumDesign design : EnumDesign.values()) {
@@ -0,0 +1,16 @@
package binnie.extratrees.config;
import static binnie.extratrees.ExtraTrees.EB_MOD_NAME;
import static binnie.extratrees.ExtraTrees.ET_MODID;
import net.minecraft.client.gui.GuiScreen;
import com.gtnewhorizon.gtnhlib.config.ConfigException;
import com.gtnewhorizon.gtnhlib.config.SimpleGuiConfig;
public class ETConfigGUI extends SimpleGuiConfig {
public ETConfigGUI(GuiScreen parent) throws ConfigException {
super(parent, ETConfig.class, ET_MODID, EB_MOD_NAME);
}
}
@@ -0,0 +1,13 @@
package binnie.extratrees.config;
import net.minecraft.client.gui.GuiScreen;
import com.gtnewhorizon.gtnhlib.config.SimpleGuiFactory;
public class ETConfigGUIFactory implements SimpleGuiFactory {
@Override
public Class<? extends GuiScreen> mainConfigGuiClass() {
return ETConfigGUI.class;
}
}
@@ -20,16 +20,6 @@ import forestry.api.arboriculture.IAlleleTreeSpecies;
public class ModuleCore implements IInitializable {
@Override
public void preInit() {
// ignored
}
@Override
public void init() {
// ignored
}
@Override
public void postInit() {
if (!BinnieCore.proxy.isDebug()) {
@@ -15,10 +15,10 @@ import com.gtnewhorizon.gtnhlib.reflect.Fields;
import binnie.Binnie;
import binnie.core.util.I18N;
import binnie.extratrees.ExtraTrees;
import binnie.extratrees.block.FruitPod;
import binnie.extratrees.config.ETConfig;
import binnie.extratrees.item.Food;
import binnie.extratrees.item.ETItems;
import binnie.extratrees.item.FoodItems;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import forestry.api.arboriculture.EnumTreeChromosome;
@@ -137,121 +137,121 @@ public enum ExtraTreeFruitGene implements IAlleleFruit, IFruitProvider {
AlleleManager.alleleRegistry.registerFruitFamily(familyCitrus);
ExtraTreeFruitGene.Apple.addProduct(new ItemStack(Items.apple), 1.0f);
ExtraTreeFruitGene.Apple.setFamily(familyPome);
ExtraTreeFruitGene.Crabapple.addProduct(Food.Crabapple.get(1), 1.0f);
ExtraTreeFruitGene.Crabapple.addProduct(FoodItems.Items.Crabapple.get(1), 1.0f);
ExtraTreeFruitGene.Crabapple.setFamily(familyPome);
ExtraTreeFruitGene.Orange.addProduct(Food.Orange.get(1), 1.0f);
ExtraTreeFruitGene.Orange.addProduct(FoodItems.Items.Orange.get(1), 1.0f);
ExtraTreeFruitGene.Orange.setFamily(familyCitrus);
ExtraTreeFruitGene.Manderin.addProduct(Food.Manderin.get(1), 1.0f);
ExtraTreeFruitGene.Manderin.addProduct(FoodItems.Items.Manderin.get(1), 1.0f);
ExtraTreeFruitGene.Manderin.setFamily(familyCitrus);
ExtraTreeFruitGene.Tangerine.addProduct(Food.Tangerine.get(1), 1.0f);
ExtraTreeFruitGene.Tangerine.addProduct(FoodItems.Items.Tangerine.get(1), 1.0f);
ExtraTreeFruitGene.Tangerine.setFamily(familyCitrus);
ExtraTreeFruitGene.Satsuma.addProduct(Food.Satsuma.get(1), 1.0f);
ExtraTreeFruitGene.Satsuma.addProduct(FoodItems.Items.Satsuma.get(1), 1.0f);
ExtraTreeFruitGene.Satsuma.setFamily(familyCitrus);
ExtraTreeFruitGene.KeyLime.addProduct(Food.KeyLime.get(1), 1.0f);
ExtraTreeFruitGene.KeyLime.addProduct(FoodItems.Items.KeyLime.get(1), 1.0f);
ExtraTreeFruitGene.KeyLime.setFamily(familyCitrus);
ExtraTreeFruitGene.Lime.addProduct(Food.Lime.get(1), 1.0f);
ExtraTreeFruitGene.Lime.addProduct(FoodItems.Items.Lime.get(1), 1.0f);
ExtraTreeFruitGene.Lime.setFamily(familyCitrus);
ExtraTreeFruitGene.FingerLime.addProduct(Food.FingerLime.get(1), 1.0f);
ExtraTreeFruitGene.FingerLime.addProduct(FoodItems.Items.FingerLime.get(1), 1.0f);
ExtraTreeFruitGene.FingerLime.setFamily(familyCitrus);
ExtraTreeFruitGene.Pomelo.addProduct(Food.Pomelo.get(1), 1.0f);
ExtraTreeFruitGene.Pomelo.addProduct(FoodItems.Items.Pomelo.get(1), 1.0f);
ExtraTreeFruitGene.Pomelo.setFamily(familyCitrus);
ExtraTreeFruitGene.Grapefruit.addProduct(Food.Grapefruit.get(1), 1.0f);
ExtraTreeFruitGene.Grapefruit.addProduct(FoodItems.Items.Grapefruit.get(1), 1.0f);
ExtraTreeFruitGene.Grapefruit.setFamily(familyCitrus);
ExtraTreeFruitGene.Kumquat.addProduct(Food.Kumquat.get(1), 1.0f);
ExtraTreeFruitGene.Kumquat.addProduct(FoodItems.Items.Kumquat.get(1), 1.0f);
ExtraTreeFruitGene.Kumquat.setFamily(familyCitrus);
ExtraTreeFruitGene.Citron.addProduct(Food.Citron.get(1), 1.0f);
ExtraTreeFruitGene.Citron.addProduct(FoodItems.Items.Citron.get(1), 1.0f);
ExtraTreeFruitGene.Citron.setFamily(familyCitrus);
ExtraTreeFruitGene.BuddhaHand.addProduct(Food.BuddhaHand.get(1), 1.0f);
ExtraTreeFruitGene.BuddhaHand.addProduct(FoodItems.Items.BuddhaHand.get(1), 1.0f);
ExtraTreeFruitGene.BuddhaHand.setFamily(familyCitrus);
ExtraTreeFruitGene.Blackthorn.addProduct(Food.Blackthorn.get(1), 1.0f);
ExtraTreeFruitGene.Blackthorn.addProduct(FoodItems.Items.Blackthorn.get(1), 1.0f);
ExtraTreeFruitGene.Blackthorn.setFamily(familyPrune);
ExtraTreeFruitGene.CherryPlum.addProduct(Food.CherryPlum.get(1), 1.0f);
ExtraTreeFruitGene.CherryPlum.addProduct(FoodItems.Items.CherryPlum.get(1), 1.0f);
ExtraTreeFruitGene.CherryPlum.setFamily(familyPrune);
ExtraTreeFruitGene.Peach.addProduct(Food.Peach.get(1), 1.0f);
ExtraTreeFruitGene.Peach.addProduct(FoodItems.Items.Peach.get(1), 1.0f);
ExtraTreeFruitGene.Peach.setFamily(familyPrune);
ExtraTreeFruitGene.Nectarine.addProduct(Food.Nectarine.get(1), 1.0f);
ExtraTreeFruitGene.Nectarine.addProduct(FoodItems.Items.Nectarine.get(1), 1.0f);
ExtraTreeFruitGene.Nectarine.setFamily(familyPrune);
ExtraTreeFruitGene.Apricot.addProduct(Food.Apricot.get(1), 1.0f);
ExtraTreeFruitGene.Apricot.addProduct(FoodItems.Items.Apricot.get(1), 1.0f);
ExtraTreeFruitGene.Apricot.setFamily(familyPrune);
ExtraTreeFruitGene.Almond.addProduct(Food.Almond.get(1), 1.0f);
ExtraTreeFruitGene.Almond.addProduct(FoodItems.Items.Almond.get(1), 1.0f);
ExtraTreeFruitGene.Almond.setFamily(familyPrune);
ExtraTreeFruitGene.WildCherry.addProduct(Food.WildCherry.get(1), 1.0f);
ExtraTreeFruitGene.WildCherry.addProduct(FoodItems.Items.WildCherry.get(1), 1.0f);
ExtraTreeFruitGene.WildCherry.setFamily(familyPrune);
ExtraTreeFruitGene.SourCherry.addProduct(Food.SourCherry.get(1), 1.0f);
ExtraTreeFruitGene.SourCherry.addProduct(FoodItems.Items.SourCherry.get(1), 1.0f);
ExtraTreeFruitGene.SourCherry.setFamily(familyPrune);
ExtraTreeFruitGene.BlackCherry.addProduct(Food.BlackCherry.get(1), 1.0f);
ExtraTreeFruitGene.BlackCherry.addProduct(FoodItems.Items.BlackCherry.get(1), 1.0f);
ExtraTreeFruitGene.BlackCherry.setFamily(familyPrune);
ExtraTreeFruitGene.Hazelnut.addProduct(Food.Hazelnut.get(1), 1.0f);
ExtraTreeFruitGene.Hazelnut.addProduct(FoodItems.Items.Hazelnut.get(1), 1.0f);
ExtraTreeFruitGene.Hazelnut.setFamily(familyNuts);
ExtraTreeFruitGene.Butternut.addProduct(Food.Butternut.get(1), 1.0f);
ExtraTreeFruitGene.Butternut.addProduct(FoodItems.Items.Butternut.get(1), 1.0f);
ExtraTreeFruitGene.Butternut.setFamily(familyNuts);
ExtraTreeFruitGene.Beechnut.addProduct(Food.Beechnut.get(1), 1.0f);
ExtraTreeFruitGene.Beechnut.addProduct(FoodItems.Items.Beechnut.get(1), 1.0f);
ExtraTreeFruitGene.Beechnut.setFamily(familyNuts);
ExtraTreeFruitGene.Pecan.addProduct(Food.Pecan.get(1), 1.0f);
ExtraTreeFruitGene.Pecan.addProduct(FoodItems.Items.Pecan.get(1), 1.0f);
ExtraTreeFruitGene.Pecan.setFamily(familyNuts);
ExtraTreeFruitGene.Banana.addProduct(Food.Banana.get(2), 1.0f);
ExtraTreeFruitGene.Banana.addProduct(FoodItems.Items.Banana.get(2), 1.0f);
ExtraTreeFruitGene.Banana.setFamily(familyJungle);
ExtraTreeFruitGene.RedBanana.addProduct(Food.RedBanana.get(2), 1.0f);
ExtraTreeFruitGene.RedBanana.addProduct(FoodItems.Items.RedBanana.get(2), 1.0f);
ExtraTreeFruitGene.RedBanana.setFamily(familyJungle);
ExtraTreeFruitGene.Plantain.addProduct(Food.Plantain.get(2), 1.0f);
ExtraTreeFruitGene.Plantain.addProduct(FoodItems.Items.Plantain.get(2), 1.0f);
ExtraTreeFruitGene.Plantain.setFamily(familyJungle);
ExtraTreeFruitGene.BrazilNut.addProduct(Food.BrazilNut.get(4), 1.0f);
ExtraTreeFruitGene.BrazilNut.addProduct(FoodItems.Items.BrazilNut.get(4), 1.0f);
ExtraTreeFruitGene.BrazilNut.setFamily(familyNuts);
ExtraTreeFruitGene.Fig.addProduct(Food.Fig.get(1), 1.0f);
ExtraTreeFruitGene.Fig.addProduct(FoodItems.Items.Fig.get(1), 1.0f);
ExtraTreeFruitGene.Fig.setFamily(familyPrune);
ExtraTreeFruitGene.Acorn.addProduct(Food.Acorn.get(1), 1.0f);
ExtraTreeFruitGene.Acorn.addProduct(FoodItems.Items.Acorn.get(1), 1.0f);
ExtraTreeFruitGene.Acorn.setFamily(familyNuts);
ExtraTreeFruitGene.Elderberry.addProduct(Food.Elderberry.get(1), 1.0f);
ExtraTreeFruitGene.Elderberry.addProduct(FoodItems.Items.Elderberry.get(1), 1.0f);
ExtraTreeFruitGene.Elderberry.setFamily(familyPrune);
ExtraTreeFruitGene.Olive.addProduct(Food.Olive.get(1), 1.0f);
ExtraTreeFruitGene.Olive.addProduct(FoodItems.Items.Olive.get(1), 1.0f);
ExtraTreeFruitGene.Olive.setFamily(familyPrune);
ExtraTreeFruitGene.GingkoNut.addProduct(Food.GingkoNut.get(1), 1.0f);
ExtraTreeFruitGene.GingkoNut.addProduct(FoodItems.Items.GingkoNut.get(1), 1.0f);
ExtraTreeFruitGene.GingkoNut.setFamily(familyNuts);
ExtraTreeFruitGene.Coffee.addProduct(Food.Coffee.get(1), 1.0f);
ExtraTreeFruitGene.Coffee.addProduct(FoodItems.Items.Coffee.get(1), 1.0f);
ExtraTreeFruitGene.Coffee.setFamily(familyJungle);
ExtraTreeFruitGene.Pear.addProduct(Food.Pear.get(1), 1.0f);
ExtraTreeFruitGene.Pear.addProduct(FoodItems.Items.Pear.get(1), 1.0f);
ExtraTreeFruitGene.Pear.setFamily(familyPome);
ExtraTreeFruitGene.OsangeOsange.addProduct(Food.OsangeOrange.get(1), 1.0f);
ExtraTreeFruitGene.OsangeOsange.addProduct(FoodItems.Items.OsangeOrange.get(1), 1.0f);
ExtraTreeFruitGene.OsangeOsange.setFamily(familyPome);
ExtraTreeFruitGene.Clove.addProduct(Food.Clove.get(1), 1.0f);
ExtraTreeFruitGene.Clove.addProduct(FoodItems.Items.Clove.get(1), 1.0f);
ExtraTreeFruitGene.Clove.setFamily(familyNuts);
ExtraTreeFruitGene.Blackcurrant.addProduct(Food.Blackcurrant.get(2), 1.0f);
ExtraTreeFruitGene.Blackcurrant.addProduct(FoodItems.Items.Blackcurrant.get(2), 1.0f);
ExtraTreeFruitGene.Blackcurrant.setFamily(familyBerry);
ExtraTreeFruitGene.Redcurrant.addProduct(Food.Redcurrant.get(2), 1.0f);
ExtraTreeFruitGene.Redcurrant.addProduct(FoodItems.Items.Redcurrant.get(2), 1.0f);
ExtraTreeFruitGene.Redcurrant.setFamily(familyBerry);
ExtraTreeFruitGene.Blackberry.addProduct(Food.Blackberry.get(2), 1.0f);
ExtraTreeFruitGene.Blackberry.addProduct(FoodItems.Items.Blackberry.get(2), 1.0f);
ExtraTreeFruitGene.Blackberry.setFamily(familyBerry);
ExtraTreeFruitGene.Raspberry.addProduct(Food.Raspberry.get(2), 1.0f);
ExtraTreeFruitGene.Raspberry.addProduct(FoodItems.Items.Raspberry.get(2), 1.0f);
ExtraTreeFruitGene.Raspberry.setFamily(familyBerry);
ExtraTreeFruitGene.Blueberry.addProduct(Food.Blueberry.get(2), 1.0f);
ExtraTreeFruitGene.Blueberry.addProduct(FoodItems.Items.Blueberry.get(2), 1.0f);
ExtraTreeFruitGene.Blueberry.setFamily(familyBerry);
ExtraTreeFruitGene.Cranberry.addProduct(Food.Cranberry.get(2), 1.0f);
ExtraTreeFruitGene.Cranberry.addProduct(FoodItems.Items.Cranberry.get(2), 1.0f);
ExtraTreeFruitGene.Cranberry.setFamily(familyBerry);
ExtraTreeFruitGene.Juniper.addProduct(Food.Juniper.get(2), 1.0f);
ExtraTreeFruitGene.Juniper.addProduct(FoodItems.Items.Juniper.get(2), 1.0f);
ExtraTreeFruitGene.Juniper.setFamily(familyBerry);
ExtraTreeFruitGene.Gooseberry.addProduct(Food.Gooseberry.get(2), 1.0f);
ExtraTreeFruitGene.Gooseberry.addProduct(FoodItems.Items.Gooseberry.get(2), 1.0f);
ExtraTreeFruitGene.Gooseberry.setFamily(familyBerry);
ExtraTreeFruitGene.GoldenRaspberry.addProduct(Food.GoldenRaspberry.get(2), 1.0f);
ExtraTreeFruitGene.GoldenRaspberry.addProduct(FoodItems.Items.GoldenRaspberry.get(2), 1.0f);
ExtraTreeFruitGene.GoldenRaspberry.setFamily(familyBerry);
ExtraTreeFruitGene.Coconut.addProduct(Food.Coconut.get(1), 1.0f);
ExtraTreeFruitGene.Coconut.addProduct(FoodItems.Items.Coconut.get(1), 1.0f);
ExtraTreeFruitGene.Coconut.setFamily(familyJungle);
ExtraTreeFruitGene.Cashew.addProduct(Food.Cashew.get(1), 1.0f);
ExtraTreeFruitGene.Cashew.addProduct(FoodItems.Items.Cashew.get(1), 1.0f);
ExtraTreeFruitGene.Cashew.setFamily(familyJungle);
ExtraTreeFruitGene.Avacado.addProduct(Food.Avacado.get(1), 1.0f);
ExtraTreeFruitGene.Avacado.addProduct(FoodItems.Items.Avacado.get(1), 1.0f);
ExtraTreeFruitGene.Avacado.setFamily(familyJungle);
ExtraTreeFruitGene.Nutmeg.addProduct(Food.Nutmeg.get(1), 1.0f);
ExtraTreeFruitGene.Nutmeg.addProduct(FoodItems.Items.Nutmeg.get(1), 1.0f);
ExtraTreeFruitGene.Nutmeg.setFamily(familyJungle);
ExtraTreeFruitGene.Allspice.addProduct(Food.Allspice.get(1), 1.0f);
ExtraTreeFruitGene.Allspice.addProduct(FoodItems.Items.Allspice.get(1), 1.0f);
ExtraTreeFruitGene.Allspice.setFamily(familyJungle);
ExtraTreeFruitGene.Chilli.addProduct(Food.Chilli.get(1), 1.0f);
ExtraTreeFruitGene.Chilli.addProduct(FoodItems.Items.Chilli.get(1), 1.0f);
ExtraTreeFruitGene.Chilli.setFamily(familyJungle);
ExtraTreeFruitGene.StarAnise.addProduct(Food.StarAnise.get(1), 1.0f);
ExtraTreeFruitGene.StarAnise.addProduct(FoodItems.Items.StarAnise.get(1), 1.0f);
ExtraTreeFruitGene.StarAnise.setFamily(familyJungle);
ExtraTreeFruitGene.Mango.addProduct(Food.Mango.get(1), 1.0f);
ExtraTreeFruitGene.Mango.addProduct(FoodItems.Items.Mango.get(1), 1.0f);
ExtraTreeFruitGene.Mango.setFamily(familyPome);
ExtraTreeFruitGene.Starfruit.addProduct(Food.Starfruit.get(1), 1.0f);
ExtraTreeFruitGene.Starfruit.addProduct(FoodItems.Items.Starfruit.get(1), 1.0f);
ExtraTreeFruitGene.Starfruit.setFamily(familyJungle);
ExtraTreeFruitGene.Candlenut.addProduct(Food.Candlenut.get(1), 1.0f);
ExtraTreeFruitGene.Candlenut.addProduct(FoodItems.Items.Candlenut.get(1), 1.0f);
ExtraTreeFruitGene.Candlenut.setFamily(familyJungle);
if (ETConfig.alterLemon) {
@@ -376,7 +376,7 @@ public enum ExtraTreeFruitGene implements IAlleleFruit, IFruitProvider {
float modeYieldMod = 1.0f;
for (Map.Entry<ItemStack, Float> entry2 : products.entrySet()) {
if (world.rand.nextFloat() <= genome.getYield() * modeYieldMod * entry2.getValue() * 5.0f * stage) {
if (world.rand.nextFloat() <= genome.getYield() * modeYieldMod * entry2.getValue() * stage) {
product2.add(entry2.getKey().copy());
}
}
@@ -435,8 +435,8 @@ public enum ExtraTreeFruitGene implements IAlleleFruit, IFruitProvider {
}
for (ItemStack stack : products.keySet()) {
if (stack.getItem() == ExtraTrees.itemFood) {
return Food.values()[stack.getItemDamage()].toString();
if (stack.getItem() == ETItems.itemFood) {
return ETItems.itemFood.getName(stack.getItemDamage());
}
}
return "NoFruit";
@@ -32,11 +32,6 @@ public class ModuleGenetics implements IInitializable {
}
}
@Override
public void init() {
// ignored
}
@Override
public void postInit() {
ExtraTreeSpecies.init();
@@ -0,0 +1,15 @@
package binnie.extratrees.item;
import net.minecraft.item.Item;
import binnie.core.item.DamageItems;
public class ETItems {
public final static DamageItems itemMisc = new ETMisc();
public final static Item itemDictionary = new ItemDictionary();
public static Item itemDictionaryLepi;
public static FoodItems itemFood = new FoodItems();
public static Item itemHammer = new ItemHammer(false);
public static Item itemDurableHammer = new ItemHammer(true);
}
@@ -0,0 +1,41 @@
package binnie.extratrees.item;
import static binnie.extratrees.ExtraTrees.ET_MODID;
import static binnie.extratrees.item.ETItems.itemMisc;
import java.util.Arrays;
import net.minecraft.item.ItemStack;
import binnie.core.item.DamageItems;
import forestry.api.core.Tabs;
public class ETMisc extends DamageItems {
public enum Items {
// Binnie never enabled this one, so it does nothing
// TODO: re-enable or remove this
CarpentryHammer("carpentryHammer"),
Sawdust("sawdust"),
Bark("bark"),
ProvenGear("provenGear"),
WoodWax("woodWax"),
GlassFitting("glassFitting");
final String name;
private static final Items[] VALUES = values();
Items(String name) {
this.name = name;
}
public ItemStack get(int count) {
return itemMisc.getStack(count, ordinal());
}
}
protected ETMisc() {
super(Tabs.tabArboriculture, ET_MODID, Arrays.stream(Items.VALUES).map(i -> i.name).toArray(String[]::new));
}
}
@@ -1,60 +0,0 @@
package binnie.extratrees.item;
import java.util.List;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import binnie.core.item.IItemMisc;
import binnie.core.util.I18N;
import binnie.extratrees.ExtraTrees;
public enum ExtraTreeItems implements IItemMisc {
CarpentryHammer("carpentryHammer"),
Sawdust("sawdust"),
Bark("bark"),
ProvenGear("provenGear"),
WoodWax("woodWax"),
GlassFitting("glassFitting");
private final String name;
private final String iconPath;
private IIcon icon;
ExtraTreeItems(String name) {
this.name = name;
this.iconPath = name;
}
@Override
public IIcon getIcon(ItemStack itemStack) {
return icon;
}
@Override
public void registerIcons(IIconRegister register) {
icon = ExtraTrees.proxy.getIcon(register, iconPath);
}
@Override
public void addInformation(List<String> tooltip) {
// ignored
}
@Override
public String getName(ItemStack itemStack) {
return I18N.localise("extratrees.item." + name);
}
@Override
public boolean isActive() {
return this != ExtraTreeItems.CarpentryHammer;
}
@Override
public ItemStack get(int count) {
return new ItemStack(ExtraTrees.itemMisc, count, ordinal());
}
}
@@ -1,218 +0,0 @@
package binnie.extratrees.item;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import net.minecraft.client.renderer.texture.IIconRegister;
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.extratrees.ExtraTrees;
import forestry.api.recipes.RecipeManagers;
public enum Food implements IItemMisc {
Crabapple(2),
Orange(4),
Kumquat(2),
Lime(2),
WildCherry(2),
SourCherry(2),
BlackCherry(2),
Blackthorn(3),
CherryPlum(3),
Almond(1),
Apricot(4),
Grapefruit(4),
Peach(4),
Satsuma(3),
BuddhaHand(3),
Citron(3),
FingerLime(3),
KeyLime(2),
Manderin(3),
Nectarine(3),
Pomelo(3),
Tangerine(3),
Pear(4),
SandPear(2),
Hazelnut(2),
Butternut(1),
Beechnut(0),
Pecan(0),
Banana(4),
RedBanana(4),
Plantain(2),
BrazilNut(0),
Fig(2),
Acorn(0),
Elderberry(1),
Olive(1),
GingkoNut(1),
Coffee(0),
OsangeOrange(1),
Clove(0),
Papayimar(8),
Blackcurrant(2),
Redcurrant(2),
Blackberry(2),
Raspberry(2),
Blueberry(2),
Cranberry(2),
Juniper(0),
Gooseberry(2),
GoldenRaspberry(2),
Coconut(2),
Cashew(0),
Avacado(2),
Nutmeg(0),
Allspice(0),
Chilli(2),
StarAnise(0),
Mango(4),
Starfruit(2),
Candlenut(0);
private IIcon icon;
private final int hunger;
private final List<String> ores;
Food(int hunger) {
ores = new ArrayList<>();
this.hunger = hunger;
}
public static void registerOreDictionary() {
Food.Crabapple.ore("Apple").ore("Crabapple");
Food.Orange.ore("Orange");
Food.Kumquat.ore("Kumquat");
Food.Lime.ore("Lime");
Food.WildCherry.ore("Cherry").ore("WildCherry");
Food.SourCherry.ore("Cherry").ore("SourCherry");
Food.BlackCherry.ore("Cherry").ore("BlackCherry");
Food.Blackthorn.ore("Blackthorn");
Food.CherryPlum.ore("Plum").ore("CherryPlum");
Food.Almond.ore("Almond");
Food.Apricot.ore("Apricot");
Food.Grapefruit.ore("Grapefruit");
Food.Peach.ore("Peach");
Food.Satsuma.ore("Satsuma").ore("Orange");
Food.BuddhaHand.ore("BuddhaHand").ore("Citron");
Food.Citron.ore("Citron");
Food.FingerLime.ore("Lime").ore("FingerLime");
Food.KeyLime.ore("KeyLime").ore("Lime");
Food.Manderin.ore("Orange").ore("Manderin");
Food.Nectarine.ore("Peach").ore("Nectarine");
Food.Pomelo.ore("Pomelo");
Food.Tangerine.ore("Tangerine").ore("Orange");
Food.Pear.ore("Pear");
Food.SandPear.ore("SandPear");
Food.Hazelnut.ore("Hazelnut");
Food.Butternut.ore("Butternut").ore("Walnut");
Food.Beechnut.ore("Beechnut");
Food.Pecan.ore("Pecan");
Food.Banana.ore("Banana");
Food.RedBanana.ore("RedBanana").ore("Banana");
Food.Plantain.ore("Plantain");
Food.BrazilNut.ore("BrazilNut");
Food.Fig.ore("Fig");
Food.Acorn.ore("Acorn");
Food.Elderberry.ore("Elderberry");
Food.Olive.ore("Olive");
Food.GingkoNut.ore("GingkoNut");
Food.Coffee.ore("Coffee");
Food.OsangeOrange.ore("OsangeOrange");
Food.Clove.ore("Clove");
Food.Papayimar.ore("Papayimar");
Food.Blackcurrant.ore("Blackcurrant");
Food.Redcurrant.ore("Redcurrant");
Food.Blackberry.ore("Blackberry");
Food.Raspberry.ore("Raspberry");
Food.Blueberry.ore("Blueberry");
Food.Cranberry.ore("Cranberry");
Food.Juniper.ore("Juniper");
Food.Gooseberry.ore("Gooseberry");
Food.GoldenRaspberry.ore("GoldenRaspberry");
Food.Coconut.ore("Coconut");
Food.Cashew.ore("Cashew");
Food.Avacado.ore("Avacado");
Food.Nutmeg.ore("Nutmeg");
Food.Chilli.ore("Chilli");
Food.StarAnise.ore("StarAnise");
Food.Mango.ore("Mango");
Food.Starfruit.ore("Starfruit");
Food.Candlenut.ore("Candlenut");
}
public boolean isEdible() {
return hunger > 0;
}
public int getHealth() {
return hunger;
}
@Override
public boolean isActive() {
return true;
}
@Override
public String getName(ItemStack itemStack) {
return I18N.localise("for.extratrees.item.food." + name().toLowerCase());
}
@Override
public ItemStack get(int count) {
return new ItemStack(ExtraTrees.itemFood, count, ordinal());
}
@Override
public IIcon getIcon(ItemStack itemStack) {
return icon;
}
@Override
public void registerIcons(IIconRegister register) {
icon = ExtraTrees.proxy.getIcon(register, "food/" + toString());
}
@Override
public void addInformation(List<String> tooltip) {
// ignored
}
public void addJuice(int time, int amount, int mulch) {
RecipeManagers.squeezerManager.addRecipe(
time,
new ItemStack[] { get(1) },
Binnie.Liquid.getLiquidStack("juice", amount),
Mods.forestry.stack("mulch"),
mulch);
}
public void addOil(int time, int amount, int mulch) {
RecipeManagers.squeezerManager.addRecipe(
time,
new ItemStack[] { get(1) },
Binnie.Liquid.getLiquidStack("seedoil", amount),
Mods.forestry.stack("mulch"),
mulch);
}
private Food ore(String string) {
OreDictionary.registerOre("crop" + string, get(1));
ores.add("crop" + string);
return this;
}
public Collection<String> getOres() {
return ores;
}
}
@@ -0,0 +1,273 @@
package binnie.extratrees.item;
import static binnie.extratrees.ExtraTrees.ET_MODID;
import static binnie.extratrees.item.ETItems.itemFood;
import java.util.Arrays;
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.ItemFood;
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.DamageItems;
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;
import forestry.api.recipes.RecipeManagers;
/**
* This class doesn't extend {@link DamageItems} because it needs to extend {@link net.minecraft.item.ItemFood}, and
* Java doesn't allow multiple inheritance.
*/
public class FoodItems extends ItemFood {
public enum Items {
Crabapple("Crabapple", 2),
Orange("Orange", 4),
Kumquat("Kumquat", 2),
Lime("Lime", 2),
WildCherry("WildCherry", 2),
SourCherry("SourCherry", 2),
BlackCherry("BlackCherry", 2),
Blackthorn("Blackthorn", 3),
CherryPlum("CherryPlum", 3),
Almond("Almond", 1),
Apricot("Apricot", 4),
Grapefruit("Grapefruit", 4),
Peach("Peach", 4),
Satsuma("Satsuma", 3),
BuddhaHand("BuddhaHand", 3),
Citron("Citron", 3),
FingerLime("FingerLime", 3),
KeyLime("KeyLime", 2),
Manderin("Manderin", 3),
Nectarine("Nectarine", 3),
Pomelo("Pomelo", 3),
Tangerine("Tangerine", 3),
Pear("Pear", 4),
SandPear("SandPear", 2),
Hazelnut("Hazelnut", 2),
Butternut("Butternut", 1),
Beechnut("Beechnut", 0),
Pecan("Pecan", 0),
Banana("Banana", 4),
RedBanana("RedBanana", 4),
Plantain("Plantain", 2),
BrazilNut("BrazilNut", 0),
Fig("Fig", 2),
Acorn("Acorn", 0),
Elderberry("Elderberry", 1),
Olive("Olive", 1),
GingkoNut("GingkoNut", 1),
Coffee("Coffee", 0),
OsangeOrange("OsangeOrange", 1),
Clove("Clove", 0),
Papayimar("Papayimar", 8),
Blackcurrant("Blackcurrant", 2),
Redcurrant("Redcurrant", 2),
Blackberry("Blackberry", 2),
Raspberry("Raspberry", 2),
Blueberry("Blueberry", 2),
Cranberry("Cranberry", 2),
Juniper("Juniper", 0),
Gooseberry("Gooseberry", 2),
GoldenRaspberry("GoldenRaspberry", 2),
Coconut("Coconut", 2),
Cashew("Cashew", 0),
Avacado("Avacado", 2),
Nutmeg("Nutmeg", 0),
Allspice("Allspice", 0),
Chilli("Chilli", 2),
StarAnise("StarAnise", 0),
Mango("Mango", 4),
Starfruit("Starfruit", 2),
Candlenut("Candlenut", 0);
final String name;
final int hunger;
private static final Items[] VALUES = values();
Items(String name, int hunger) {
this.name = name;
this.hunger = hunger;
}
public ItemStack get(int count) {
return itemFood.getStack(count, ordinal());
}
public void addJuice(int time, int amount, int mulch) {
RecipeManagers.squeezerManager.addRecipe(
time,
new ItemStack[] { get(1) },
Binnie.Liquid.getLiquidStack("juice", amount),
Mods.forestry.stack("mulch"),
mulch);
}
public void addOil(int time, int amount, int mulch) {
RecipeManagers.squeezerManager.addRecipe(
time,
new ItemStack[] { get(1) },
Binnie.Liquid.getLiquidStack("seedoil", amount),
Mods.forestry.stack("mulch"),
mulch);
}
Items addOredict(String string) {
OreDictionary.registerOre("crop" + string, get(1));
return this;
}
public static void registerOreDictionary() {
Crabapple.addOredict("Apple").addOredict("Crabapple");
Orange.addOredict("Orange");
Kumquat.addOredict("Kumquat");
Lime.addOredict("Lime");
WildCherry.addOredict("Cherry").addOredict("WildCherry");
SourCherry.addOredict("Cherry").addOredict("SourCherry");
BlackCherry.addOredict("Cherry").addOredict("BlackCherry");
Blackthorn.addOredict("Blackthorn");
CherryPlum.addOredict("Plum").addOredict("CherryPlum");
Almond.addOredict("Almond");
Apricot.addOredict("Apricot");
Grapefruit.addOredict("Grapefruit");
Peach.addOredict("Peach");
Satsuma.addOredict("Satsuma").addOredict("Orange");
BuddhaHand.addOredict("BuddhaHand").addOredict("Citron");
Citron.addOredict("Citron");
FingerLime.addOredict("Lime").addOredict("FingerLime");
KeyLime.addOredict("KeyLime").addOredict("Lime");
Manderin.addOredict("Orange").addOredict("Manderin");
Nectarine.addOredict("Peach").addOredict("Nectarine");
Pomelo.addOredict("Pomelo");
Tangerine.addOredict("Tangerine").addOredict("Orange");
Pear.addOredict("Pear");
SandPear.addOredict("SandPear");
Hazelnut.addOredict("Hazelnut");
Butternut.addOredict("Butternut").addOredict("Walnut");
Beechnut.addOredict("Beechnut");
Pecan.addOredict("Pecan");
Banana.addOredict("Banana");
RedBanana.addOredict("RedBanana").addOredict("Banana");
Plantain.addOredict("Plantain");
BrazilNut.addOredict("BrazilNut");
Fig.addOredict("Fig");
Acorn.addOredict("Acorn");
Elderberry.addOredict("Elderberry");
Olive.addOredict("Olive");
GingkoNut.addOredict("GingkoNut");
Coffee.addOredict("Coffee");
OsangeOrange.addOredict("OsangeOrange");
Clove.addOredict("Clove");
Papayimar.addOredict("Papayimar");
Blackcurrant.addOredict("Blackcurrant");
Redcurrant.addOredict("Redcurrant");
Blackberry.addOredict("Blackberry");
Raspberry.addOredict("Raspberry");
Blueberry.addOredict("Blueberry");
Cranberry.addOredict("Cranberry");
Juniper.addOredict("Juniper");
Gooseberry.addOredict("Gooseberry");
GoldenRaspberry.addOredict("GoldenRaspberry");
Coconut.addOredict("Coconut");
Cashew.addOredict("Cashew");
Avacado.addOredict("Avacado");
Nutmeg.addOredict("Nutmeg");
Chilli.addOredict("Chilli");
StarAnise.addOredict("StarAnise");
Mango.addOredict("Mango");
Starfruit.addOredict("Starfruit");
Candlenut.addOredict("Candlenut");
}
}
private final String[] NAMES;
private final IIcon[] ICONS;
private final String modid;
protected FoodItems() {
super(0, 0, false);
final String name = "food";
setCreativeTab(Tabs.tabArboriculture);
setHasSubtypes(true);
setUnlocalizedName(name);
NAMES = Arrays.stream(Items.VALUES).map(i -> i.name).toArray(String[]::new);
ICONS = new IIcon[NAMES.length];
this.modid = ET_MODID;
GameRegistry.registerItem(this, name);
}
public ItemStack getStack(int count, int damage) {
return new ItemStack(this, count, damage);
}
public String getName(int damage) {
return damage < NAMES.length ? NAMES[damage] : null;
}
@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("for.extratrees.item.food." + NAMES[damage].toLowerCase())
: "null";
}
@Override
public IIcon getIcon(ItemStack stack, int pass) {
return getIconFromDamage(stack.getItemDamage());
}
@Override
public IIcon getIconFromDamage(int damage) {
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) {
for (int i = 0; i < NAMES.length; ++i) {
ICONS[i] = register.registerIcon(modid + ":food/" + getIconName(i));
}
}
/**
* I don't quite understand why these next two functions were overridden instead of using something with deobfed
* names. In the vain hope of not breaking things, I leave them unchanged.
*/
@Override
public int func_150905_g(ItemStack stack) {
return Items.VALUES[stack.getItemDamage()].hunger;
}
@Override
public float func_150906_h(ItemStack stack) {
return 3.0f;
}
}
@@ -13,6 +13,7 @@ import net.minecraft.world.World;
import binnie.core.util.I18N;
import binnie.extratrees.ExtraTrees;
import binnie.extratrees.core.ExtraTreesGUID;
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 = "database";
setCreativeTab(Tabs.tabArboriculture);
setUnlocalizedName("database");
setUnlocalizedName(name);
setMaxStackSize(1);
GameRegistry.registerItem(this, name);
}
@Override
@@ -74,7 +79,7 @@ public class ItemDictionary extends Item {
@Override
public String getItemStackDisplayName(ItemStack i) {
return (i.getItemDamage() == 0) ? I18N.localise("extratrees.item.database")
: I18N.localise("extratrees.item.masterDatabase");
return (i.getItemDamage() == 0) ? I18N.localise("extratrees.item.database.name")
: I18N.localise("extratrees.item.masterDatabase.name");
}
}
@@ -1,98 +0,0 @@
package binnie.extratrees.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 binnie.core.item.IItemMisc;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import forestry.api.core.Tabs;
public class ItemFood extends net.minecraft.item.ItemFood {
protected IItemMisc[] items;
public ItemFood() {
super(0, 0.0f, false);
setUnlocalizedName("food");
setCreativeTab(Tabs.tabArboriculture);
setHasSubtypes(true);
items = Food.values();
}
@Override
@SideOnly(Side.CLIENT)
public void getSubItems(Item item, CreativeTabs tab, List<ItemStack> list) {
for (IItemMisc itemMisc : items) {
if (itemMisc.isActive()) {
list.add(getStack(itemMisc, 1));
}
}
}
private IItemMisc getItem(int damage) {
return (damage >= items.length) ? items[0] : items[damage];
}
public ItemStack getStack(IItemMisc type, int size) {
return new ItemStack(this, size, type.ordinal());
}
@Override
@SideOnly(Side.CLIENT)
public void addInformation(ItemStack stack, EntityPlayer player, List<String> tooltip, boolean advanced) {
super.addInformation(stack, player, tooltip, advanced);
IItemMisc item = getItem(stack.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) {
if (item.isActive()) {
item.registerIcons(register);
}
}
}
private Food getFood(ItemStack stack) {
return Food.values()[stack.getItemDamage()];
}
@Override
public int func_150905_g(ItemStack stack) {
return getFood(stack).getHealth();
}
@Override
public float func_150906_h(ItemStack stack) {
return 3.0f;
}
}
@@ -9,36 +9,37 @@ import net.minecraft.item.ItemStack;
import binnie.core.util.I18N;
import binnie.extratrees.ExtraTrees;
import binnie.extratrees.api.IToolHammer;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class ItemHammer extends Item implements IToolHammer {
private final String name;
protected boolean isDurableHammer;
public ItemHammer(boolean durable) {
name = durable ? "durableHammer" : "hammer";
isDurableHammer = durable;
setCreativeTab(CreativeTabs.tabTools);
setUnlocalizedName(durable ? "durableHammer" : "hammer");
setUnlocalizedName(name);
setMaxStackSize(1);
setMaxDamage(durable ? 1562 : 251);
GameRegistry.registerItem(this, name);
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister register) {
itemIcon = ExtraTrees.proxy.getIcon(register, isDurableHammer ? "durableHammer" : "carpentryHammer");
itemIcon = ExtraTrees.proxy.getIcon(register, name);
}
@Override
public String getItemStackDisplayName(ItemStack i) {
return isDurableHammer ? I18N.localise("extratrees.item.masterCarpentryHammer")
: I18N.localise("extratrees.item.carpentryHammer");
}
@Override
public boolean isActive(ItemStack stack) {
return true;
return isDurableHammer ? I18N.localise("extratrees.item.masterCarpentryHammer.name")
: I18N.localise("extratrees.item.carpentryHammer.name");
}
@Override
@@ -13,6 +13,7 @@ import net.minecraft.world.World;
import binnie.core.util.I18N;
import binnie.extratrees.ExtraTrees;
import binnie.extratrees.core.ExtraTreesGUID;
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 ItemMothDatabase extends Item {
protected IIcon iconMaster;
public ItemMothDatabase() {
final String name = "databaseMoth";
setCreativeTab(Tabs.tabLepidopterology);
setUnlocalizedName("databaseMoth");
setUnlocalizedName(name);
setMaxStackSize(1);
GameRegistry.registerItem(this, name);
}
@Override
@@ -78,7 +83,7 @@ public class ItemMothDatabase extends Item {
@Override
public String getItemStackDisplayName(ItemStack stack) {
return (stack.getItemDamage() == 0) ? I18N.localise("extratrees.item.mothDatabase")
: I18N.localise("extratrees.item.mothMasterDatabase");
return (stack.getItemDamage() == 0) ? I18N.localise("extratrees.item.mothDatabase.name")
: I18N.localise("extratrees.item.mothMasterDatabase.name");
}
}
@@ -1,5 +1,11 @@
package binnie.extratrees.item;
import static binnie.extratrees.item.ETItems.itemMisc;
import static binnie.extratrees.item.ETMisc.Items.Bark;
import static binnie.extratrees.item.ETMisc.Items.GlassFitting;
import static binnie.extratrees.item.ETMisc.Items.ProvenGear;
import static binnie.extratrees.item.ETMisc.Items.WoodWax;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
@@ -14,12 +20,9 @@ import binnie.Binnie;
import binnie.core.BinnieCore;
import binnie.core.IInitializable;
import binnie.core.Mods;
import binnie.core.item.ItemMisc;
import binnie.core.liquid.ItemFluidContainer;
import binnie.extratrees.ExtraTrees;
import binnie.extratrees.block.ILogType;
import cpw.mods.fml.common.registry.GameRegistry;
import forestry.api.core.Tabs;
import forestry.api.fuels.EngineBronzeFuel;
import forestry.api.fuels.FuelManager;
import forestry.api.recipes.RecipeManagers;
@@ -28,83 +31,81 @@ public class ModuleItems implements IInitializable {
@Override
public void preInit() {
ExtraTrees.itemMisc = Binnie.Item.registerMiscItems(ExtraTreeItems.values(), Tabs.tabArboriculture);
ExtraTrees.itemDictionary = new ItemDictionary();
// Loads ETItems.class, guaranteeing that items are init by this point
// TODO: is this needed?
itemMisc.getUnlocalizedName();
if (BinnieCore.isLepidopteryActive()) {
ExtraTrees.itemDictionaryLepi = new ItemMothDatabase();
ETItems.itemDictionaryLepi = new ItemMothDatabase();
}
Binnie.Liquid.createLiquids(ExtraTreeLiquid.values(), ItemFluidContainer.LiquidExtraTree);
ExtraTrees.itemFood = new ItemFood();
ExtraTrees.itemHammer = new ItemHammer(false);
ExtraTrees.itemDurableHammer = new ItemHammer(true);
}
@Override
public void init() {
OreDictionary.registerOre("pulpWood", ExtraTreeItems.Sawdust.get(1));
Food.registerOreDictionary();
OreDictionary.registerOre("pulpWood", ETMisc.Items.Sawdust.get(1));
FoodItems.Items.registerOreDictionary();
OreDictionary.registerOre("cropApple", Items.apple);
OreDictionary.registerOre("seedWheat", Items.wheat_seeds);
Food.Crabapple.addJuice(10, 150, 10);
Food.Orange.addJuice(10, 400, 15);
Food.Kumquat.addJuice(10, 300, 10);
Food.Lime.addJuice(10, 300, 10);
Food.WildCherry.addOil(20, 50, 5);
Food.SourCherry.addOil(20, 50, 3);
Food.BlackCherry.addOil(20, 50, 5);
Food.Blackthorn.addJuice(10, 50, 5);
Food.CherryPlum.addJuice(10, 100, 60);
Food.Almond.addOil(20, 80, 5);
Food.Apricot.addJuice(10, 150, 40);
Food.Grapefruit.addJuice(10, 500, 15);
Food.Peach.addJuice(10, 150, 40);
Food.Satsuma.addJuice(10, 300, 10);
Food.BuddhaHand.addJuice(10, 400, 15);
Food.Citron.addJuice(10, 400, 15);
Food.FingerLime.addJuice(10, 300, 10);
Food.KeyLime.addJuice(10, 300, 10);
Food.Manderin.addJuice(10, 400, 10);
Food.Nectarine.addJuice(10, 150, 40);
Food.Pomelo.addJuice(10, 300, 10);
Food.Tangerine.addJuice(10, 300, 10);
Food.Pear.addJuice(10, 300, 20);
Food.SandPear.addJuice(10, 200, 10);
Food.Hazelnut.addOil(20, 150, 5);
Food.Butternut.addOil(20, 180, 5);
Food.Beechnut.addOil(20, 100, 4);
Food.Pecan.addOil(29, 50, 2);
Food.Banana.addJuice(10, 100, 30);
Food.RedBanana.addJuice(10, 100, 30);
Food.Plantain.addJuice(10, 100, 40);
Food.BrazilNut.addOil(20, 20, 2);
Food.Fig.addOil(20, 50, 3);
Food.Acorn.addOil(20, 50, 3);
Food.Elderberry.addJuice(10, 100, 5);
Food.Olive.addOil(20, 50, 3);
Food.GingkoNut.addOil(20, 50, 5);
Food.Coffee.addOil(15, 20, 2);
Food.OsangeOrange.addJuice(10, 300, 15);
Food.Clove.addOil(10, 25, 2);
Food.Coconut.addOil(20, 300, 25);
Food.Cashew.addJuice(10, 150, 15);
Food.Avacado.addJuice(10, 300, 15);
Food.Nutmeg.addOil(20, 50, 10);
Food.Allspice.addOil(20, 50, 10);
Food.Chilli.addJuice(10, 100, 10);
Food.StarAnise.addOil(20, 100, 10);
Food.Mango.addJuice(10, 400, 20);
Food.Starfruit.addJuice(10, 300, 10);
Food.Candlenut.addJuice(20, 50, 10);
FoodItems.Items.Crabapple.addJuice(10, 150, 10);
FoodItems.Items.Orange.addJuice(10, 400, 15);
FoodItems.Items.Kumquat.addJuice(10, 300, 10);
FoodItems.Items.Lime.addJuice(10, 300, 10);
FoodItems.Items.WildCherry.addOil(20, 50, 5);
FoodItems.Items.SourCherry.addOil(20, 50, 3);
FoodItems.Items.BlackCherry.addOil(20, 50, 5);
FoodItems.Items.Blackthorn.addJuice(10, 50, 5);
FoodItems.Items.CherryPlum.addJuice(10, 100, 60);
FoodItems.Items.Almond.addOil(20, 80, 5);
FoodItems.Items.Apricot.addJuice(10, 150, 40);
FoodItems.Items.Grapefruit.addJuice(10, 500, 15);
FoodItems.Items.Peach.addJuice(10, 150, 40);
FoodItems.Items.Satsuma.addJuice(10, 300, 10);
FoodItems.Items.BuddhaHand.addJuice(10, 400, 15);
FoodItems.Items.Citron.addJuice(10, 400, 15);
FoodItems.Items.FingerLime.addJuice(10, 300, 10);
FoodItems.Items.KeyLime.addJuice(10, 300, 10);
FoodItems.Items.Manderin.addJuice(10, 400, 10);
FoodItems.Items.Nectarine.addJuice(10, 150, 40);
FoodItems.Items.Pomelo.addJuice(10, 300, 10);
FoodItems.Items.Tangerine.addJuice(10, 300, 10);
FoodItems.Items.Pear.addJuice(10, 300, 20);
FoodItems.Items.SandPear.addJuice(10, 200, 10);
FoodItems.Items.Hazelnut.addOil(20, 150, 5);
FoodItems.Items.Butternut.addOil(20, 180, 5);
FoodItems.Items.Beechnut.addOil(20, 100, 4);
FoodItems.Items.Pecan.addOil(29, 50, 2);
FoodItems.Items.Banana.addJuice(10, 100, 30);
FoodItems.Items.RedBanana.addJuice(10, 100, 30);
FoodItems.Items.Plantain.addJuice(10, 100, 40);
FoodItems.Items.BrazilNut.addOil(20, 20, 2);
FoodItems.Items.Fig.addOil(20, 50, 3);
FoodItems.Items.Acorn.addOil(20, 50, 3);
FoodItems.Items.Elderberry.addJuice(10, 100, 5);
FoodItems.Items.Olive.addOil(20, 50, 3);
FoodItems.Items.GingkoNut.addOil(20, 50, 5);
FoodItems.Items.Coffee.addOil(15, 20, 2);
FoodItems.Items.OsangeOrange.addJuice(10, 300, 15);
FoodItems.Items.Clove.addOil(10, 25, 2);
FoodItems.Items.Coconut.addOil(20, 300, 25);
FoodItems.Items.Cashew.addJuice(10, 150, 15);
FoodItems.Items.Avacado.addJuice(10, 300, 15);
FoodItems.Items.Nutmeg.addOil(20, 50, 10);
FoodItems.Items.Allspice.addOil(20, 50, 10);
FoodItems.Items.Chilli.addJuice(10, 100, 10);
FoodItems.Items.StarAnise.addOil(20, 100, 10);
FoodItems.Items.Mango.addJuice(10, 400, 20);
FoodItems.Items.Starfruit.addJuice(10, 300, 10);
FoodItems.Items.Candlenut.addJuice(20, 50, 10);
}
@Override
public void postInit() {
GameRegistry.addRecipe(
new ShapedOreRecipe(
new ItemStack(ExtraTrees.itemDurableHammer, 1, 0),
new ItemStack(ETItems.itemDurableHammer, 1, 0),
"wiw",
" s ",
" s ",
@@ -117,7 +118,7 @@ public class ModuleItems implements IInitializable {
GameRegistry.addRecipe(
new ShapedOreRecipe(
new ItemStack(ExtraTrees.itemHammer, 1, 0),
new ItemStack(ETItems.itemHammer, 1, 0),
"wiw",
" s ",
" s ",
@@ -128,22 +129,13 @@ public class ModuleItems implements IInitializable {
's',
Items.stick));
GameRegistry
.addRecipe(ExtraTreeItems.ProvenGear.get(1), " s ", "s s", " s ", 's', Mods.forestry.stack("oakStick"));
GameRegistry.addRecipe(ProvenGear.get(1), " s ", "s s", " s ", 's', Mods.forestry.stack("oakStick"));
GameRegistry.addRecipe(
ExtraTreeItems.GlassFitting.get(6),
"s s",
" i ",
"s s",
'i',
Items.iron_ingot,
's',
Items.stick);
GameRegistry.addRecipe(GlassFitting.get(6), "s s", " i ", "s s", 'i', Items.iron_ingot, 's', Items.stick);
try {
Item minium = (Item) Class.forName("com.pahimar.ee3.lib.ItemIds").getField("miniumShard").get(null);
GameRegistry.addRecipe(new ShapelessOreRecipe(Food.Papayimar.get(1), minium, "cropPapaya"));
GameRegistry.addRecipe(new ShapelessOreRecipe(FoodItems.Items.Papayimar.get(1), minium, "cropPapaya"));
} catch (Exception ex) {
// ignored
}
@@ -152,7 +144,7 @@ public class ModuleItems implements IInitializable {
100,
Binnie.Liquid.getLiquidStack("water", 2000),
null,
new ItemStack(ExtraTrees.itemDictionary),
new ItemStack(ETItems.itemDictionary),
"X#X",
"YEY",
"RDR",
@@ -173,7 +165,7 @@ public class ModuleItems implements IInitializable {
100,
Binnie.Liquid.getLiquidStack("water", 2000),
null,
new ItemStack(ExtraTrees.itemDictionaryLepi),
new ItemStack(ETItems.itemDictionaryLepi),
"X#X",
"YEY",
"RDR",
@@ -196,7 +188,7 @@ public class ModuleItems implements IInitializable {
25,
ExtraTreeLiquid.Turpentine.get(50),
null,
((ItemMisc) ExtraTrees.itemMisc).getStack(ExtraTreeItems.WoodWax, 4),
WoodWax.get(4),
"x",
'x',
Mods.forestry.stack("beeswax"));
@@ -206,7 +198,7 @@ public class ModuleItems implements IInitializable {
25,
Binnie.Liquid.getLiquidStack("Creosote Oil", 50),
null,
((ItemMisc) ExtraTrees.itemMisc).getStack(ExtraTreeItems.WoodWax, 1),
WoodWax.get(1),
"x",
'x',
Mods.forestry.stack("beeswax"));
@@ -221,7 +213,7 @@ public class ModuleItems implements IInitializable {
"bwb",
" b ",
'b',
ExtraTreeItems.Bark.get(1),
Bark.get(1),
'w',
data.filledContainer.copy());
}
@@ -1,5 +1,7 @@
package binnie.extratrees.machines;
import static binnie.extratrees.item.ETMisc.Items.ProvenGear;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraftforge.oredict.ShapedOreRecipe;
@@ -8,7 +10,6 @@ import binnie.core.IInitializable;
import binnie.core.Mods;
import binnie.core.machines.MachineGroup;
import binnie.extratrees.ExtraTrees;
import binnie.extratrees.item.ExtraTreeItems;
import cpw.mods.fml.common.registry.GameRegistry;
import forestry.api.core.Tabs;
@@ -25,18 +26,13 @@ public class ModuleMachine implements IInitializable {
ExtraTrees.blockMachine = machineGroup.getBlock();
}
@Override
public void init() {
// ignore
}
@Override
public void postInit() {
GameRegistry.addRecipe(
new ShapedOreRecipe(
ExtraTreeMachine.Lumbermill.get(1),
new Object[] { "gAg", "GsG", "gPg", 'G', Blocks.glass, 'g', ExtraTreeItems.ProvenGear.get(1),
'A', Items.iron_axe, 's', Mods.forestry.stack("sturdyMachine"), 'P', "gearBronze" }));
new Object[] { "gAg", "GsG", "gPg", 'G', Blocks.glass, 'g', ProvenGear.get(1), 'A',
Items.iron_axe, 's', Mods.forestry.stack("sturdyMachine"), 'P', "gearBronze" }));
GameRegistry.addRecipe(
new ShapedOreRecipe(
@@ -47,7 +43,7 @@ public class ModuleMachine implements IInitializable {
'G',
Blocks.glass,
'g',
ExtraTreeItems.ProvenGear.get(1),
ProvenGear.get(1),
'w',
Blocks.planks,
's',
@@ -62,7 +58,7 @@ public class ModuleMachine implements IInitializable {
'G',
Blocks.glass,
'g',
ExtraTreeItems.ProvenGear.get(1),
ProvenGear.get(1),
'w',
Blocks.wooden_slab,
's',
@@ -77,7 +73,7 @@ public class ModuleMachine implements IInitializable {
'G',
Blocks.glass,
'g',
ExtraTreeItems.ProvenGear.get(1),
ProvenGear.get(1),
'w',
Blocks.glass,
's',
@@ -92,7 +88,7 @@ public class ModuleMachine implements IInitializable {
'G',
Blocks.glass,
'g',
ExtraTreeItems.ProvenGear.get(1),
ProvenGear.get(1),
'w',
Items.clay_ball,
's',
Loaded 100 of 148 files, more files were not shown because too many files have changed in this diff. Show more