Add Sky stone, Block, Brick, Small Brick, and Sky Stone Block Chest.

Add All Sky Stone Crafting Recipes.
This commit is contained in:
AlgorithmX2 2014-02-28 21:45:30 -06:00
parent 768470512b
commit 27b30588a6
14 changed files with 199 additions and 74 deletions

View file

@ -57,6 +57,7 @@ public class AEBaseBlock extends BlockContainer implements IAEFeature
private Class<? extends TileEntity> tileEntityType = null;
protected boolean isOpaque = true;
protected boolean isFullSize = true;
protected boolean hasSubtypes = false;
@SideOnly(Side.CLIENT)
public IIcon renderIcon;
@ -155,7 +156,7 @@ public class AEBaseBlock extends BlockContainer implements IAEFeature
@Override
public IIcon getIcon(IBlockAccess w, int x, int y, int z, int s)
{
return getIcon( mapRotation( w, x, y, z, s ), 0 );
return getIcon( mapRotation( w, x, y, z, s ), w.getBlockMetadata( x, y, z ) );
}
protected void setTileEntiy(Class<? extends TileEntity> c)
@ -235,6 +236,12 @@ public class AEBaseBlock extends BlockContainer implements IAEFeature
return tileEntityType;
}
@SideOnly(Side.CLIENT)
public void setRenderStateByMeta(int itemDamage)
{
}
@SideOnly(Side.CLIENT)
public BlockRenderInfo getRendererInstance()
{
@ -680,10 +687,10 @@ public class AEBaseBlock extends BlockContainer implements IAEFeature
return true;
}
public String getUnlocalizedName(ItemStack is)
{
return getUnlocalizedName();
}
public String getUnlocalizedName(ItemStack is)
{
return getUnlocalizedName();
}
public void addInformation(ItemStack is, EntityPlayer player, List<?> lines, boolean advancedItemTooltips)
{
@ -701,4 +708,9 @@ public class AEBaseBlock extends BlockContainer implements IAEFeature
// override!
}
public boolean hasSubtypes()
{
return hasSubtypes;
}
}

View file

@ -26,15 +26,25 @@ public class AEBaseItemBlock extends ItemBlock
public AEBaseItemBlock(Block id) {
super( id );
blockType = (AEBaseBlock) id;
hasSubtypes = blockType.hasSubtypes;
if ( Platform.isClient() )
MinecraftForgeClient.registerItemRenderer( this, ItemRenderer.instance );
}
@Override
public String getUnlocalizedName(ItemStack is)
{
return blockType.getUnlocalizedName(is);
}
public int getMetadata(int dmg)
{
if ( hasSubtypes )
return dmg;
return 0;
}
@Override
public String getUnlocalizedName(ItemStack is)
{
return blockType.getUnlocalizedName( is );
}
@Override
public void addInformation(ItemStack is, EntityPlayer player, List lines, boolean advancedItemTooltips)

View file

@ -3,72 +3,111 @@ package appeng.block.solids;
import java.util.EnumSet;
import java.util.List;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import appeng.api.util.IOrientable;
import appeng.api.util.IOrientableBlock;
import appeng.block.AEBaseBlock;
import appeng.core.features.AEFeature;
import appeng.helpers.LocationRotation;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class BlockSkyStone extends AEBaseBlock implements IOrientableBlock
{
@SideOnly(Side.CLIENT)
IIcon Smooth;
IIcon Block;
@SideOnly(Side.CLIENT)
IIcon Brick;
@SideOnly(Side.CLIENT)
IIcon SmallBrick;
public BlockSkyStone() {
super( BlockSkyStone.class, Material.rock );
setfeature( EnumSet.of( AEFeature.Core ) );
setHardness( 50 );
hasSubtypes = true;
blockResistance = 150.0f;
}
@Override
public String getUnlocalizedName(ItemStack is) {
public String getUnlocalizedName(ItemStack is)
{
if ( is.getItemDamage() == 1 )
return getUnlocalizedName()+".smooth";
return getUnlocalizedName() + ".Block";
if ( is.getItemDamage() == 2 )
return getUnlocalizedName() + ".Brick";
if ( is.getItemDamage() == 3 )
return getUnlocalizedName() + ".SmallBrick";
return getUnlocalizedName();
}
@Override
public IOrientable getOrientable(final IBlockAccess w, final int x, final int y, final int z)
{
if ( w.getBlockMetadata(x, y, z) == 0 )
if ( w.getBlockMetadata( x, y, z ) == 0 )
return new LocationRotation( w, x, y, z );
return null;
}
@Override
@SideOnly(Side.CLIENT)
public void registerBlockIcons(IIconRegister ir) {
super.registerBlockIcons(ir);
Smooth = ir.registerIcon(getTextureName()+".Smooth");
public void registerBlockIcons(IIconRegister ir)
{
super.registerBlockIcons( ir );
Block = ir.registerIcon( getTextureName() + ".Block" );
Brick = ir.registerIcon( getTextureName() + ".Brick" );
SmallBrick = ir.registerIcon( getTextureName() + ".SmallBrick" );
}
@Override
@SideOnly(Side.CLIENT)
public IIcon getIcon(int direction, int metadata) {
public IIcon getIcon(int direction, int metadata)
{
if ( metadata == 1 )
return Smooth;
return super.getIcon(direction, metadata);
return Block;
if ( metadata == 2 )
return Brick;
if ( metadata == 3 )
return SmallBrick;
return super.getIcon( direction, metadata );
}
@Override
public void setRenderStateByMeta(int metadata)
{
getRendererInstance().setTemporaryRenderIcon( getIcon( 0, metadata ) );
}
@Override
public ItemStack getPickBlock(MovingObjectPosition target, World world, int x, int y, int z)
{
ItemStack is = super.getPickBlock( target, world, x, y, z );
is.setItemDamage( world.getBlockMetadata( x, y, z ) );
return is;
}
@Override
@SideOnly(Side.CLIENT)
public void getSubBlocks(Item i, CreativeTabs ct, List l) {
super.getSubBlocks(i, ct, l);
public void getSubBlocks(Item i, CreativeTabs ct, List l)
{
super.getSubBlocks( i, ct, l );
l.add( new ItemStack( i, 1, 1 ) );
l.add( new ItemStack( i, 1, 2 ) );
l.add( new ItemStack( i, 1, 3 ) );
}
}

View file

@ -6,10 +6,14 @@ import java.util.List;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.IIcon;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
import appeng.api.AEApi;
@ -21,6 +25,8 @@ import appeng.core.sync.GuiBridge;
import appeng.helpers.ICustomCollision;
import appeng.tile.storage.TileSkyChest;
import appeng.util.Platform;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class BlockSkyChest extends AEBaseBlock implements ICustomCollision
{
@ -31,10 +37,45 @@ public class BlockSkyChest extends AEBaseBlock implements ICustomCollision
setTileEntiy( TileSkyChest.class );
isOpaque = isFullSize = false;
lightOpacity = 0;
hasSubtypes = true;
setHardness( 50 );
blockResistance = 150.0f;
}
@Override
public String getUnlocalizedName(ItemStack is)
{
if ( is.getItemDamage() == 1 )
return getUnlocalizedName() + ".Block";
return getUnlocalizedName();
}
@Override
@SideOnly(Side.CLIENT)
public IIcon getIcon(int direction, int metadata)
{
if ( metadata == 1 )
return AEApi.instance().blocks().blockSkyStone.block().getIcon( direction, 1 );
return AEApi.instance().blocks().blockSkyStone.block().getIcon( direction, metadata );
}
@Override
public ItemStack getPickBlock(MovingObjectPosition target, World world, int x, int y, int z)
{
ItemStack is = super.getPickBlock( target, world, x, y, z );
is.setItemDamage( world.getBlockMetadata( x, y, z ) );
return is;
}
@Override
@SideOnly(Side.CLIENT)
public void getSubBlocks(Item i, CreativeTabs ct, List l)
{
super.getSubBlocks( i, ct, l );
l.add( new ItemStack( i, 1, 1 ) );
}
@Override
public boolean onActivated(World w, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ)
{
@ -62,12 +103,6 @@ public class BlockSkyChest extends AEBaseBlock implements ICustomCollision
out.add( AxisAlignedBB.getAABBPool().getAABB( 0.05, 0.05, 0.05, 0.95, 0.95, 0.95 ) );
}
@Override
public IIcon getIcon(int direction, int metadata)
{
return AEApi.instance().blocks().blockSkyStone.block().getIcon( direction, metadata );
}
@Override
public void registerBlockIcons(IIconRegister iconRegistry)
{

View file

@ -256,18 +256,27 @@ public class BaseBlockRender
return ExtraTextures.getMissing();
}
public void renderInvBlock(EnumSet<ForgeDirection> sides, AEBaseBlock block, Tessellator tess, int color, RenderBlocks renderer)
public void renderInvBlock(EnumSet<ForgeDirection> sides, AEBaseBlock block, ItemStack item, Tessellator tess, int color, RenderBlocks renderer)
{
if ( Platform.isDrawing( tess ) )
tess.draw();
int meta = 0;
if ( block != null && block.hasSubtypes() && item != null )
meta = item.getItemDamage();
if ( sides.contains( ForgeDirection.DOWN ) )
{
tess.startDrawingQuads();
tess.setNormal( 0.0F, -1.0F, 0.0F );
tess.setColorOpaque_I( color );
renderer.renderFaceYNeg( block, 0.0D, 0.0D, 0.0D,
firstNotNull( renderer.overrideBlockTexture, block.getRendererInstance().getTexture( ForgeDirection.DOWN ), block.getIcon( 0, 0 ) ) );
renderer.renderFaceYNeg(
block,
0.0D,
0.0D,
0.0D,
firstNotNull( renderer.overrideBlockTexture, block.getRendererInstance().getTexture( ForgeDirection.DOWN ),
block.getIcon( ForgeDirection.DOWN.ordinal(), meta ) ) );
tess.draw();
}
@ -282,7 +291,7 @@ public class BaseBlockRender
0.0D,
0.0D,
firstNotNull( renderer.overrideBlockTexture, block.getRendererInstance().getTexture( ForgeDirection.UP ),
block.getIcon( ForgeDirection.UP.ordinal(), 0 ) ) );
block.getIcon( ForgeDirection.UP.ordinal(), meta ) ) );
tess.draw();
}
@ -297,7 +306,7 @@ public class BaseBlockRender
0.0D,
0.0D,
firstNotNull( renderer.overrideBlockTexture, block.getRendererInstance().getTexture( ForgeDirection.NORTH ),
block.getIcon( ForgeDirection.NORTH.ordinal(), 0 ) ) );
block.getIcon( ForgeDirection.NORTH.ordinal(), meta ) ) );
tess.draw();
}
@ -312,7 +321,7 @@ public class BaseBlockRender
0.0D,
0.0D,
firstNotNull( renderer.overrideBlockTexture, block.getRendererInstance().getTexture( ForgeDirection.SOUTH ),
block.getIcon( ForgeDirection.SOUTH.ordinal(), 0 ) ) );
block.getIcon( ForgeDirection.SOUTH.ordinal(), meta ) ) );
tess.draw();
}
@ -327,7 +336,7 @@ public class BaseBlockRender
0.0D,
0.0D,
firstNotNull( renderer.overrideBlockTexture, block.getRendererInstance().getTexture( ForgeDirection.WEST ),
block.getIcon( ForgeDirection.WEST.ordinal(), 0 ) ) );
block.getIcon( ForgeDirection.WEST.ordinal(), meta ) ) );
tess.draw();
}
@ -342,7 +351,7 @@ public class BaseBlockRender
0.0D,
0.0D,
firstNotNull( renderer.overrideBlockTexture, block.getRendererInstance().getTexture( ForgeDirection.EAST ),
block.getIcon( ForgeDirection.EAST.ordinal(), 0 ) ) );
block.getIcon( ForgeDirection.EAST.ordinal(), meta ) ) );
tess.draw();
}
}
@ -354,6 +363,9 @@ public class BaseBlockRender
BlockRenderInfo info = block.getRendererInstance();
if ( info.isValid() )
{
if ( block.hasSubtypes() )
block.setRenderStateByMeta( item.getItemDamage() );
renderer.uvRotateBottom = info.getTexture( ForgeDirection.DOWN ).setFlip(
getOrientation( ForgeDirection.DOWN, ForgeDirection.SOUTH, ForgeDirection.UP ) );
renderer.uvRotateTop = info.getTexture( ForgeDirection.UP ).setFlip( getOrientation( ForgeDirection.UP, ForgeDirection.SOUTH, ForgeDirection.UP ) );
@ -367,10 +379,12 @@ public class BaseBlockRender
getOrientation( ForgeDirection.NORTH, ForgeDirection.SOUTH, ForgeDirection.UP ) );
renderer.uvRotateSouth = info.getTexture( ForgeDirection.SOUTH ).setFlip(
getOrientation( ForgeDirection.SOUTH, ForgeDirection.SOUTH, ForgeDirection.UP ) );
}
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), block, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), block, item, tess, 0xffffff, renderer );
if ( block.hasSubtypes() )
info.setTemporaryRenderIcon( null );
renderer.uvRotateBottom = renderer.uvRotateEast = renderer.uvRotateNorth = renderer.uvRotateSouth = renderer.uvRotateTop = renderer.uvRotateWest = 0;
}

View file

@ -241,7 +241,7 @@ public class BusRenderHelper implements IPartRenderHelper
public void renderInventoryBox(RenderBlocks renderer)
{
renderer.setRenderBounds( minX / 16.0, minY / 16.0, minZ / 16.0, maxX / 16.0, maxY / 16.0, maxZ / 16.0 );
bbr.renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, Tessellator.instance, color, renderer );
bbr.renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, null, Tessellator.instance, color, renderer );
}
@Override
@ -249,7 +249,7 @@ public class BusRenderHelper implements IPartRenderHelper
{
renderer.setRenderBounds( minX / 16.0, minY / 16.0, minZ / 16.0, maxX / 16.0, maxY / 16.0, maxZ / 16.0 );
setTexture( IIcon );
bbr.renderInvBlock( EnumSet.of( face ), blk, Tessellator.instance, color, renderer );
bbr.renderInvBlock( EnumSet.of( face ), blk, null, Tessellator.instance, color, renderer );
}
@Override

View file

@ -37,25 +37,25 @@ public class RenderBlockCharger extends BaseBlockRender
renderer.renderAllFaces = true;
setInvRenderBounds( renderer, 6, 1, 0, 10, 15, 2 );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
blk.getRendererInstance().setTemporaryRenderIcons( ExtraTextures.BlockChargerInside.getIcon(), null, null, null, null, null );
setInvRenderBounds( renderer, 2, 0, 2, 14, 3, 14 );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
setInvRenderBounds( renderer, 3, 3, 3, 13, 4, 13 );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
blk.getRendererInstance().setTemporaryRenderIcon( null );
blk.getRendererInstance().setTemporaryRenderIcons( null, ExtraTextures.BlockChargerInside.getIcon(), null, null, null, null );
setInvRenderBounds( renderer, 2, 13, 2, 14, 16, 14 );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
setInvRenderBounds( renderer, 3, 12, 3, 13, 13, 13 );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
renderer.renderAllFaces = false;
blk.getRendererInstance().setTemporaryRenderIcon( null );

View file

@ -30,7 +30,12 @@ public class RenderBlockSkyChest extends BaseBlockRender
GL11.glEnable( 32826 /* GL_RESCALE_NORMAL_EXT */);
GL11.glColor4f( 1.0F, 1.0F, 1.0F, 1.0F );
ResourceLocation loc = new ResourceLocation( "appliedenergistics2", "textures/models/skychest.png" );
ResourceLocation loc;
if ( is.getItemDamage() == 1 )
loc = new ResourceLocation( "appliedenergistics2", "textures/models/skyblockchest.png" );
else
loc = new ResourceLocation( "appliedenergistics2", "textures/models/skychest.png" );
Minecraft.getMinecraft().getTextureManager().bindTexture( loc );
float lidangle = 0.0f;
@ -66,7 +71,13 @@ public class RenderBlockSkyChest extends BaseBlockRender
GL11.glEnable( 32826 /* GL_RESCALE_NORMAL_EXT */);
GL11.glColor4f( 1.0F, 1.0F, 1.0F, 1.0F );
ResourceLocation loc = new ResourceLocation( "appliedenergistics2", "textures/models/skychest.png" );
ResourceLocation loc;
if ( tile.blockMetadata == 1 )
loc = new ResourceLocation( "appliedenergistics2", "textures/models/skyblockchest.png" );
else
loc = new ResourceLocation( "appliedenergistics2", "textures/models/skychest.png" );
Minecraft.getMinecraft().getTextureManager().bindTexture( loc );
this.applyTESRRotation( x, y, z, skyChest.getForward(), skyChest.getUp() );

