diff --git a/src/main/java/mod/chiselsandbits/core/ClientSide.java b/src/main/java/mod/chiselsandbits/core/ClientSide.java index 3455fe60..62966ffe 100644 --- a/src/main/java/mod/chiselsandbits/core/ClientSide.java +++ b/src/main/java/mod/chiselsandbits/core/ClientSide.java @@ -25,6 +25,7 @@ import mod.chiselsandbits.bittank.TileEntitySpecialRenderBitTank; import mod.chiselsandbits.chiseledblock.BlockBitInfo; import mod.chiselsandbits.chiseledblock.BlockChiseled; +import mod.chiselsandbits.chiseledblock.HarvestWorld; import mod.chiselsandbits.chiseledblock.ItemBlockChiseled; import mod.chiselsandbits.chiseledblock.NBTBlobConverter; import mod.chiselsandbits.chiseledblock.TileEntityBlockChiseled; @@ -1594,7 +1595,7 @@ public boolean addBlockDestroyEffects( { if ( !state.getBlock().isAir( state, world, pos ) ) { - state = state.getBlock().getActualState( state, world, pos ); + state = state.getActualState( new HarvestWorld( state ), pos ); final int StateID = ModUtil.getStateId( state ); final int i = 4; diff --git a/src/main/java/mod/chiselsandbits/render/chiseledblock/ChiseledBlockBaked.java b/src/main/java/mod/chiselsandbits/render/chiseledblock/ChiseledBlockBaked.java index dc60ae85..0b1dd1e3 100644 --- a/src/main/java/mod/chiselsandbits/render/chiseledblock/ChiseledBlockBaked.java +++ b/src/main/java/mod/chiselsandbits/render/chiseledblock/ChiseledBlockBaked.java @@ -309,7 +309,7 @@ private void generateFaces( case COLOR: final int cb = pc.color; - faceBuilder.put( elementIndex, byteToFloat( cb >> 16 ), byteToFloat( cb >> 8 ), byteToFloat( cb ), byteToFloat( cb >> 24 ) ); + faceBuilder.put( elementIndex, byteToFloat( cb >> 16 ), byteToFloat( cb >> 8 ), byteToFloat( cb ), NotZero( byteToFloat( cb >> 24 ) ) ); break; case NORMAL: @@ -354,6 +354,17 @@ private void generateFaces( } } + private float NotZero( + float byteToFloat ) + { + if ( byteToFloat < 0.00001f ) + { + return 1; + } + + return byteToFloat; + } + private float byteToFloat( final int i ) {