Advertisement
Guest User

BlockTileEntity.java

a guest
Jul 23rd, 2019
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.11 KB | None | 0 0
  1. package com.jackraiden.test.blocks;
  2.  
  3. import javax.annotation.Nullable;
  4.  
  5. import net.minecraft.block.SoundType;
  6. import net.minecraft.block.material.Material;
  7. import net.minecraft.block.state.IBlockState;
  8. import net.minecraft.tileentity.TileEntity;
  9. import net.minecraft.util.math.BlockPos;
  10. import net.minecraft.world.IBlockAccess;
  11. import net.minecraft.world.World;
  12. import net.minecraftforge.fml.common.registry.GameRegistry;
  13.  
  14. public abstract class BlockTileEntity<T extends TileEntity> extends BlockBase {
  15.  
  16.     public BlockTileEntity(String name, Material material) {
  17.  
  18.         super(name, material);
  19.  
  20.         GameRegistry.registerTileEntity(this.getTileEntityClass(), this.getRegistryName().toString());
  21.     }
  22.  
  23.     public abstract Class<T> getTileEntityClass();
  24.  
  25.     public T getTileEntity(IBlockAccess world, BlockPos position) {
  26.  
  27.         return (T) world.getTileEntity(position);
  28.     }
  29.  
  30.     @Override
  31.     public boolean hasTileEntity(IBlockState blockState) {
  32.  
  33.         return true;
  34.     }
  35.  
  36.     @Nullable
  37.     @Override
  38.     public abstract T createTileEntity(World world, IBlockState blockState);
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement