Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.varitekcibus.amazingfoodstuffs.objects.blocks;
- import com.varitekcibus.amazingfoodstuffs.init.BlockInit;
- import com.varitekcibus.amazingfoodstuffs.init.ItemInit;
- import net.minecraft.block.Block;
- import net.minecraft.block.BlockCrops;
- import net.minecraft.block.properties.PropertyInteger;
- import net.minecraft.block.state.IBlockState;
- import net.minecraft.entity.item.EntityItem;
- import net.minecraft.entity.player.EntityPlayer;
- import net.minecraft.init.Blocks;
- import net.minecraft.item.Item;
- import net.minecraft.item.ItemBlock;
- import net.minecraft.item.ItemStack;
- import net.minecraft.util.EnumFacing;
- import net.minecraft.util.EnumHand;
- import net.minecraft.util.math.AxisAlignedBB;
- import net.minecraft.util.math.BlockPos;
- import net.minecraft.world.IBlockAccess;
- import net.minecraft.world.World;
- public class BlockTomatoPlant extends BlockCrops
- {
- private static final AxisAlignedBB[] tomato = new AxisAlignedBB[] {new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.125D, 1.0D), new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.25D, 1.0D), new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.375D, 1.0D), new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.5625D, 1.0D), new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.8125D, 1.0D), new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 1.0D, 1.0D), new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 1.0D, 1.0D), new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 1.0D, 1.0D)};
- public BlockTomatoPlant(String name)
- {
- setUnlocalizedName(name);
- setRegistryName(name);
- BlockInit.BLOCKS.add(this);
- ItemInit.ITEMS.add(new ItemBlock(this).setRegistryName(getRegistryName()));
- }
- public boolean onBlockLeftClick(World worldIn, BlockPos pos, IBlockState state, EntityPlayer playerIn, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ)
- {
- if(!worldIn.isRemote)
- {
- if(this.isMaxAge(state))
- {
- worldIn.spawnEntity(new EntityItem(worldIn, pos.getX(), pos.getY(), pos.getZ(), new ItemStack(ItemInit.TOMATO, 1)));
- worldIn.spawnEntity(new EntityItem(worldIn, pos.getX(), pos.getY(), pos.getZ(), new ItemStack(ItemInit.TOMATO_SEED, 1)));
- worldIn.setBlockState(pos, this.withAge(0));
- return true;
- }
- }
- return false;
- }
- protected boolean canSustainBlock(IBlockState state)
- {
- return state.getBlock() == Blocks.FARMLAND;
- }
- @Override
- public boolean onBlockActivated(World worldIn, BlockPos pos, IBlockState state, EntityPlayer playerIn, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ)
- {
- if(!worldIn.isRemote)
- {
- if(this.isMaxAge(state))
- {
- worldIn.spawnEntity(new EntityItem(worldIn, pos.getX(), pos.getY(), pos.getZ(), new ItemStack(ItemInit.ONION, 1)));
- worldIn.spawnEntity(new EntityItem(worldIn, pos.getX(), pos.getY(), pos.getZ(), new ItemStack(ItemInit.ONION_SEED, 1)));
- worldIn.setBlockState(pos, this.withAge(0));
- return true;
- }
- }
- return false;
- }
- @Override
- protected Item getSeed()
- {
- return ItemInit.TOMATO_SEED;
- }
- @Override
- protected Item getCrop()
- {
- return ItemInit.TOMATO;
- }
- @Override
- public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos)
- {
- return tomato[((Integer)state.getValue(this.getAgeProperty())).intValue()];
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement