public class DrawCollisionBox {
@SubscribeEvent
public void drawSelectionBox(DrawBlockHighlightEvent e)
{
if(e.getTarget().typeOfHit == RayTraceResult.Type.BLOCK)
{
int execute = 0;
if (execute == 0 && e.getTarget().typeOfHit == RayTraceResult.Type.BLOCK)
{
GlStateManager.enableBlend();
GlStateManager.tryBlendFuncSeparate(GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA, GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ZERO);
GlStateManager.glLineWidth(2.0F);
GlStateManager.disableTexture2D();
GlStateManager.depthMask(false);
BlockPos blockpos = e.getTarget().getBlockPos();
IBlockState iblockstate = e.getPlayer().getEntityWorld().getBlockState(blockpos);
if(iblockstate.getBlock() == RegBlocks.wires) {
if (iblockstate.getMaterial() != Material.AIR && e.getPlayer().getEntityWorld().getWorldBorder().contains(blockpos))
{
double d3 = e.getPlayer().lastTickPosX + (e.getPlayer().posX - e.getPlayer().lastTickPosX) * (double)e.getPartialTicks();
double d4 = e.getPlayer().lastTickPosY + (e.getPlayer().posY - e.getPlayer().lastTickPosY) * (double)e.getPartialTicks();
double d5 = e.getPlayer().lastTickPosZ + (e.getPlayer().posZ - e.getPlayer().lastTickPosZ) * (double)e.getPartialTicks();
RenderGlobal.drawSelectionBoundingBox(iblockstate.getSelectedBoundingBox(e.getPlayer().getEntityWorld(), blockpos).grow(0.0020000000949949026D).offset(-d3, -d4, -d5), 0F, 0.0F, 0.0F, 0.4F);
AxisAlignedBB box = new AxisAlignedBB(0, 0, 0, d3, d4 , d5 );
RenderGlobal.drawSelectionBoundingBox(iblockstate.getSelectedBoundingBox(e.getPlayer().getEntityWorld(), blockpos).intersect(box).offset(-d3, -d4, -d5), 0F, 0, 0, 1); }
} else
if (iblockstate.getMaterial() != Material.AIR && e.getPlayer().getEntityWorld().getWorldBorder().contains(blockpos))
{
double d3 = e.getPlayer().lastTickPosX + (e.getPlayer().posX - e.getPlayer().lastTickPosX) * (double)e.getPartialTicks();
double d4 = e.getPlayer().lastTickPosY + (e.getPlayer().posY - e.getPlayer().lastTickPosY) * (double)e.getPartialTicks();
double d5 = e.getPlayer().lastTickPosZ + (e.getPlayer().posZ - e.getPlayer().lastTickPosZ) * (double)e.getPartialTicks();
RenderGlobal.drawSelectionBoundingBox(iblockstate.getSelectedBoundingBox(e.getPlayer().getEntityWorld(), blockpos).grow(0.0020000000949949026D).offset(-d3, -d4, -d5), 0F, 0.0F, 0.0F, 0.4F);
}
GlStateManager.depthMask(true);
GlStateManager.enableTexture2D();
GlStateManager.disableBlend();
}
}
e.setCanceled(true);
}
}