Advertisement
Guest User

BlockTinySpawner

a guest
Oct 20th, 2018
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.76 KB | None | 0 0
  1. package com.tmtravlr.mapgadgets.blocks;
  2.  
  3. import java.util.Random;
  4.  
  5. import com.tmtravlr.mapgadgets.MapGadgetsMod;
  6.  
  7. import net.minecraft.block.Block;
  8. import net.minecraft.block.BlockContainer;
  9. import net.minecraft.block.material.Material;
  10. import net.minecraft.block.state.BlockFaceShape;
  11. import net.minecraft.block.state.IBlockState;
  12. import net.minecraft.init.Items;
  13. import net.minecraft.item.Item;
  14. import net.minecraft.item.ItemStack;
  15. import net.minecraft.tileentity.TileEntity;
  16. import net.minecraft.util.BlockRenderLayer;
  17. import net.minecraft.util.EnumBlockRenderType;
  18. import net.minecraft.util.EnumFacing;
  19. import net.minecraft.util.ResourceLocation;
  20. import net.minecraft.util.math.AxisAlignedBB;
  21. import net.minecraft.util.math.BlockPos;
  22. import net.minecraft.world.IBlockAccess;
  23. import net.minecraft.world.World;
  24. import net.minecraftforge.fml.relauncher.Side;
  25. import net.minecraftforge.fml.relauncher.SideOnly;
  26.  
  27. /**
  28. * Block which spawns a single mob and disappears
  29. * @author Rebeca Rey (Tmtravlr)
  30. * @since January 2018
  31. */
  32. public class BlockTinySpawner extends BlockContainer {
  33.  
  34. public static final Block INSTANCE = new BlockTinySpawner().setBlockUnbreakable().setResistance(6000000.0F).setUnlocalizedName("tiny_spawner").setRegistryName(new ResourceLocation(MapGadgetsMod.MOD_ID, "tiny_spawner"));
  35. public static final AxisAlignedBB TINY_SPAWNER_AABB = new AxisAlignedBB(0.25D, 0.0D, 0.25D, 0.75D, 0.5D, 0.75D);
  36.  
  37. protected BlockTinySpawner() {
  38. super(Material.ROCK);
  39. }
  40.  
  41. @Override
  42. public Item getItemDropped(IBlockState state, Random rand, int fortune) {
  43. return Items.AIR;
  44. }
  45.  
  46. @Override
  47. public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) {
  48. return TINY_SPAWNER_AABB;
  49. }
  50.  
  51. @Override
  52. public int quantityDropped(Random random) {
  53. return 0;
  54. }
  55.  
  56. @Override
  57. public TileEntity createNewTileEntity(World worldIn, int meta) {
  58. return new TileEntityTinySpawner();
  59. }
  60.  
  61. @Override
  62. public EnumBlockRenderType getRenderType(IBlockState state) {
  63. return EnumBlockRenderType.MODEL;
  64. }
  65.  
  66. @Override
  67. public ItemStack getItem(World worldIn, BlockPos pos, IBlockState state) {
  68. return ItemStack.EMPTY;
  69. }
  70.  
  71. @SideOnly(Side.CLIENT)
  72. @Override
  73. public BlockRenderLayer getBlockLayer() {
  74. return BlockRenderLayer.CUTOUT;
  75. }
  76.  
  77. @Override
  78. public BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) {
  79. return BlockFaceShape.UNDEFINED;
  80. }
  81.  
  82. @Override
  83. public boolean isFullCube(IBlockState state) {
  84. return false;
  85. }
  86.  
  87. @Override
  88. public boolean isOpaqueCube(IBlockState state) {
  89. return false;
  90. }
  91.  
  92. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement