package sourcecoded.quantum.block; import mcp.mobius.waila.api.IWailaConfigHandler; import mcp.mobius.waila.api.IWailaDataAccessor; import mcp.mobius.waila.api.IWailaDataProvider; import net.minecraft.block.Block; import net.minecraft.block.ITileEntityProvider; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.item.crafting.IRecipe; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; import sourcecoded.core.crafting.ICraftableBlock; import sourcecoded.quantum.api.vacuum.VacuumRegistry; import sourcecoded.quantum.client.renderer.block.AdvancedTileProxy; import sourcecoded.quantum.crafting.vacuum.VacuumPlayer; import sourcecoded.quantum.tile.TilePlayer; import java.util.List; public class BlockPlayer extends BlockDyeable implements ITileEntityProvider, ICraftableBlock, IWailaDataProvider { public BlockPlayer() { super(); this.setBlockName("blockPlayerEntanglement"); this.setBlockTextureName("infusedStone"); } public int getRenderType() { return AdvancedTileProxy.renderID; } @Override public boolean isOpaqueCube() { return false; } public boolean renderAsNormalBlock() { return false; } public boolean isSideSolid(IBlockAccess world, int x, int y, int z, ForgeDirection side) { return true; } public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase living, ItemStack stack) { TilePlayer tile = (TilePlayer) world.getTileEntity(x, y, z); if (living instanceof EntityPlayer && tile != null) tile.setOwner(((EntityPlayer) living).getUniqueID().toString()); } @Override public TileEntity createNewTileEntity(World world, int meta) { return new TilePlayer(); } @Override public IRecipe[] getRecipes(Block block) { VacuumRegistry.addRecipe(new VacuumPlayer()); return new IRecipe[0]; } @Override public ItemStack getWailaStack(IWailaDataAccessor accessor, IWailaConfigHandler config) { return null; } @Override public List<String> getWailaHead(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config) { return currenttip; } @Override public List<String> getWailaBody(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config) { currenttip.add("Bound: " + ((TilePlayer)accessor.getTileEntity()).getInventoryName()); return currenttip; } @Override public List<String> getWailaTail(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config) { return currenttip; } }