Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.limplungs.blockhole.blocks;
- import java.util.List;
- import com.limplungs.blockhole.tileentities.TileEntityBlockholeWall;
- import net.minecraft.block.properties.IProperty;
- import net.minecraft.block.properties.PropertyInteger;
- import net.minecraft.block.state.BlockStateContainer;
- import net.minecraft.block.state.IBlockState;
- import net.minecraft.entity.EntityLivingBase;
- import net.minecraft.entity.player.EntityPlayer;
- import net.minecraft.init.Blocks;
- import net.minecraft.item.ItemStack;
- import net.minecraft.tileentity.TileEntity;
- import net.minecraft.util.EnumBlockRenderType;
- import net.minecraft.util.EnumFacing;
- import net.minecraft.util.EnumHand;
- import net.minecraft.util.math.BlockPos;
- import net.minecraft.util.math.RayTraceResult;
- import net.minecraft.world.ChunkCache;
- import net.minecraft.world.IBlockAccess;
- import net.minecraft.world.World;
- import net.minecraft.world.chunk.Chunk;
- public class BlockBlockholeWall extends BlockBasic
- {
- public static final PropertyInteger INDEX = PropertyInteger.create("index", 0, 195);
- public BlockBlockholeWall(BlockData blockdata)
- {
- super(blockdata);
- this.setBlockUnbreakable();
- this.setResistance(4096F);
- this.setLightLevel(1.0F);
- this.setDefaultState(this.blockState.getBaseState().withProperty(INDEX, 0));
- }
- @Override
- protected BlockStateContainer createBlockState()
- {
- return new BlockStateContainer(this, new IProperty[]{INDEX});
- }
- @Override
- public TileEntity createTileEntity(World world, IBlockState state)
- {
- return new TileEntityBlockholeWall();
- }
- @Override
- public boolean hasTileEntity()
- {
- return true;
- }
- @Override
- public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos)
- {
- TileEntityBlockholeWall tile = (TileEntityBlockholeWall) (world instanceof ChunkCache ? ((ChunkCache)world).getTileEntity(pos, Chunk.EnumCreateEntityType.CHECK) : world.getTileEntity(pos));
- tile = new TileEntityBlockholeWall();
- tile.setIndex((pos.getX()-1) * 14 + (pos.getY()-1));
- return state.withProperty(INDEX, tile.getIndex());
- }
- @Override
- public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack)
- {
- ((TileEntityBlockholeWall)world.getTileEntity(pos)).setIndex(0);
- }
- public void changeBlockTexture(int i, int j, int k, World world, BlockPos ijkPos)
- {
- TileEntityBlockholeWall tile = ((TileEntityBlockholeWall)world.getTileEntity(ijkPos));
- tile.setIndex((i-1) * 14 + (k-1));
- }
- @Override
- public int getMetaFromState(IBlockState state)
- {
- return 0;
- }
- @Override
- public IBlockState getStateFromMeta(int meta)
- {
- return this.getDefaultState();
- }
- @Override
- public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, ItemStack heldItem, EnumFacing side, float hitX, float hitY, float hitZ)
- {
- if (player.isSneaking())
- {
- }
- return false;
- }
- @Override
- public EnumBlockRenderType getRenderType(IBlockState state)
- {
- return EnumBlockRenderType.MODEL;
- }
- @Override
- public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos, EntityPlayer player)
- {
- return new ItemStack(Blocks.BEDROCK);
- }
- @Override
- public boolean isOpaqueCube(IBlockState state)
- {
- return true;
- }
- @Override
- public boolean isFullCube(IBlockState state)
- {
- return true;
- }
- @Override
- public boolean isSideSolid(IBlockState base_state, IBlockAccess world, BlockPos pos, EnumFacing side)
- {
- return true;
- }
- @Override
- public void onBlockDestroyedByPlayer(World world, BlockPos pos, IBlockState state)
- {
- }
- @Override
- public void onBlockHarvested(World world, BlockPos pos, IBlockState state, EntityPlayer player)
- {
- }
- @Override
- public boolean removedByPlayer(IBlockState state, World world, BlockPos pos, EntityPlayer player, boolean willHarvest)
- {
- return false;
- }
- @Override
- public void addInformation(ItemStack stack, EntityPlayer player, List<String> tooltip, boolean advanced)
- {
- tooltip.add("If you somehow got one of these blocks,\nDO NOT PLACE IT!\n");
- tooltip.add("If accidentally placed, remove it with\n/setblock x y z minecraft:air");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement