package de.ellpeck.actuallyadditions.mod.items.base; import de.ellpeck.actuallyadditions.mod.ActuallyAdditions; import de.ellpeck.actuallyadditions.mod.blocks.base.BlockPlant; import de.ellpeck.actuallyadditions.mod.util.ItemUtil; import net.minecraft.block.Block; import net.minecraft.block.state.IBlockState; import net.minecraft.init.Blocks; import net.minecraft.item.EnumRarity; import net.minecraft.item.Item; import net.minecraft.item.ItemSeeds; import net.minecraft.item.ItemStack; import net.minecraft.util.math.BlockPos; import net.minecraft.world.IBlockAccess; public class ItemSeed extends ItemSeeds { public final Block plant; public final String name; public final String oredictName; public ItemSeed(String name, String oredictName, Block plant, Item returnItem, int returnMeta) { super(plant, Blocks.FARMLAND); this.name = name; this.oredictName = oredictName; this.plant = plant; if (plant instanceof BlockPlant) { ((BlockPlant) plant).doStuff(this, returnItem, returnMeta); } this.register(); } private void register() { ItemUtil.registerItem(this, this.getBaseName(), this.shouldAddCreative()); this.registerRendering(); } protected String getBaseName() { return this.name; } public boolean shouldAddCreative() { return true; } protected void registerRendering() { ActuallyAdditions.PROXY.addRenderRegister(new ItemStack(this), this.getRegistryName(), "inventory"); } @Override public EnumRarity getRarity(ItemStack stack) { return EnumRarity.RARE; } @Override public IBlockState getPlant(IBlockAccess world, BlockPos pos) { return this.plant.getDefaultState(); } }