View file

@ -42,12 +42,12 @@ public class RenderBlockWireless extends BaseBlockRender
IIcon r = CableBusTextures.PartMonitorSidesStatus.getIcon();
ri.setTemporaryRenderIcons( r, r, CableBusTextures.PartMonitorSides.getIcon(), CableBusTextures.PartMonitorSides.getIcon(), r, r );
renderBlockBounds( renderer, 5, 5, 0, 11, 11, 1, ForgeDirection.EAST, ForgeDirection.UP, ForgeDirection.SOUTH );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
r = CableBusTextures.PartMonitorSides.getIcon();
ri.setTemporaryRenderIcons( r, r, ExtraTextures.BlockChargerInside.getIcon(), ExtraTextures.BlockChargerInside.getIcon(), r, r );
renderBlockBounds( renderer, 5, 5, 1, 11, 11, 2, ForgeDirection.EAST, ForgeDirection.UP, ForgeDirection.SOUTH );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
tess.startDrawingQuads();
ri.setTemporaryRenderIcon( null );
@ -67,7 +67,7 @@ public class RenderBlockWireless extends BaseBlockRender
+ (side.offsetZ != 0 ? side.offsetZ * 2 : -1) + s, 8 + (side.offsetX != 0 ? side.offsetX * 4 : 2),
8 + (side.offsetY != 0 ? side.offsetY * 4 : 2), 2 + (side.offsetZ != 0 ? side.offsetZ * 5 : 1) + s, ForgeDirection.EAST, ForgeDirection.UP,
ForgeDirection.SOUTH );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
}
s = 3;
@ -78,7 +78,7 @@ public class RenderBlockWireless extends BaseBlockRender
8 + (side.offsetY != 0 ? side.offsetY * 5 : 1), 2 + (side.offsetZ != 0 ? side.offsetZ * 5 : 1) + s, ForgeDirection.EAST, ForgeDirection.UP,
ForgeDirection.SOUTH );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
}
}

View file

