package com.zjinja.mcmod.decor.elements.blocks; import com.zjinja.mcmod.decor.ZJinJaDecoration; import com.zjinja.mcmod.decor.element_base.EBaseTileBlock; import com.zjinja.mcmod.decor.element_templates.renderer.TileRenderResourceSpecifiedRenderer; import com.zjinja.mcmod.decor.elements.te.TE_H7FTDSignS; import com.zjinja.mcmod.decor.elements.te.TE_RenderResourceSpecifiedTileEntity; import com.zjinja.mcmod.decor.misc.RenderResource; import com.zjinja.mcmod.decor.utils.model_dir_util.BoundingBoxVector; import com.zjinja.mcmod.decor.utils.model_dir_util.OffsetVector; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.entity.EntityLivingBase; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; public class B_StaticSlaveBlock4Dir extends EBaseTileBlock { private int OffsetX,OffsetY,OffsetZ; public B_StaticSlaveBlock4Dir(BoundingBoxVector bbbox, float hardness, float lightLevel, float resistance, SoundType soundType, int offsetX, int offsetY, int offsetZ) { super(Material.wood, TE_RenderResourceSpecifiedTileEntity.class); setBasicProperty(hardness, lightLevel, resistance, soundType); DirUtil.FastDefine_4Dir(); DirUtil.DefineRelBoundingBox(bbbox); OffsetX = offsetX; OffsetY = offsetY; OffsetZ = offsetZ; } @Override public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack itemStack){ DirUtil.FastPlaceConv_4Dir(world, x, y, z, player, itemStack); } @Override public int onBlockPlaced(World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ, int smeta) { return side; } @Override public boolean AutoBindRenderer(){return false; } @Override public TileEntitySpecialRenderer GetTileRenderer(){ return null; } @Override public TileEntity createNewTileEntity(World world, int meta) { return new TE_H7FTDSignS(); } @Override public void breakBlock(World world, int x, int y, int z, Block block, int meta){ OffsetVector ov = DirUtil.CalcOffsetFromRelOffset(meta, OffsetX, OffsetY, OffsetZ); int nsx = x + ov.getIntX(); int nsy = y + ov.getIntY(); int nsz = z + ov.getIntZ(); super.breakBlock(world, x, y, z,block, meta); world.setBlockToAir(nsx, nsy, nsz); } }