diff --git a/block/AEBaseBlock.java b/block/AEBaseBlock.java index 7225218bf..e955997b5 100644 --- a/block/AEBaseBlock.java +++ b/block/AEBaseBlock.java @@ -32,6 +32,7 @@ import appeng.client.render.BaseBlockRender; import appeng.client.render.BlockRenderInfo; import appeng.client.render.WorldRender; import appeng.client.texture.FlipableIcon; +import appeng.client.texture.MissingIcon; import appeng.core.features.AEFeature; import appeng.core.features.AEFeatureHandler; import appeng.core.features.IAEFeature; @@ -134,6 +135,13 @@ public class AEBaseBlock extends BlockContainer implements IAEFeature info.updateIcons( bottomIcon, topIcon, northIcon, southIcon, eastIcon, westIcon ); } + public void registerNoIcons() + { + BlockRenderInfo info = getRendererInstance(); + FlipableIcon i = new FlipableIcon( new MissingIcon() ); + info.updateIcons( i, i, i, i, i, i ); + } + @Override @SideOnly(Side.CLIENT) public IIcon getIcon(int direction, int metadata) diff --git a/client/render/BlockRenderInfo.java b/client/render/BlockRenderInfo.java index da8bf1745..fbcb727e6 100644 --- a/client/render/BlockRenderInfo.java +++ b/client/render/BlockRenderInfo.java @@ -1,9 +1,9 @@ package appeng.client.render; -import appeng.client.texture.FlipableIcon; -import appeng.client.texture.TmpFlipableIcon; import net.minecraft.util.IIcon; import net.minecraftforge.common.util.ForgeDirection; +import appeng.client.texture.FlipableIcon; +import appeng.client.texture.TmpFlipableIcon; public class BlockRenderInfo { @@ -29,8 +29,7 @@ public class BlockRenderInfo private FlipableIcon eastIcon = null; private FlipableIcon westIcon = null; - public void updateIcons(FlipableIcon Bottom, FlipableIcon Top, FlipableIcon North, FlipableIcon South, FlipableIcon East, - FlipableIcon West) + public void updateIcons(FlipableIcon Bottom, FlipableIcon Top, FlipableIcon North, FlipableIcon South, FlipableIcon East, FlipableIcon West) { topIcon = Top; bottomIcon = Bottom; @@ -57,8 +56,7 @@ public class BlockRenderInfo } } - public void setTemporaryRenderIcons(IIcon nTopIcon, IIcon nBottomIcon, IIcon nSouthIcon, IIcon nNorthIcon, IIcon nEastIcon, - IIcon nWestIcon) + public void setTemporaryRenderIcons(IIcon nTopIcon, IIcon nBottomIcon, IIcon nSouthIcon, IIcon nNorthIcon, IIcon nEastIcon, IIcon nWestIcon) { tmpTopIcon.setOriginal( nTopIcon == null ? getTexture( ForgeDirection.UP ) : nTopIcon ); tmpBottomIcon.setOriginal( nBottomIcon == null ? getTexture( ForgeDirection.DOWN ) : nBottomIcon ); @@ -115,8 +113,7 @@ public class BlockRenderInfo public boolean isValid() { - return topIcon != null && bottomIcon != null && southIcon != null && northIcon != null && eastIcon != null - && westIcon != null; + return topIcon != null && bottomIcon != null && southIcon != null && northIcon != null && eastIcon != null && westIcon != null; } } diff --git a/client/texture/MissingIcon.java b/client/texture/MissingIcon.java new file mode 100644 index 000000000..69aab8c8d --- /dev/null +++ b/client/texture/MissingIcon.java @@ -0,0 +1,62 @@ +package appeng.client.texture; + +import net.minecraft.util.IIcon; + +public class MissingIcon implements IIcon +{ + + @Override + public int getIconWidth() + { + return ExtraTextures.getMissing().getIconWidth(); + } + + @Override + public int getIconHeight() + { + return ExtraTextures.getMissing().getIconHeight(); + } + + @Override + public float getMinU() + { + return ExtraTextures.getMissing().getMinU(); + } + + @Override + public float getMaxU() + { + return ExtraTextures.getMissing().getMaxU(); + } + + @Override + public float getInterpolatedU(double var1) + { + return ExtraTextures.getMissing().getInterpolatedU( var1 ); + } + + @Override + public float getMinV() + { + return ExtraTextures.getMissing().getMinV(); + } + + @Override + public float getMaxV() + { + return ExtraTextures.getMissing().getMaxV(); + } + + @Override + public float getInterpolatedV(double var1) + { + return ExtraTextures.getMissing().getInterpolatedV( var1 ); + } + + @Override + public String getIconName() + { + return ExtraTextures.getMissing().getIconName(); + } + +} diff --git a/debug/BlockChunkloader.java b/debug/BlockChunkloader.java index 9aaaefaa7..421ebb124 100644 --- a/debug/BlockChunkloader.java +++ b/debug/BlockChunkloader.java @@ -32,7 +32,7 @@ public class BlockChunkloader extends AEBaseBlock implements LoadingCallback @Override public void registerBlockIcons(IIconRegister iconRegistry) { - return; + registerNoIcons(); } } diff --git a/debug/BlockItemGen.java b/debug/BlockItemGen.java index 356950e85..4ac792774 100644 --- a/debug/BlockItemGen.java +++ b/debug/BlockItemGen.java @@ -19,7 +19,7 @@ public class BlockItemGen extends AEBaseBlock @Override public void registerBlockIcons(IIconRegister iconRegistry) { - return; + registerNoIcons(); } } diff --git a/integration/modules/BC.java b/integration/modules/BC.java index 8bf4ca2bd..d74ff0801 100644 --- a/integration/modules/BC.java +++ b/integration/modules/BC.java @@ -9,6 +9,7 @@ import net.minecraft.util.IIcon; import net.minecraftforge.common.util.ForgeDirection; import appeng.api.AEApi; import appeng.api.config.TunnelType; +import appeng.api.definitions.Blocks; import appeng.api.features.IP2PTunnelRegistry; import appeng.api.parts.IFacadePart; import appeng.facade.FacadePart; @@ -187,6 +188,13 @@ public class BC extends BaseModule implements IBC { registerPowerP2P(); registerItemP2P(); + + Blocks b = AEApi.instance().blocks(); + addFacade( b.blockFluix.stack( 1 ) ); + addFacade( b.blockQuartz.stack( 1 ) ); + addFacade( b.blockQuartzChiseled.stack( 1 ) ); + addFacade( b.blockQuartzPiller.stack( 1 ) ); + registerLiquidsP2P(); }