@ -25,7 +25,7 @@ public class RenderDrive extends BaseBlockRender
public void renderInventory(AEBaseBlock block, ItemStack is, RenderBlocks renderer)
{
renderer.overrideBlockTexture = ExtraTextures.getMissing();
this.renderInvBlock( EnumSet.of( ForgeDirection.SOUTH ), block, Tessellator.instance, 0x000000, renderer );
this.renderInvBlock( EnumSet.of( ForgeDirection.SOUTH ), block, is, Tessellator.instance, 0x000000, renderer );
renderer.overrideBlockTexture = null;
super.renderInventory( block, is, renderer );

View file

@ -29,10 +29,10 @@ public class RenderMEChest extends BaseBlockRender
public void renderInventory(AEBaseBlock block, ItemStack is, RenderBlocks renderer)
{
renderer.overrideBlockTexture = ExtraTextures.getMissing();
this.renderInvBlock( EnumSet.of( ForgeDirection.SOUTH ), block, Tessellator.instance, 0x000000, renderer );
this.renderInvBlock( EnumSet.of( ForgeDirection.SOUTH ), block, is, Tessellator.instance, 0x000000, renderer );
renderer.overrideBlockTexture = ExtraTextures.MEChest.getIcon();
this.renderInvBlock( EnumSet.of( ForgeDirection.UP ), block, Tessellator.instance, 0xffffff, renderer );
this.renderInvBlock( EnumSet.of( ForgeDirection.UP ), block, is, Tessellator.instance, 0xffffff, renderer );
renderer.overrideBlockTexture = null;
super.renderInventory( block, is, renderer );

View file

@ -42,30 +42,30 @@ public class RenderQuartzTorch extends BaseBlockRender
float zOff = 0.0f;
renderer.setRenderBounds( Point3 + xOff, rbottom + yOff, Point3 + zOff, Point12 + xOff, rtop + yOff, Point12 + zOff );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
renderer.setRenderBounds( Point3 + xOff, rtop + yOff, Point3 + zOff, Point3 + Onepx + xOff, rtop + Onepx + yOff, Point3 + Onepx + zOff );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
renderer.setRenderBounds( Point12 - Onepx + xOff, rbottom - Onepx + yOff, Point12 - Onepx + zOff, Point12 + xOff, rbottom + yOff, Point12 + zOff );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
blk.getRendererInstance().setTemporaryRenderIcon( Blocks.hopper.getIcon( 0, 0 ) );
renderer.renderAllFaces = true;
renderer.setRenderBounds( Point2 + xOff, bottom + yOff, Point2 + zOff, Point13 + xOff, top + yOff, Point3 + zOff );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
renderer.setRenderBounds( Point2 + xOff, bottom + yOff, Point12 + zOff, Point13 + xOff, top + yOff, Point13 + zOff );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
renderer.setRenderBounds( Point2 + xOff, bottom + yOff, Point3 + zOff, Point3 + xOff, top + yOff, Point12 + zOff );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
renderer.setRenderBounds( Point12 + xOff, bottom + yOff, Point3 + zOff, Point13 + xOff, top + yOff, Point12 + zOff );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, tess, 0xffffff, renderer );
renderInvBlock( EnumSet.allOf( ForgeDirection.class ), blk, is, tess, 0xffffff, renderer );
renderer.renderAllFaces = false;
blk.getRendererInstance().setTemporaryRenderIcon( null );

View file

@ -24,10 +24,10 @@ public class RendererSecurity extends BaseBlockRender
public void renderInventory(AEBaseBlock block, ItemStack is, RenderBlocks renderer)
{
renderer.overrideBlockTexture = ExtraTextures.getMissing();
this.renderInvBlock( EnumSet.of( ForgeDirection.SOUTH ), block, Tessellator.instance, 0x000000, renderer );
this.renderInvBlock( EnumSet.of( ForgeDirection.SOUTH ), block, is, Tessellator.instance, 0x000000, renderer );
renderer.overrideBlockTexture = ExtraTextures.MEChest.getIcon();
this.renderInvBlock( EnumSet.of( ForgeDirection.UP ), block, Tessellator.instance, 0xffffff, renderer );
this.renderInvBlock( EnumSet.of( ForgeDirection.UP ), block, is, Tessellator.instance, 0xffffff, renderer );
renderer.overrideBlockTexture = null;
super.renderInventory( block, is, renderer );

View file

@ -108,7 +108,11 @@ public class TileSkyChest extends AEBaseInvTile
playerOpen = 0;
if ( playerOpen == 0 )
{
getWorldObj().playSoundEffect( xCoord + 0.5D, yCoord + 0.5D, zCoord + 0.5D, "random.chestclosed", 0.5F,
getWorldObj().rand.nextFloat() * 0.1F + 0.9F );
markForUpdate();
}
}
}