Reduces visibility of internal fields/methods

Reduces the visibility of all fields to private and create setters/getters
when necessary. Exceptions are fields with GuiSync as these need to be
public.

Reduces the visibility of internal methods to private/protected/default when possible.
This commit is contained in:
yueh
2015-10-08 15:42:42 +02:00
parent f054bd699b
commit e94a0cfccf
497 changed files with 7865 additions and 6908 deletions
+55 -32
View File
@@ -75,22 +75,23 @@ import com.google.common.base.Optional;
public abstract class AEBaseBlock extends Block implements IAEFeature public abstract class AEBaseBlock extends Block implements IAEFeature
{ {
public static final PropertyEnum AXIS_ORIENTATION = PropertyEnum.create("axis", EnumFacing.Axis.class); public static final PropertyEnum AXIS_ORIENTATION = PropertyEnum.create( "axis", EnumFacing.Axis.class );
private final String featureFullName; private final String featureFullName;
protected final Optional<String> featureSubName; private final Optional<String> featureSubName;
protected boolean isOpaque = true; private boolean isOpaque = true;
protected boolean isFullSize = true; private boolean isFullSize = true;
protected boolean hasSubtypes = false; private boolean hasSubtypes = false;
protected boolean isInventory = false; private boolean isInventory = false;
private IFeatureHandler handler; private IFeatureHandler handler;
@SideOnly( Side.CLIENT ) @SideOnly( Side.CLIENT )
BlockRenderInfo renderInfo; private BlockRenderInfo renderInfo;
private String textureName;
@Override @Override
public boolean isVisuallyOpaque() public boolean isVisuallyOpaque()
{ {
return this.isOpaque && this.isFullSize; return this.isOpaque() && this.isFullSize();
} }
protected AEBaseBlock( final Material mat ) protected AEBaseBlock( final Material mat )
@@ -139,7 +140,7 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
@Override @Override
protected final BlockState createBlockState() protected final BlockState createBlockState()
{ {
return new ExtendedBlockState( this, this.getAEStates(), new IUnlistedProperty[] { AE_BLOCK_POS, AE_BLOCK_ACCESS} ); return new ExtendedBlockState( this, this.getAEStates(), new IUnlistedProperty[] { AE_BLOCK_POS, AE_BLOCK_ACCESS } );
} }
@Override @Override
@@ -148,7 +149,7 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
final IBlockAccess world, final IBlockAccess world,
final BlockPos pos ) final BlockPos pos )
{ {
return ((IExtendedBlockState)super.getExtendedState( state, world, pos ) ).withProperty( AE_BLOCK_POS, pos ).withProperty( AE_BLOCK_ACCESS, world ); return ( (IExtendedBlockState) super.getExtendedState( state, world, pos ) ).withProperty( AE_BLOCK_POS, pos ).withProperty( AE_BLOCK_ACCESS, world );
} }
protected IProperty[] getAEStates() protected IProperty[] getAEStates()
@@ -167,7 +168,8 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
try try
{ {
final Class<? extends BaseBlockRender> re = this.getRenderer(); final Class<? extends BaseBlockRender> re = this.getRenderer();
if ( re == null ) return null; // use 1.8 models. if( re == null )
return null; // use 1.8 models.
final BaseBlockRender renderer = re.newInstance(); final BaseBlockRender renderer = re.newInstance();
this.renderInfo = new BlockRenderInfo( renderer ); this.renderInfo = new BlockRenderInfo( renderer );
@@ -200,7 +202,7 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
protected void setFeature( final EnumSet<AEFeature> f ) protected void setFeature( final EnumSet<AEFeature> f )
{ {
final AEBlockFeatureHandler featureHandler = new AEBlockFeatureHandler( f, this, this.featureSubName ); final AEBlockFeatureHandler featureHandler = new AEBlockFeatureHandler( f, this, this.getFeatureSubName() );
this.setHandler( featureHandler ); this.setHandler( featureHandler );
} }
@@ -229,10 +231,10 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
@Override @Override
public boolean isNormalCube() public boolean isNormalCube()
{ {
return this.isFullSize && this.isOpaque; return this.isFullSize() && this.isOpaque();
} }
protected ICustomCollision getCustomCollision( final World w, final BlockPos pos ) protected ICustomCollision getCustomCollision( final World w, final BlockPos pos )
{ {
if( this instanceof ICustomCollision ) if( this instanceof ICustomCollision )
{ {
@@ -244,11 +246,11 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
@SideOnly( Side.CLIENT ) @SideOnly( Side.CLIENT )
public IAESprite getIcon( final IBlockAccess w, final BlockPos pos, final EnumFacing side ) public IAESprite getIcon( final IBlockAccess w, final BlockPos pos, final EnumFacing side )
{ {
final IBlockState state =w.getBlockState( pos ); final IBlockState state = w.getBlockState( pos );
final IOrientable ori = this.getOrientable( w, pos ); final IOrientable ori = this.getOrientable( w, pos );
if ( ori == null ) if( ori == null )
return this.getIcon( side,state ); return this.getIcon( side, state );
return this.getIcon( this.mapRotation( ori, side ), state ); return this.getIcon( this.mapRotation( ori, side ), state );
} }
@@ -313,15 +315,15 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
{ {
this.setBlockBounds( (float) bb.minX, (float) bb.minY, (float) bb.minZ, (float) bb.maxX, (float) bb.maxY, (float) bb.maxZ ); this.setBlockBounds( (float) bb.minX, (float) bb.minY, (float) bb.minZ, (float) bb.maxX, (float) bb.maxY, (float) bb.maxZ );
final MovingObjectPosition r = super.collisionRayTrace( w, pos, ld.a, ld.b ); final MovingObjectPosition r = super.collisionRayTrace( w, pos, ld.getA(), ld.getB() );
this.setBlockBounds( 0, 0, 0, 1, 1, 1 ); this.setBlockBounds( 0, 0, 0, 1, 1, 1 );
if( r != null ) if( r != null )
{ {
final double xLen = ( ld.a.xCoord - r.hitVec.xCoord ); final double xLen = ( ld.getA().xCoord - r.hitVec.xCoord );
final double yLen = ( ld.a.yCoord - r.hitVec.yCoord ); final double yLen = ( ld.getA().yCoord - r.hitVec.yCoord );
final double zLen = ( ld.a.zCoord - r.hitVec.zCoord ); final double zLen = ( ld.getA().zCoord - r.hitVec.zCoord );
final double thisDist = xLen * xLen + yLen * yLen + zLen * zLen; final double thisDist = xLen * xLen + yLen * yLen + zLen * zLen;
@@ -344,7 +346,7 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
for( final AxisAlignedBB bx : collisionHandler.getSelectedBoundingBoxesFromPool( w, pos, null, false ) ) for( final AxisAlignedBB bx : collisionHandler.getSelectedBoundingBoxesFromPool( w, pos, null, false ) )
{ {
if ( b == null ) if( b == null )
{ {
b = bx; b = bx;
continue; continue;
@@ -360,10 +362,10 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
b = AxisAlignedBB.fromBounds( minX, minY, minZ, maxX, maxY, maxZ ); b = AxisAlignedBB.fromBounds( minX, minY, minZ, maxX, maxY, maxZ );
} }
if ( b == null ) if( b == null )
b = new AxisAlignedBB( 16d, 16d, 16d, 0d, 0d, 0d ); b = new AxisAlignedBB( 16d, 16d, 16d, 0d, 0d, 0d );
else else
b = AxisAlignedBB.fromBounds( b.minX + pos.getX(), b.minY + pos.getY(), b.minZ + pos.getZ(), b.maxX+ pos.getX(), b.maxY + pos.getY(), b.maxZ + pos.getZ() ); b = AxisAlignedBB.fromBounds( b.minX + pos.getX(), b.minY + pos.getY(), b.minZ + pos.getZ(), b.maxX + pos.getX(), b.maxY + pos.getY(), b.maxZ + pos.getZ() );
return b; return b;
} }
@@ -374,7 +376,7 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
@Override @Override
public final boolean isOpaqueCube() public final boolean isOpaqueCube()
{ {
return this.isOpaque; return this.isOpaque();
} }
@Override @Override
@@ -460,7 +462,7 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
final IBlockAccess world, final IBlockAccess world,
final BlockPos pos ) final BlockPos pos )
{ {
return this.isFullSize; return this.isFullSize();
} }
public IOrientable getOrientable( final IBlockAccess w, final BlockPos pos ) public IOrientable getOrientable( final IBlockAccess w, final BlockPos pos )
@@ -563,7 +565,7 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
} }
public EnumFacing mapRotation( public EnumFacing mapRotation(
final IOrientable ori, final IOrientable ori,
final EnumFacing dir ) final EnumFacing dir )
{ {
// case DOWN: return bottomIcon; // case DOWN: return bottomIcon;
@@ -594,7 +596,7 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
} }
} }
if ( west == null ) if( west == null )
return dir; return dir;
if( dir == forward ) if( dir == forward )
@@ -664,7 +666,7 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
final IResource res = Minecraft.getMinecraft().getResourceManager().getResource( resLoc ); final IResource res = Minecraft.getMinecraft().getResourceManager().getResource( resLoc );
if( res != null ) if( res != null )
{ {
return new FlippableIcon( new BaseIcon( ir.registerSprite( new ResourceLocation(AppEng.MOD_ID, "blocks/" + name ) ) ) ); return new FlippableIcon( new BaseIcon( ir.registerSprite( new ResourceLocation( AppEng.MOD_ID, "blocks/" + name ) ) ) );
} }
} }
catch( final Throwable e ) catch( final Throwable e )
@@ -673,11 +675,10 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
} }
} }
final ResourceLocation resLoc = new ResourceLocation(AppEng.MOD_ID, "blocks/" + name ); final ResourceLocation resLoc = new ResourceLocation( AppEng.MOD_ID, "blocks/" + name );
return new FlippableIcon(new BaseIcon( ir.registerSprite( resLoc ) ) ); return new FlippableIcon( new BaseIcon( ir.registerSprite( resLoc ) ) );
} }
String textureName;
public void setBlockTextureName( final String texture ) public void setBlockTextureName( final String texture )
{ {
this.textureName = texture; this.textureName = texture;
@@ -688,4 +689,26 @@ public abstract class AEBaseBlock extends Block implements IAEFeature
return this.textureName; return this.textureName;
} }
public boolean isFullSize()
{
return isFullSize;
}
public boolean setFullSize( boolean isFullSize )
{
this.isFullSize = isFullSize;
return isFullSize;
}
public boolean setOpaque( boolean isOpaque )
{
this.isOpaque = isOpaque;
return isOpaque;
}
public Optional<String> getFeatureSubName()
{
return featureSubName;
}
} }
@@ -0,0 +1,137 @@
/*
* This file is part of Applied Energistics 2.
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
*
* Applied Energistics 2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Applied Energistics 2 is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
*/
package appeng.block;
import java.util.EnumSet;
import java.util.Random;
import net.minecraft.block.BlockSlab;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.World;
import appeng.client.texture.IAESprite;
import appeng.core.features.AEFeature;
import appeng.core.features.IAEFeature;
import appeng.core.features.IFeatureHandler;
public class AEBaseSlabBlock extends BlockSlab implements IAEFeature
{
private final IFeatureHandler features;
private final AEBaseBlock block;
private final int meta;
private AEBaseSlabBlock slabs;
private AEBaseSlabBlock doubleSlabs;
private final String name;
public AEBaseSlabBlock( final AEBaseBlock block, final int meta, final EnumSet<AEFeature> features, final boolean isDoubleSlab, final String name )
{
super( isDoubleSlab, block.getMaterial() );
this.block = block;
this.meta = meta;
this.name = name;
this.setBlockName( "appliedenergistics2." + name );
this.setHardness( block.getBlockHardness( null, 0, 0, 0 ) );
this.setResistance( block.getExplosionResistance( null ) * 5.0F / 3.0F );
this.setStepSound( block.stepSound );
this.useNeighborBrightness = true;
if( !this.field_150004_a )
{
this.doubleSlabs = new AEBaseSlabBlock( block, meta, features, true, name + ".double" ).setSlabs( this );
}
this.features = !this.field_150004_a ? new SlabBlockFeatureHandler( features, this ) : null;
}
private AEBaseSlabBlock setSlabs( final AEBaseSlabBlock slabs )
{
this.slabs = slabs;
return this;
}
public AEBaseSlabBlock slabs()
{
return this.slabs;
}
public AEBaseSlabBlock doubleSlabs()
{
return this.doubleSlabs;
}
@Override
public IFeatureHandler handler()
{
return this.features;
}
@Override
public void postInit()
{
// Override to do stuff
}
@Override
public IAESprite getIcon( final int dir, final int meta )
{
return this.block.getIcon( dir, this.meta );
}
@Override
public String func_150002_b( final int p_150002_1_ )
{
return this.getUnlocalizedName();
}
@Override
public void registerBlockIcons( final IIconRegister reg )
{
}
@Override
public Item getItemDropped( final int meta, final Random rand, final int fortune )
{
return this.field_150004_a ? Item.getItemFromBlock( this.slabs ) : Item.getItemFromBlock( this );
}
@Override
public ItemStack getPickBlock( final MovingObjectPosition target, final World world, final int x, final int y, final int z )
{
AEBaseSlabBlock block = (AEBaseSlabBlock) world.getBlock( x, y, z );
if( block == null )
{
return null;
}
if( block.field_150004_a )
{
block = this.slabs;
}
final int meta = world.getBlockMetadata( x, y, z ) & 7;
return new ItemStack( block, 1, meta );
}
public String name()
{
return this.name;
}
}
@@ -84,7 +84,7 @@ public abstract class AEBaseTileBlock extends AEBaseBlock implements IAEFeature,
@Override @Override
protected void setFeature( final EnumSet<AEFeature> f ) protected void setFeature( final EnumSet<AEFeature> f )
{ {
final AETileBlockFeatureHandler featureHandler = new AETileBlockFeatureHandler( f, this, this.featureSubName ); final AETileBlockFeatureHandler featureHandler = new AETileBlockFeatureHandler( f, this, this.getFeatureSubName() );
this.setHandler( featureHandler ); this.setHandler( featureHandler );
} }
@@ -102,7 +102,7 @@ public abstract class AEBaseTileBlock extends AEBaseBlock implements IAEFeature,
ReflectionHelper.setPrivateValue( Block.class, this, b, "isTileProvider" ); ReflectionHelper.setPrivateValue( Block.class, this, b, "isTileProvider" );
} }
public boolean hasBlockTileEntity() private boolean hasBlockTileEntity()
{ {
return this.tileEntityType != null; return this.tileEntityType != null;
} }
@@ -48,14 +48,15 @@ public class BlockMolecularAssembler extends AEBaseTileBlock
super( Material.iron ); super( Material.iron );
this.setTileEntity( TileMolecularAssembler.class ); this.setTileEntity( TileMolecularAssembler.class );
this.isOpaque = false; this.setOpaque( false );
this.lightOpacity = 1; this.lightOpacity = 1;
this.setFeature( EnumSet.of( AEFeature.MolecularAssembler ) ); this.setFeature( EnumSet.of( AEFeature.MolecularAssembler ) );
} }
@Override @Override
public boolean canRenderInLayer( final net.minecraft.util.EnumWorldBlockLayer layer) { public boolean canRenderInLayer( final net.minecraft.util.EnumWorldBlockLayer layer )
return layer == EnumWorldBlockLayer.CUTOUT_MIPPED; {
return layer == EnumWorldBlockLayer.CUTOUT_MIPPED;
} }
@Override @Override
@@ -52,7 +52,7 @@ public class BlockCrank extends AEBaseTileBlock
this.setTileEntity( TileCrank.class ); this.setTileEntity( TileCrank.class );
this.setLightOpacity( 0 ); this.setLightOpacity( 0 );
this.setHarvestLevel( "axe", 0 ); this.setHarvestLevel( "axe", 0 );
this.isFullSize = this.isOpaque = false; this.setFullSize( this.setOpaque( false ) );
this.setFeature( EnumSet.of( AEFeature.GrindStone ) ); this.setFeature( EnumSet.of( AEFeature.GrindStone ) );
} }
@@ -59,7 +59,7 @@ public class BlockCharger extends AEBaseTileBlock implements ICustomCollision
this.setTileEntity( TileCharger.class ); this.setTileEntity( TileCharger.class );
this.setLightOpacity( 2 ); this.setLightOpacity( 2 );
this.isFullSize = this.isOpaque = false; this.setFullSize( this.setOpaque( false ) );
this.setFeature( EnumSet.of( AEFeature.Core ) ); this.setFeature( EnumSet.of( AEFeature.Core ) );
} }
@@ -46,7 +46,7 @@ public class BlockInscriber extends AEBaseTileBlock
this.setTileEntity( TileInscriber.class ); this.setTileEntity( TileInscriber.class );
this.setLightOpacity( 2 ); this.setLightOpacity( 2 );
this.isFullSize = this.isOpaque = false; this.setFullSize( this.setOpaque( false ) );
this.setFeature( EnumSet.of( AEFeature.Inscriber ) ); this.setFeature( EnumSet.of( AEFeature.Inscriber ) );
} }
@@ -53,8 +53,8 @@ public class BlockLightDetector extends AEBaseTileBlock implements IOrientableBl
super( Material.circuits ); super( Material.circuits );
this.setLightOpacity( 0 ); this.setLightOpacity( 0 );
this.isFullSize = false; this.setFullSize( false );
this.isOpaque = false; this.setOpaque( false );
this.setTileEntity( TileLightDetector.class ); this.setTileEntity( TileLightDetector.class );
this.setFeature( EnumSet.of( AEFeature.LightDetector ) ); this.setFeature( EnumSet.of( AEFeature.LightDetector ) );
@@ -54,8 +54,8 @@ public class BlockPaint extends AEBaseTileBlock
this.setTileEntity( TilePaint.class ); this.setTileEntity( TilePaint.class );
this.setLightOpacity( 0 ); this.setLightOpacity( 0 );
this.isFullSize = false; this.setFullSize( false );
this.isOpaque = false; this.setOpaque( false );
this.setFeature( EnumSet.of( AEFeature.PaintBalls ) ); this.setFeature( EnumSet.of( AEFeature.PaintBalls ) );
} }
@@ -70,7 +70,7 @@ public class BlockQuartzGrowthAccelerator extends AEBaseTileBlock
final TileQuartzGrowthAccelerator cga = this.getTileEntity( w, pos ); final TileQuartzGrowthAccelerator cga = this.getTileEntity( w, pos );
if( cga != null && cga.hasPower && CommonHelper.proxy.shouldAddParticles( r ) ) if( cga != null && cga.isPowered() && CommonHelper.proxy.shouldAddParticles( r ) )
{ {
final double d0 = r.nextFloat() - 0.5F; final double d0 = r.nextFloat() - 0.5F;
final double d1 = r.nextFloat() - 0.5F; final double d1 = r.nextFloat() - 0.5F;
@@ -93,46 +93,41 @@ public class BlockQuartzGrowthAccelerator extends AEBaseTileBlock
double dz = 0; double dz = 0;
double dx = 0; double dx = 0;
BlockPos pt = null;
switch( r.nextInt( 4 ) ) switch( r.nextInt( 4 ) )
{ {
case 0: case 0:
dx = 0.6; dx = 0.6;
dz = d1; dz = d1;
final BlockPos pt = new BlockPos( x + west.getFrontOffsetX(), y + west.getFrontOffsetY(), z + west.getFrontOffsetZ() ); pt = new BlockPos( x + west.getFrontOffsetX(), y + west.getFrontOffsetY(), z + west.getFrontOffsetZ() );
if( !w.getBlockState(pt).getBlock().isAir( w, pt) )
{
return;
}
break; break;
case 1: case 1:
dx = d1; dx = d1;
dz += 0.6; dz += 0.6;
pt = new BlockPos( x + forward.getFrontOffsetX(), y + forward.getFrontOffsetY(), z + forward.getFrontOffsetZ() ); pt = new BlockPos( x + forward.getFrontOffsetX(), y + forward.getFrontOffsetY(), z + forward.getFrontOffsetZ() );
if( !w.getBlockState(pt).getBlock().isAir( w, pt) )
{
return;
}
break; break;
case 2: case 2:
dx = d1; dx = d1;
dz = -0.6; dz = -0.6;
pt = new BlockPos( x - forward.getFrontOffsetX(), y - forward.getFrontOffsetY(), z - forward.getFrontOffsetZ() ); pt = new BlockPos( x - forward.getFrontOffsetX(), y - forward.getFrontOffsetY(), z - forward.getFrontOffsetZ() );
if( !w.getBlockState(pt).getBlock().isAir( w, pt) )
{
return;
}
break; break;
case 3: case 3:
dx = -0.6; dx = -0.6;
dz = d1; dz = d1;
pt = new BlockPos( x - west.getFrontOffsetX(), y - west.getFrontOffsetY(), z - west.getFrontOffsetZ() ); pt = new BlockPos( x - west.getFrontOffsetX(), y - west.getFrontOffsetY(), z - west.getFrontOffsetZ() );
if( !w.getBlockState(pt).getBlock().isAir( w, pt) )
{
return;
}
break; break;
} }
if( !w.getBlockState( pt ).getBlock().isAir( w, pt ) )
{
return;
}
rx += dx * west.getFrontOffsetX(); rx += dx * west.getFrontOffsetX();
ry += dx * west.getFrontOffsetY(); ry += dx * west.getFrontOffsetY();
rz += dx * west.getFrontOffsetZ(); rz += dx * west.getFrontOffsetZ();
@@ -60,8 +60,8 @@ public class BlockQuartzTorch extends AEBaseBlock implements IOrientableBlock, I
this.setFeature( EnumSet.of( AEFeature.DecorativeLights ) ); this.setFeature( EnumSet.of( AEFeature.DecorativeLights ) );
this.setLightLevel( 0.9375F ); this.setLightLevel( 0.9375F );
this.setLightOpacity( 0 ); this.setLightOpacity( 0 );
this.isFullSize = false; this.setFullSize( false );
this.isOpaque = false; this.setOpaque( false );
} }
@Override @Override
@@ -46,7 +46,7 @@ public class BlockSkyCompass extends AEBaseTileBlock implements ICustomCollision
{ {
super( Material.iron ); super( Material.iron );
this.setTileEntity( TileSkyCompass.class ); this.setTileEntity( TileSkyCompass.class );
this.isOpaque = this.isFullSize = false; this.setOpaque( this.setFullSize( false ) );
this.lightOpacity = 0; this.lightOpacity = 0;
this.setFeature( EnumSet.of( AEFeature.MeteoriteCompass ) ); this.setFeature( EnumSet.of( AEFeature.MeteoriteCompass ) );
} }
@@ -58,12 +58,12 @@ public class BlockTinyTNT extends AEBaseBlock implements ICustomCollision
super( Material.tnt ); super( Material.tnt );
this.setLightOpacity( 1 ); this.setLightOpacity( 1 );
this.setBlockBounds( 0.25f, 0.0f, 0.25f, 0.75f, 0.5f, 0.75f ); this.setBlockBounds( 0.25f, 0.0f, 0.25f, 0.75f, 0.5f, 0.75f );
this.isFullSize = this.isOpaque = false; this.setFullSize( this.setOpaque( false ) );
this.setStepSound( soundTypeGrass ); this.setStepSound( soundTypeGrass );
this.setHardness( 0F ); this.setHardness( 0F );
this.setFeature( EnumSet.of( AEFeature.TinyTNT ) ); this.setFeature( EnumSet.of( AEFeature.TinyTNT ) );
EntityRegistry.registerModEntity( EntityTinyTNTPrimed.class, "EntityTinyTNTPrimed", EntityIds.TINY_TNT, AppEng.instance(), 16, 4, true ); EntityRegistry.registerModEntity( EntityTinyTNTPrimed.class, "EntityTinyTNTPrimed", EntityIds.get( EntityTinyTNTPrimed.class ), AppEng.instance(), 16, 4, true );
} }
@Override @Override
@@ -57,6 +57,7 @@ import appeng.core.CommonHelper;
import appeng.core.features.AECableBusFeatureHandler; import appeng.core.features.AECableBusFeatureHandler;
import appeng.core.features.AEFeature; import appeng.core.features.AEFeature;
import appeng.helpers.AEGlassMaterial; import appeng.helpers.AEGlassMaterial;
import appeng.helpers.Reflected;
import appeng.integration.IntegrationRegistry; import appeng.integration.IntegrationRegistry;
import appeng.integration.IntegrationType; import appeng.integration.IntegrationType;
import appeng.integration.abstraction.IFMP; import appeng.integration.abstraction.IFMP;
@@ -70,22 +71,27 @@ import appeng.util.Platform;
// TODO: MFR INTEGRATION // TODO: MFR INTEGRATION
//@Interface( iface = "powercrystals.minefactoryreloaded.api.rednet.connectivity.IRedNetConnection", iname = IntegrationType.MFR ) //@Interface( iface = "powercrystals.minefactoryreloaded.api.rednet.connectivity.IRedNetConnection", iname = IntegrationType.MFR )
public class BlockCableBus extends AEBaseTileBlock //implements IRedNetConnection public class BlockCableBus extends AEBaseTileBlock // implements IRedNetConnection
{ {
private static final ICableBusContainer NULL_CABLE_BUS = new NullCableBusContainer(); private static final ICableBusContainer NULL_CABLE_BUS = new NullCableBusContainer();
public static Class<? extends TileEntity> noTesrTile; private static Class<? extends TileEntity> noTesrTile;
public static Class<? extends TileEntity> tesrTile; private static Class<? extends TileEntity> tesrTile;
/** /**
* Immibis MB Support. * Immibis MB Support.
*
* It will look for a field named ImmibisMicroblocks_TransformableBlockMarker or
* ImmibisMicroblocks_TransformableTileEntityMarker, modifiers, type, etc can be ignored.
*/ */
boolean ImmibisMicroblocks_TransformableBlockMarker = true; @Reflected
private static final boolean ImmibisMicroblocks_TransformableBlockMarker = true;
public BlockCableBus() public BlockCableBus()
{ {
super( AEGlassMaterial.INSTANCE ); super( AEGlassMaterial.INSTANCE );
this.setLightOpacity( 0 ); this.setLightOpacity( 0 );
this.isFullSize = this.isOpaque = false; this.setFullSize( this.setOpaque( false ) );
// this will actually be overwritten later through setupTile and the combined layers // this will actually be overwritten later through setupTile and the combined layers
this.setTileEntity( TileCableBus.class ); this.setTileEntity( TileCableBus.class );
@@ -153,7 +159,7 @@ public class BlockCableBus extends AEBaseTileBlock //implements IRedNetConnectio
final IBlockState state, final IBlockState state,
final EnumFacing side ) final EnumFacing side )
{ {
return this.cb( w, pos ).isProvidingStrongPower( side.getOpposite() ); // TODO: IS OPPOSITE!? return this.cb( w, pos ).isProvidingStrongPower( side.getOpposite() ); // TODO: IS OPPOSITE!?
} }
@Override @Override
@@ -218,7 +224,7 @@ public class BlockCableBus extends AEBaseTileBlock //implements IRedNetConnectio
final BlockPos pos, final BlockPos pos,
EnumFacing side ) EnumFacing side )
{ {
if ( side == null ) if( side == null )
side = EnumFacing.UP; side = EnumFacing.UP;
return this.cb( w, pos ).canConnectRedstone( EnumSet.of( side ) ); return this.cb( w, pos ).canConnectRedstone( EnumSet.of( side ) );
@@ -268,41 +274,37 @@ public class BlockCableBus extends AEBaseTileBlock //implements IRedNetConnectio
// TODO HIT EFFECTS // TODO HIT EFFECTS
/* /*
for( AEPartLocation side : AEPartLocation.values() ) * for( AEPartLocation side : AEPartLocation.values() )
{ * {
IPart p = host.getPart( side ); * IPart p = host.getPart( side );
TextureAtlasSprite ico = this.getIcon( p ); * TextureAtlasSprite ico = this.getIcon( p );
* if( ico == null )
if( ico == null ) * {
{ * continue;
continue; * }
} * byte b0 = (byte) ( Platform.getRandomInt() % 2 == 0 ? 1 : 0 );
* for( int i1 = 0; i1 < b0; ++i1 )
byte b0 = (byte) ( Platform.getRandomInt() % 2 == 0 ? 1 : 0 ); * {
* for( int j1 = 0; j1 < b0; ++j1 )
for( int i1 = 0; i1 < b0; ++i1 ) * {
{ * for( int k1 = 0; k1 < b0; ++k1 )
for( int j1 = 0; j1 < b0; ++j1 ) * {
{ * double d0 = target.blockX + ( i1 + 0.5D ) / b0;
for( int k1 = 0; k1 < b0; ++k1 ) * double d1 = target.blockY + ( j1 + 0.5D ) / b0;
{ * double d2 = target.blockZ + ( k1 + 0.5D ) / b0;
double d0 = target.blockX + ( i1 + 0.5D ) / b0; * double dd0 = target.hitVec.xCoord;
double d1 = target.blockY + ( j1 + 0.5D ) / b0; * double dd1 = target.hitVec.yCoord;
double d2 = target.blockZ + ( k1 + 0.5D ) / b0; * double dd2 = target.hitVec.zCoord;
* EntityDiggingFX fx = ( new EntityDiggingFX( world, dd0, dd1, dd2, d0 - target.blockX - 0.5D, d1 -
double dd0 = target.hitVec.xCoord; * target.blockY - 0.5D, d2 - target.blockZ - 0.5D, this, 0 ) ).applyColourMultiplier( target.blockX,
double dd1 = target.hitVec.yCoord; * target.blockY, target.blockZ );
double dd2 = target.hitVec.zCoord; * fx.setParticleIcon( ico );
EntityDiggingFX fx = ( new EntityDiggingFX( world, dd0, dd1, dd2, d0 - target.blockX - 0.5D, d1 - target.blockY - 0.5D, d2 - target.blockZ - 0.5D, this, 0 ) ).applyColourMultiplier( target.blockX, target.blockY, target.blockZ ); * effectRenderer.addEffect( fx );
* }
fx.setParticleIcon( ico ); * }
* }
effectRenderer.addEffect( fx ); * }
} */
}
}
}
*/
} }
return true; return true;
@@ -321,37 +323,33 @@ public class BlockCableBus extends AEBaseTileBlock //implements IRedNetConnectio
// TODO DESTROY EFFECTS // TODO DESTROY EFFECTS
/* /*
for( AEPartLocation side : AEPartLocation.values() ) * for( AEPartLocation side : AEPartLocation.values() )
{ * {
IPart p = host.getPart( side ); * IPart p = host.getPart( side );
TextureAtlasSprite ico = this.getIcon( p ); * TextureAtlasSprite ico = this.getIcon( p );
* if( ico == null )
if( ico == null ) * {
{ * continue;
continue; * }
} * byte b0 = 3;
* for( int i1 = 0; i1 < b0; ++i1 )
byte b0 = 3; * {
* for( int j1 = 0; j1 < b0; ++j1 )
for( int i1 = 0; i1 < b0; ++i1 ) * {
{ * for( int k1 = 0; k1 < b0; ++k1 )
for( int j1 = 0; j1 < b0; ++j1 ) * {
{ * double d0 = x + ( i1 + 0.5D ) / b0;
for( int k1 = 0; k1 < b0; ++k1 ) * double d1 = y + ( j1 + 0.5D ) / b0;
{ * double d2 = z + ( k1 + 0.5D ) / b0;
double d0 = x + ( i1 + 0.5D ) / b0; * EntityDiggingFX fx = ( new EntityDiggingFX( world, d0, d1, d2, d0 - x - 0.5D, d1 - y - 0.5D, d2 - z -
double d1 = y + ( j1 + 0.5D ) / b0; * 0.5D, this, meta ) ).applyColourMultiplier( x, y, z );
double d2 = z + ( k1 + 0.5D ) / b0; * fx.setParticleIcon( ico );
EntityDiggingFX fx = ( new EntityDiggingFX( world, d0, d1, d2, d0 - x - 0.5D, d1 - y - 0.5D, d2 - z - 0.5D, this, meta ) ).applyColourMultiplier( x, y, z ); * effectRenderer.addEffect( fx );
* }
fx.setParticleIcon( ico ); * }
* }
effectRenderer.addEffect( fx ); * }
} */
}
}
}
*/
} }
return true; return true;
@@ -377,7 +375,7 @@ public class BlockCableBus extends AEBaseTileBlock //implements IRedNetConnectio
if( te instanceof TileCableBus ) if( te instanceof TileCableBus )
{ {
out = ( (TileCableBus) te ).cb; out = ( (TileCableBus) te ).getCableBus();
} }
else if( IntegrationRegistry.INSTANCE.isEnabled( IntegrationType.FMP ) ) else if( IntegrationRegistry.INSTANCE.isEnabled( IntegrationType.FMP ) )
{ {
@@ -425,10 +423,11 @@ public class BlockCableBus extends AEBaseTileBlock //implements IRedNetConnectio
{ {
try try
{ {
return this.cb( world, pos ).recolourBlock( side, AEColor.values()[ color.ordinal() ], who ); return this.cb( world, pos ).recolourBlock( side, AEColor.values()[color.ordinal()], who );
} }
catch( final Throwable ignored ) catch( final Throwable ignored )
{} {
}
return false; return false;
} }
@@ -460,7 +459,7 @@ public class BlockCableBus extends AEBaseTileBlock //implements IRedNetConnectio
@Override @Override
protected void setFeature( final EnumSet<AEFeature> f ) protected void setFeature( final EnumSet<AEFeature> f )
{ {
final AECableBusFeatureHandler featureHandler = new AECableBusFeatureHandler( f, this, this.featureSubName ); final AECableBusFeatureHandler featureHandler = new AECableBusFeatureHandler( f, this, this.getFeatureSubName() );
this.setHandler( featureHandler ); this.setHandler( featureHandler );
} }
@@ -477,16 +476,27 @@ public class BlockCableBus extends AEBaseTileBlock //implements IRedNetConnectio
} }
} }
// TODO MFR Integration public static Class<? extends TileEntity> getTesrTile()
// @Override {
// @Method( iname = IntegrationType.MFR ) return tesrTile;
// public RedNetConnectionType getConnectionType( World world, int x, int y, int z, ForgeDirection side ) }
// {
// return this.cb( world, x, y, z ).canConnectRedstone( EnumSet.allOf( ForgeDirection.class ) ) ? RedNetConnectionType.CableSingle : RedNetConnectionType.None; public static Class<? extends TileEntity> getNoTesrTile()
// } {
// return noTesrTile;
// public void setRenderColor( int color ) }
// {
// this.myColorMultiplier = color; // TODO MFR Integration
// } // @Override
// @Method( iname = IntegrationType.MFR )
// public RedNetConnectionType getConnectionType( World world, int x, int y, int z, ForgeDirection side )
// {
// return this.cb( world, x, y, z ).canConnectRedstone( EnumSet.allOf( ForgeDirection.class ) ) ?
// RedNetConnectionType.CableSingle : RedNetConnectionType.None;
// }
//
// public void setRenderColor( int color )
// {
// this.myColorMultiplier = color;
// }
} }
@@ -51,8 +51,8 @@ public class BlockWireless extends AEBaseTileBlock implements ICustomCollision
super( AEGlassMaterial.INSTANCE ); super( AEGlassMaterial.INSTANCE );
this.setTileEntity( TileWireless.class ); this.setTileEntity( TileWireless.class );
this.setLightOpacity( 0 ); this.setLightOpacity( 0 );
this.isFullSize = false; this.setFullSize( false );
this.isOpaque = false; this.setOpaque( false );
this.setFeature( EnumSet.of( AEFeature.Core, AEFeature.WirelessAccessTerminal ) ); this.setFeature( EnumSet.of( AEFeature.Core, AEFeature.WirelessAccessTerminal ) );
} }
@@ -44,7 +44,7 @@ public abstract class BlockQuantumBase extends AEBaseTileBlock implements ICusto
final float shave = 2.0f / 16.0f; final float shave = 2.0f / 16.0f;
this.setBlockBounds( shave, shave, shave, 1.0f - shave, 1.0f - shave, 1.0f - shave ); this.setBlockBounds( shave, shave, shave, 1.0f - shave, 1.0f - shave, 1.0f - shave );
this.setLightOpacity( 0 ); this.setLightOpacity( 0 );
this.isFullSize = this.isOpaque = false; this.setFullSize( this.setOpaque( false ) );
this.setFeature( EnumSet.of( AEFeature.QuantumNetworkBridge ) ); this.setFeature( EnumSet.of( AEFeature.QuantumNetworkBridge ) );
} }
@@ -51,7 +51,7 @@ public class BlockMatrixFrame extends AEBaseBlock implements ICustomCollision
this.setResistance( 6000000.0F ); this.setResistance( 6000000.0F );
this.setBlockUnbreakable(); this.setBlockUnbreakable();
this.setLightOpacity( 0 ); this.setLightOpacity( 0 );
this.isOpaque = false; this.setOpaque( false );
this.setFeature( EnumSet.of( AEFeature.SpatialIO ) ); this.setFeature( EnumSet.of( AEFeature.SpatialIO ) );
} }
@@ -58,7 +58,7 @@ public class BlockSkyChest extends AEBaseTileBlock implements ICustomCollision
{ {
super( Material.rock, Optional.of( type.name() ) ); super( Material.rock, Optional.of( type.name() ) );
this.setTileEntity( TileSkyChest.class ); this.setTileEntity( TileSkyChest.class );
this.isOpaque = this.isFullSize = false; this.setOpaque( this.setFullSize( false ) );
this.lightOpacity = 0; this.lightOpacity = 0;
this.hasSubtypes = true; this.hasSubtypes = true;
this.setHardness( 50 ); this.setHardness( 50 );
@@ -158,7 +158,7 @@ public class ClientHelper extends ServerHelper
@Override @Override
public void bindTileEntitySpecialRenderer( final Class<? extends TileEntity> tile, final AEBaseBlock blk ) public void bindTileEntitySpecialRenderer( final Class<? extends TileEntity> tile, final AEBaseBlock blk )
{ {
final BaseBlockRender bbr = blk.getRendererInstance().rendererInstance; final BaseBlockRender bbr = blk.getRendererInstance().getRendererInstance();
if( bbr.hasTESR() && tile != null ) if( bbr.hasTESR() && tile != null )
{ {
ClientRegistry.bindTileEntitySpecialRenderer( tile, new TESRWrapper( bbr ) ); ClientRegistry.bindTileEntitySpecialRenderer( tile, new TESRWrapper( bbr ) );
@@ -293,7 +293,7 @@ public class ClientHelper extends ServerHelper
this.addIcon( reg.name ); this.addIcon( reg.name );
mesher.register( reg.item instanceof Item ? (Item) reg.item : Item.getItemFromBlock( (Block) reg.item ), stack -> renderer.rendererInstance.getResourcePath() ); mesher.register( reg.item instanceof Item ? (Item) reg.item : Item.getItemFromBlock( (Block) reg.item ), stack -> renderer.getRendererInstance().getResourcePath() );
continue; continue;
} }
@@ -512,7 +512,7 @@ public class ClientHelper extends ServerHelper
} }
final SmartModel sm = new SmartModel( renderer ); final SmartModel sm = new SmartModel( renderer );
event.modelRegistry.putObject( renderer.rendererInstance.getResourcePath(), sm ); event.modelRegistry.putObject( renderer.getRendererInstance().getResourcePath(), sm );
final Map data = new DefaultStateMapper().putStateModelLocations( (Block) reg.item ); final Map data = new DefaultStateMapper().putStateModelLocations( (Block) reg.item );
for( final Object Loc : data.values() ) for( final Object Loc : data.values() )
+57 -53
View File
@@ -1,5 +1,7 @@
package appeng.client; package appeng.client;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
@@ -19,6 +21,7 @@ import net.minecraftforge.client.model.ISmartBlockModel;
import net.minecraftforge.client.model.ISmartItemModel; import net.minecraftforge.client.model.ISmartItemModel;
import net.minecraftforge.client.model.TRSRTransformation; import net.minecraftforge.client.model.TRSRTransformation;
import net.minecraftforge.common.property.IExtendedBlockState; import net.minecraftforge.common.property.IExtendedBlockState;
import appeng.api.util.AEPartLocation; import appeng.api.util.AEPartLocation;
import appeng.block.AEBaseBlock; import appeng.block.AEBaseBlock;
import appeng.block.AEBaseTileBlock; import appeng.block.AEBaseTileBlock;
@@ -26,72 +29,73 @@ import appeng.client.render.BlockRenderInfo;
import appeng.client.render.ModelGenerator; import appeng.client.render.ModelGenerator;
import appeng.client.texture.MissingIcon; import appeng.client.texture.MissingIcon;
// net.minecraft.client.renderer.tileentity.TileEntityItemStackRenderer // net.minecraft.client.renderer.tileentity.TileEntityItemStackRenderer
public class SmartModel implements IBakedModel, ISmartBlockModel,ISmartItemModel public class SmartModel implements IBakedModel, ISmartBlockModel, ISmartItemModel
{ {
BlockRenderInfo AERenderer; private BlockRenderInfo aeRenderer;
private class DefState implements IModelState private class DefState implements IModelState
{ {
@Override @Override
public TRSRTransformation apply( public TRSRTransformation apply(
final IModelPart part ) final IModelPart part )
{ {
return TRSRTransformation.identity(); return TRSRTransformation.identity();
} }
}; };
public SmartModel( public SmartModel(
final BlockRenderInfo rendererInstance ) final BlockRenderInfo rendererInstance )
{ {
this.AERenderer = rendererInstance; this.aeRenderer = rendererInstance;
} }
@Override @Override
public List getFaceQuads( public List getFaceQuads(
final EnumFacing p_177551_1_ ) final EnumFacing p_177551_1_ )
{ {
return Collections.emptyList(); return Collections.emptyList();
} }
@Override @Override
public List getGeneralQuads() public List getGeneralQuads()
{ {
return Collections.emptyList(); return Collections.emptyList();
} }
@Override @Override
public boolean isAmbientOcclusion() public boolean isAmbientOcclusion()
{ {
return true; return true;
} }
@Override @Override
public boolean isGui3d() public boolean isGui3d()
{ {
return true; return true;
} }
@Override @Override
public boolean isBuiltInRenderer() public boolean isBuiltInRenderer()
{ {
return false; return false;
} }
@Override @Override
public TextureAtlasSprite getTexture() public TextureAtlasSprite getTexture()
{ {
return this.AERenderer != null ? this.AERenderer.getTexture( AEPartLocation.UP ).getAtlas() : MissingIcon.getMissing(); return this.aeRenderer != null ? this.aeRenderer.getTexture( AEPartLocation.UP ).getAtlas() : MissingIcon.getMissing();
} }
@Override @Override
public ItemCameraTransforms getItemCameraTransforms() public ItemCameraTransforms getItemCameraTransforms()
{ {
return ItemCameraTransforms.DEFAULT; return ItemCameraTransforms.DEFAULT;
} }
@Override @Override
public IBakedModel handleItemState( public IBakedModel handleItemState(
@@ -100,7 +104,7 @@ public class SmartModel implements IBakedModel, ISmartBlockModel,ISmartItemModel
final ModelGenerator helper = new ModelGenerator(); final ModelGenerator helper = new ModelGenerator();
final Block blk = Block.getBlockFromItem( stack.getItem() ); final Block blk = Block.getBlockFromItem( stack.getItem() );
helper.setRenderBoundsFromBlock( blk ); helper.setRenderBoundsFromBlock( blk );
this.AERenderer.rendererInstance.renderInventory( blk instanceof AEBaseBlock ? (AEBaseBlock) blk : null, stack, helper, ItemRenderType.INVENTORY, null ); this.aeRenderer.getRendererInstance().renderInventory( blk instanceof AEBaseBlock ? (AEBaseBlock) blk : null, stack, helper, ItemRenderType.INVENTORY, null );
helper.finalizeModel( true ); helper.finalizeModel( true );
return helper.getOutput(); return helper.getOutput();
} }
@@ -111,12 +115,12 @@ public class SmartModel implements IBakedModel, ISmartBlockModel,ISmartItemModel
{ {
final ModelGenerator helper = new ModelGenerator(); final ModelGenerator helper = new ModelGenerator();
final Block blk = state.getBlock(); final Block blk = state.getBlock();
final BlockPos pos = ( (IExtendedBlockState)state ).getValue( AEBaseTileBlock.AE_BLOCK_POS ); final BlockPos pos = ( (IExtendedBlockState) state ).getValue( AEBaseTileBlock.AE_BLOCK_POS );
final IBlockAccess world = ( (IExtendedBlockState)state ).getValue( AEBaseTileBlock.AE_BLOCK_ACCESS); final IBlockAccess world = ( (IExtendedBlockState) state ).getValue( AEBaseTileBlock.AE_BLOCK_ACCESS );
helper.setTranslation( -pos.getX(), -pos.getY(), -pos.getZ() ); helper.setTranslation( -pos.getX(), -pos.getY(), -pos.getZ() );
helper.setRenderBoundsFromBlock( blk ); helper.setRenderBoundsFromBlock( blk );
helper.blockAccess = world; helper.setBlockAccess( world );
this.AERenderer.rendererInstance.renderInWorld( blk instanceof AEBaseBlock ? (AEBaseBlock) blk : null, world, pos, helper); this.aeRenderer.getRendererInstance().renderInWorld( blk instanceof AEBaseBlock ? (AEBaseBlock) blk : null, world, pos, helper );
helper.finalizeModel( false ); helper.finalizeModel( false );
return helper.getOutput(); return helper.getOutput();
} }
+54 -34
View File
@@ -83,17 +83,17 @@ import com.google.common.base.Stopwatch;
public abstract class AEBaseGui extends GuiContainer public abstract class AEBaseGui extends GuiContainer
{ {
public static boolean switchingGuis; private static boolean switchingGuis;
protected final List<InternalSlotME> meSlots = new LinkedList<InternalSlotME>(); private final List<InternalSlotME> meSlots = new LinkedList<InternalSlotME>();
// drag y // drag y
final Set<Slot> drag_click = new HashSet<Slot>(); private final Set<Slot> drag_click = new HashSet<Slot>();
final AppEngRenderItem aeRenderItem = new AppEngRenderItem(Minecraft.getMinecraft().renderEngine,Minecraft.getMinecraft().getRenderItem().getItemModelMesher().getModelManager()); private final AppEngRenderItem aeRenderItem = new AppEngRenderItem( Minecraft.getMinecraft().renderEngine, Minecraft.getMinecraft().getRenderItem().getItemModelMesher().getModelManager() );
protected GuiScrollbar myScrollBar = null; private GuiScrollbar myScrollBar = null;
boolean disableShiftClick = false; private boolean disableShiftClick = false;
Stopwatch dbl_clickTimer = Stopwatch.createStarted(); private Stopwatch dbl_clickTimer = Stopwatch.createStarted();
ItemStack dbl_whichItem; private ItemStack dbl_whichItem;
Slot bl_clicked; private Slot bl_clicked;
boolean useNEI = false; private boolean useNEI = false;
private boolean subGui; private boolean subGui;
public AEBaseGui( final Container container ) public AEBaseGui( final Container container )
@@ -161,9 +161,9 @@ public abstract class AEBaseGui extends GuiContainer
super.drawScreen( mouseX, mouseY, btn ); super.drawScreen( mouseX, mouseY, btn );
final boolean hasClicked = Mouse.isButtonDown( 0 ); final boolean hasClicked = Mouse.isButtonDown( 0 );
if( hasClicked && this.myScrollBar != null ) if( hasClicked && this.getScrollBar() != null )
{ {
this.myScrollBar.click( this, mouseX - this.guiLeft, mouseY - this.guiTop ); this.getScrollBar().click( this, mouseX - this.guiLeft, mouseY - this.guiTop );
} }
for( final Object c : this.buttonList ) for( final Object c : this.buttonList )
@@ -290,9 +290,9 @@ public abstract class AEBaseGui extends GuiContainer
final int oy = this.guiTop; // (height - ySize) / 2; final int oy = this.guiTop; // (height - ySize) / 2;
GL11.glColor4f( 1.0F, 1.0F, 1.0F, 1.0F ); GL11.glColor4f( 1.0F, 1.0F, 1.0F, 1.0F );
if( this.myScrollBar != null ) if( this.getScrollBar() != null )
{ {
this.myScrollBar.draw( this ); this.getScrollBar().draw( this );
} }
this.drawFG( ox, oy, x, y ); this.drawFG( ox, oy, x, y );
@@ -318,14 +318,14 @@ public abstract class AEBaseGui extends GuiContainer
{ {
if( fs.isEnabled() ) if( fs.isEnabled() )
{ {
this.drawTexturedModalRect( ox + fs.xDisplayPosition - 1, oy + fs.yDisplayPosition - 1, fs.srcX - 1, fs.srcY - 1, 18, 18 ); this.drawTexturedModalRect( ox + fs.xDisplayPosition - 1, oy + fs.yDisplayPosition - 1, fs.getSourceX() - 1, fs.getSourceY() - 1, 18, 18 );
} }
else else
{ {
GL11.glPushAttrib( GL11.GL_ALL_ATTRIB_BITS ); GL11.glPushAttrib( GL11.GL_ALL_ATTRIB_BITS );
GL11.glColor4f( 1.0F, 1.0F, 1.0F, 0.4F ); GL11.glColor4f( 1.0F, 1.0F, 1.0F, 0.4F );
GL11.glEnable( GL11.GL_BLEND ); GL11.glEnable( GL11.GL_BLEND );
this.drawTexturedModalRect( ox + fs.xDisplayPosition - 1, oy + fs.yDisplayPosition - 1, fs.srcX - 1, fs.srcY - 1, 18, 18 ); this.drawTexturedModalRect( ox + fs.xDisplayPosition - 1, oy + fs.yDisplayPosition - 1, fs.getSourceX() - 1, fs.getSourceY() - 1, 18, 18 );
GL11.glColor4f( 1.0F, 1.0F, 1.0F, 1.0F ); GL11.glColor4f( 1.0F, 1.0F, 1.0F, 1.0F );
GL11.glPopAttrib(); GL11.glPopAttrib();
} }
@@ -491,7 +491,7 @@ public abstract class AEBaseGui extends GuiContainer
if( action != null ) if( action != null )
{ {
final PacketInventoryAction p = new PacketInventoryAction( action, slot.getSlotIndex(), ( (SlotDisconnected) slot ).mySlot.id ); final PacketInventoryAction p = new PacketInventoryAction( action, slot.getSlotIndex(), ( (SlotDisconnected) slot ).getSlot().getId() );
NetworkHandler.instance.sendToServer( p ); NetworkHandler.instance.sendToServer( p );
} }
@@ -681,13 +681,13 @@ public abstract class AEBaseGui extends GuiContainer
final int y = this.height - Mouse.getEventY() * this.height / this.mc.displayHeight - 1; final int y = this.height - Mouse.getEventY() * this.height / this.mc.displayHeight - 1;
this.mouseWheelEvent( x, y, i / Math.abs( i ) ); this.mouseWheelEvent( x, y, i / Math.abs( i ) );
} }
else if( i != 0 && this.myScrollBar != null ) else if( i != 0 && this.getScrollBar() != null )
{ {
this.myScrollBar.wheel( i ); this.getScrollBar().wheel( i );
} }
} }
protected void mouseWheelEvent( final int x, final int y, final int wheel ) private void mouseWheelEvent( final int x, final int y, final int wheel )
{ {
final Slot slot = this.getSlot( x, y ); final Slot slot = this.getSlot( x, y );
if( slot instanceof SlotME ) if( slot instanceof SlotME )
@@ -745,22 +745,17 @@ public abstract class AEBaseGui extends GuiContainer
{ {
if( this.inventorySlots instanceof AEBaseContainer ) if( this.inventorySlots instanceof AEBaseContainer )
{ {
return ( (AEBaseContainer) this.inventorySlots ).customName != null; return ( (AEBaseContainer) this.inventorySlots ).getCustomName() != null;
} }
return false; return false;
} }
private String getInventoryName() private String getInventoryName()
{ {
return ( (AEBaseContainer) this.inventorySlots ).customName; return ( (AEBaseContainer) this.inventorySlots ).getCustomName();
} }
public void a( final Slot s ) private void drawSlot( final Slot s )
{
this.drawSlot( s );
}
public void drawSlot( final Slot s )
{ {
if( s instanceof SlotME ) if( s instanceof SlotME )
{ {
@@ -780,7 +775,7 @@ public abstract class AEBaseGui extends GuiContainer
this.zLevel = 0.0F; this.zLevel = 0.0F;
this.itemRender.zLevel = 0.0F; this.itemRender.zLevel = 0.0F;
this.aeRenderItem.aeStack = ( (SlotME) s ).getAEStack(); this.aeRenderItem.setAeStack( ( (SlotME) s ).getAEStack() );
this.safeDrawSlot( s ); this.safeDrawSlot( s );
} }
@@ -820,7 +815,7 @@ public abstract class AEBaseGui extends GuiContainer
final float par4 = uv_y * 16; final float par4 = uv_y * 16;
final Tessellator tessellator = Tessellator.getInstance(); final Tessellator tessellator = Tessellator.getInstance();
final WorldRenderer worldrenderer = tessellator.getWorldRenderer(); final WorldRenderer worldrenderer = tessellator.getWorldRenderer();
worldrenderer.startDrawingQuads(); worldrenderer.startDrawingQuads();
worldrenderer.setColorRGBA_F( 1.0f, 1.0f, 1.0f, aes.getOpacityOfIcon() ); worldrenderer.setColorRGBA_F( 1.0f, 1.0f, 1.0f, aes.getOpacityOfIcon() );
@@ -844,7 +839,7 @@ public abstract class AEBaseGui extends GuiContainer
if( is != null && s instanceof AppEngSlot ) if( is != null && s instanceof AppEngSlot )
{ {
if( ( (AppEngSlot) s ).isValid == hasCalculatedValidness.NotAvailable ) if( ( (AppEngSlot) s ).getIsValid() == hasCalculatedValidness.NotAvailable )
{ {
boolean isValid = s.isItemValid( is ) || s instanceof SlotOutput || s instanceof AppEngCraftingSlot || s instanceof SlotDisabled || s instanceof SlotInaccessible || s instanceof SlotFake || s instanceof SlotRestrictedInput || s instanceof SlotDisconnected; boolean isValid = s.isItemValid( is ) || s instanceof SlotOutput || s instanceof AppEngCraftingSlot || s instanceof SlotDisabled || s instanceof SlotInaccessible || s instanceof SlotFake || s instanceof SlotRestrictedInput || s instanceof SlotDisconnected;
if( isValid && s instanceof SlotRestrictedInput ) if( isValid && s instanceof SlotRestrictedInput )
@@ -858,10 +853,10 @@ public abstract class AEBaseGui extends GuiContainer
AELog.error( err ); AELog.error( err );
} }
} }
( (AppEngSlot) s ).isValid = isValid ? hasCalculatedValidness.Valid : hasCalculatedValidness.Invalid; ( (AppEngSlot) s ).setIsValid( isValid ? hasCalculatedValidness.Valid : hasCalculatedValidness.Invalid );
} }
if( ( (AppEngSlot) s ).isValid == hasCalculatedValidness.Invalid ) if( ( (AppEngSlot) s ).getIsValid() == hasCalculatedValidness.Invalid )
{ {
this.zLevel = 100.0F; this.zLevel = 100.0F;
this.itemRender.zLevel = 100.0F; this.itemRender.zLevel = 100.0F;
@@ -877,7 +872,7 @@ public abstract class AEBaseGui extends GuiContainer
if( s instanceof AppEngSlot ) if( s instanceof AppEngSlot )
{ {
( (AppEngSlot) s ).isDisplay = true; ( (AppEngSlot) s ).setDisplay( true );
this.safeDrawSlot( s ); this.safeDrawSlot( s );
} }
else else
@@ -936,4 +931,29 @@ public abstract class AEBaseGui extends GuiContainer
{ {
this.drawSlot( s ); this.drawSlot( s );
} }
protected GuiScrollbar getScrollBar()
{
return this.myScrollBar;
}
protected void setScrollBar( final GuiScrollbar myScrollBar )
{
this.myScrollBar = myScrollBar;
}
protected List<InternalSlotME> getMeSlots()
{
return this.meSlots;
}
public static final synchronized boolean isSwitchingGuis()
{
return switchingGuis;
}
public static final synchronized void setSwitchingGuis( final boolean switchingGuis )
{
AEBaseGui.switchingGuis = switchingGuis;
}
} }
@@ -47,19 +47,17 @@ import appeng.util.Platform;
public class GuiCellWorkbench extends GuiUpgradeable public class GuiCellWorkbench extends GuiUpgradeable
{ {
final ContainerCellWorkbench workbench; private final ContainerCellWorkbench workbench;
final TileCellWorkbench tcw;
GuiImgButton clear; private GuiImgButton clear;
GuiImgButton partition; private GuiImgButton partition;
GuiToggleButton copyMode; private GuiToggleButton copyMode;
public GuiCellWorkbench( final InventoryPlayer inventoryPlayer, final TileCellWorkbench te ) public GuiCellWorkbench( final InventoryPlayer inventoryPlayer, final TileCellWorkbench te )
{ {
super( new ContainerCellWorkbench( inventoryPlayer, te ) ); super( new ContainerCellWorkbench( inventoryPlayer, te ) );
this.workbench = (ContainerCellWorkbench) this.inventorySlots; this.workbench = (ContainerCellWorkbench) this.inventorySlots;
this.ySize = 251; this.ySize = 251;
this.tcw = te;
} }
@Override @Override
@@ -135,7 +133,7 @@ public class GuiCellWorkbench extends GuiUpgradeable
@Override @Override
protected void handleButtonVisibility() protected void handleButtonVisibility()
{ {
this.copyMode.setState( this.workbench.copyMode == CopyMode.CLEAR_ON_REMOVE ); this.copyMode.setState( this.workbench.getCopyMode() == CopyMode.CLEAR_ON_REMOVE );
boolean hasFuzzy = false; boolean hasFuzzy = false;
final IInventory inv = this.workbench.getCellUpgradeInventory(); final IInventory inv = this.workbench.getCellUpgradeInventory();
@@ -36,7 +36,7 @@ import appeng.tile.storage.TileChest;
public class GuiChest extends AEBaseGui public class GuiChest extends AEBaseGui
{ {
GuiTabButton priority; private GuiTabButton priority;
public GuiChest( final InventoryPlayer inventoryPlayer, final TileChest te ) public GuiChest( final InventoryPlayer inventoryPlayer, final TileChest te )
{ {
@@ -41,9 +41,9 @@ import appeng.tile.misc.TileCondenser;
public class GuiCondenser extends AEBaseGui public class GuiCondenser extends AEBaseGui
{ {
final ContainerCondenser cvc; private final ContainerCondenser cvc;
GuiProgressBar pb; private GuiProgressBar pb;
GuiImgButton mode; private GuiImgButton mode;
public GuiCondenser( final InventoryPlayer inventoryPlayer, final TileCondenser te ) public GuiCondenser( final InventoryPlayer inventoryPlayer, final TileCondenser te )
{ {
@@ -72,7 +72,7 @@ public class GuiCondenser extends AEBaseGui
this.pb = new GuiProgressBar( this.cvc, "guis/condenser.png", 120 + this.guiLeft, 25 + this.guiTop, 178, 25, 6, 18, Direction.VERTICAL, GuiText.StoredEnergy.getLocal() ); this.pb = new GuiProgressBar( this.cvc, "guis/condenser.png", 120 + this.guiLeft, 25 + this.guiTop, 178, 25, 6, 18, Direction.VERTICAL, GuiText.StoredEnergy.getLocal() );
this.mode = new GuiImgButton( 128 + this.guiLeft, 52 + this.guiTop, Settings.CONDENSER_OUTPUT, this.cvc.output ); this.mode = new GuiImgButton( 128 + this.guiLeft, 52 + this.guiTop, Settings.CONDENSER_OUTPUT, this.cvc.getOutput() );
this.buttonList.add( this.pb ); this.buttonList.add( this.pb );
this.buttonList.add( this.mode ); this.buttonList.add( this.mode );
@@ -84,8 +84,8 @@ public class GuiCondenser extends AEBaseGui
this.fontRendererObj.drawString( this.getGuiDisplayName( GuiText.Condenser.getLocal() ), 8, 6, 4210752 ); this.fontRendererObj.drawString( this.getGuiDisplayName( GuiText.Condenser.getLocal() ), 8, 6, 4210752 );
this.fontRendererObj.drawString( GuiText.inventory.getLocal(), 8, this.ySize - 96 + 3, 4210752 ); this.fontRendererObj.drawString( GuiText.inventory.getLocal(), 8, this.ySize - 96 + 3, 4210752 );
this.mode.set( this.cvc.output ); this.mode.set( this.cvc.getOutput() );
this.mode.fillVar = String.valueOf( this.cvc.output.requiredPower ); this.mode.setFillVar( String.valueOf( this.cvc.getOutput().requiredPower ) );
} }
@Override @Override
@@ -58,28 +58,30 @@ import com.google.common.base.Joiner;
public class GuiCraftConfirm extends AEBaseGui public class GuiCraftConfirm extends AEBaseGui
{ {
final ContainerCraftConfirm ccc; private final ContainerCraftConfirm ccc;
final int rows = 5; private final int rows = 5;
final IItemList<IAEItemStack> storage = AEApi.instance().storage().createItemList(); private final IItemList<IAEItemStack> storage = AEApi.instance().storage().createItemList();
final IItemList<IAEItemStack> pending = AEApi.instance().storage().createItemList(); private final IItemList<IAEItemStack> pending = AEApi.instance().storage().createItemList();
final IItemList<IAEItemStack> missing = AEApi.instance().storage().createItemList(); private final IItemList<IAEItemStack> missing = AEApi.instance().storage().createItemList();
final List<IAEItemStack> visual = new ArrayList<IAEItemStack>(); private final List<IAEItemStack> visual = new ArrayList<IAEItemStack>();
GuiBridge OriginalGui; private GuiBridge OriginalGui;
GuiButton cancel; private GuiButton cancel;
GuiButton start; private GuiButton start;
GuiButton selectCPU; private GuiButton selectCPU;
int tooltip = -1; private int tooltip = -1;
public GuiCraftConfirm( final InventoryPlayer inventoryPlayer, final ITerminalHost te ) public GuiCraftConfirm( final InventoryPlayer inventoryPlayer, final ITerminalHost te )
{ {
super( new ContainerCraftConfirm( inventoryPlayer, te ) ); super( new ContainerCraftConfirm( inventoryPlayer, te ) );
this.xSize = 238; this.xSize = 238;
this.ySize = 206; this.ySize = 206;
this.myScrollBar = new GuiScrollbar();
final GuiScrollbar scrollbar = new GuiScrollbar();
this.setScrollBar( scrollbar );
this.ccc = (ContainerCraftConfirm) this.inventorySlots; this.ccc = (ContainerCraftConfirm) this.inventorySlots;
@@ -106,7 +108,7 @@ public class GuiCraftConfirm extends AEBaseGui
boolean isAutoStart() boolean isAutoStart()
{ {
return ( (ContainerCraftConfirm) this.inventorySlots ).autoStart; return ( (ContainerCraftConfirm) this.inventorySlots ).isAutoStart();
} }
@Override @Override
@@ -135,7 +137,7 @@ public class GuiCraftConfirm extends AEBaseGui
{ {
this.updateCPUButtonText(); this.updateCPUButtonText();
this.start.enabled = !( this.ccc.noCPU || this.isSimulation() ); this.start.enabled = !( this.ccc.hasNoCPU() || this.isSimulation() );
this.selectCPU.enabled = !this.isSimulation(); this.selectCPU.enabled = !this.isSimulation();
final int gx = ( this.width - this.xSize ) / 2; final int gx = ( this.width - this.xSize ) / 2;
@@ -175,20 +177,20 @@ public class GuiCraftConfirm extends AEBaseGui
private void updateCPUButtonText() private void updateCPUButtonText()
{ {
String btnTextText = GuiText.CraftingCPU.getLocal() + ": " + GuiText.Automatic.getLocal(); String btnTextText = GuiText.CraftingCPU.getLocal() + ": " + GuiText.Automatic.getLocal();
if( this.ccc.selectedCpu >= 0 )// && status.selectedCpu < status.cpus.size() ) if( this.ccc.getSelectedCpu() >= 0 )// && status.selectedCpu < status.cpus.size() )
{ {
if( this.ccc.myName.length() > 0 ) if( this.ccc.getName().length() > 0 )
{ {
final String name = this.ccc.myName.substring( 0, Math.min( 20, this.ccc.myName.length() ) ); final String name = this.ccc.getName().substring( 0, Math.min( 20, this.ccc.getName().length() ) );
btnTextText = GuiText.CraftingCPU.getLocal() + ": " + name; btnTextText = GuiText.CraftingCPU.getLocal() + ": " + name;
} }
else else
{ {
btnTextText = GuiText.CraftingCPU.getLocal() + ": #" + this.ccc.selectedCpu; btnTextText = GuiText.CraftingCPU.getLocal() + ": #" + this.ccc.getSelectedCpu();
} }
} }
if( this.ccc.noCPU ) if( this.ccc.hasNoCPU() )
{ {
btnTextText = GuiText.NoCraftingCPUs.getLocal(); btnTextText = GuiText.NoCraftingCPUs.getLocal();
} }
@@ -196,15 +198,15 @@ public class GuiCraftConfirm extends AEBaseGui
this.selectCPU.displayString = btnTextText; this.selectCPU.displayString = btnTextText;
} }
boolean isSimulation() private boolean isSimulation()
{ {
return ( (ContainerCraftConfirm) this.inventorySlots ).simulation; return ( (ContainerCraftConfirm) this.inventorySlots ).isSimulation();
} }
@Override @Override
public void drawFG( final int offsetX, final int offsetY, final int mouseX, final int mouseY ) public void drawFG( final int offsetX, final int offsetY, final int mouseX, final int mouseY )
{ {
final long BytesUsed = this.ccc.bytesUsed; final long BytesUsed = this.ccc.getUsedBytes();
final String byteUsed = NumberFormat.getInstance().format( BytesUsed ); final String byteUsed = NumberFormat.getInstance().format( BytesUsed );
final String Add = BytesUsed > 0 ? ( byteUsed + ' ' + GuiText.BytesUsed.getLocal() ) : GuiText.CalculatingWait.getLocal(); final String Add = BytesUsed > 0 ? ( byteUsed + ' ' + GuiText.BytesUsed.getLocal() ) : GuiText.CalculatingWait.getLocal();
this.fontRendererObj.drawString( GuiText.CraftingPlan.getLocal() + " - " + Add, 8, 7, 4210752 ); this.fontRendererObj.drawString( GuiText.CraftingPlan.getLocal() + " - " + Add, 8, 7, 4210752 );
@@ -217,7 +219,7 @@ public class GuiCraftConfirm extends AEBaseGui
} }
else else
{ {
dsp = this.ccc.cpuBytesAvail > 0 ? ( GuiText.Bytes.getLocal() + ": " + this.ccc.cpuBytesAvail + " : " + GuiText.CoProcessors.getLocal() + ": " + this.ccc.cpuCoProcessors ) : GuiText.Bytes.getLocal() + ": N/A : " + GuiText.CoProcessors.getLocal() + ": N/A"; dsp = this.ccc.getCpuAvailableBytes() > 0 ? ( GuiText.Bytes.getLocal() + ": " + this.ccc.getCpuAvailableBytes() + " : " + GuiText.CoProcessors.getLocal() + ": " + this.ccc.getCpuCoProcessors() ) : GuiText.Bytes.getLocal() + ": N/A : " + GuiText.CoProcessors.getLocal() + ": N/A";
} }
final int offset = ( 219 - this.fontRendererObj.getStringWidth( dsp ) ) / 2; final int offset = ( 219 - this.fontRendererObj.getStringWidth( dsp ) ) / 2;
@@ -229,7 +231,7 @@ public class GuiCraftConfirm extends AEBaseGui
int y = 0; int y = 0;
final int xo = 9; final int xo = 9;
final int yo = 22; final int yo = 22;
final int viewStart = this.myScrollBar.getCurrentScroll() * 3; final int viewStart = this.getScrollBar().getCurrentScroll() * 3;
final int viewEnd = viewStart + 3 * this.rows; final int viewEnd = viewStart + 3 * this.rows;
String dspToolTip = ""; String dspToolTip = "";
@@ -399,8 +401,8 @@ public class GuiCraftConfirm extends AEBaseGui
{ {
final int size = this.visual.size(); final int size = this.visual.size();
this.myScrollBar.setTop( 19 ).setLeft( 218 ).setHeight( 114 ); this.getScrollBar().setTop( 19 ).setLeft( 218 ).setHeight( 114 );
this.myScrollBar.setRange( 0, ( size + 2 ) / 3 - this.rows, 1 ); this.getScrollBar().setRange( 0, ( size + 2 ) / 3 - this.rows, 1 );
} }
public void postUpdate( final List<IAEItemStack> list, final byte ref ) public void postUpdate( final List<IAEItemStack> list, final byte ref )
@@ -103,7 +103,9 @@ public class GuiCraftingCPU extends AEBaseGui implements ISortSource
this.craftingCpu = container; this.craftingCpu = container;
this.ySize = GUI_HEIGHT; this.ySize = GUI_HEIGHT;
this.xSize = GUI_WIDTH; this.xSize = GUI_WIDTH;
this.myScrollBar = new GuiScrollbar();
final GuiScrollbar scrollbar = new GuiScrollbar();
this.setScrollBar( scrollbar );
} }
public void clearItems() public void clearItems()
@@ -145,8 +147,8 @@ public class GuiCraftingCPU extends AEBaseGui implements ISortSource
{ {
final int size = this.visual.size(); final int size = this.visual.size();
this.myScrollBar.setTop( SCROLLBAR_TOP ).setLeft( SCROLLBAR_LEFT ).setHeight( SCROLLBAR_HEIGHT ); this.getScrollBar().setTop( SCROLLBAR_TOP ).setLeft( SCROLLBAR_LEFT ).setHeight( SCROLLBAR_HEIGHT );
this.myScrollBar.setRange( 0, ( size + 2 ) / 3 - DISPLAYED_ROWS, 1 ); this.getScrollBar().setRange( 0, ( size + 2 ) / 3 - DISPLAYED_ROWS, 1 );
} }
@Override @Override
@@ -193,9 +195,9 @@ public class GuiCraftingCPU extends AEBaseGui implements ISortSource
{ {
String title = this.getGuiDisplayName( GuiText.CraftingStatus.getLocal() ); String title = this.getGuiDisplayName( GuiText.CraftingStatus.getLocal() );
if( this.craftingCpu.eta > 0 && !this.visual.isEmpty() ) if( this.craftingCpu.getEstimatedTime() > 0 && !this.visual.isEmpty() )
{ {
final long etaInMilliseconds = TimeUnit.MILLISECONDS.convert( this.craftingCpu.eta, TimeUnit.NANOSECONDS ); final long etaInMilliseconds = TimeUnit.MILLISECONDS.convert( this.craftingCpu.getEstimatedTime(), TimeUnit.NANOSECONDS );
final String etaTimeText = DurationFormatUtils.formatDuration( etaInMilliseconds, GuiText.ETAFormat.getLocal() ); final String etaTimeText = DurationFormatUtils.formatDuration( etaInMilliseconds, GuiText.ETAFormat.getLocal() );
title += " - " + etaTimeText; title += " - " + etaTimeText;
} }
@@ -204,7 +206,7 @@ public class GuiCraftingCPU extends AEBaseGui implements ISortSource
int x = 0; int x = 0;
int y = 0; int y = 0;
final int viewStart = this.myScrollBar.getCurrentScroll() * 3; final int viewStart = this.getScrollBar().getCurrentScroll() * 3;
final int viewEnd = viewStart + 3 * 6; final int viewEnd = viewStart + 3 * 6;
String dspToolTip = ""; String dspToolTip = "";
@@ -52,12 +52,12 @@ import appeng.parts.reporting.PartTerminal;
public class GuiCraftingStatus extends GuiCraftingCPU public class GuiCraftingStatus extends GuiCraftingCPU
{ {
final ContainerCraftingStatus status; private final ContainerCraftingStatus status;
GuiButton selectCPU; private GuiButton selectCPU;
GuiTabButton originalGuiBtn; private GuiTabButton originalGuiBtn;
GuiBridge originalGui; private GuiBridge originalGui;
ItemStack myIcon = null; private ItemStack myIcon = null;
public GuiCraftingStatus( final InventoryPlayer inventoryPlayer, final ITerminalHost te ) public GuiCraftingStatus( final InventoryPlayer inventoryPlayer, final ITerminalHost te )
{ {
@@ -143,7 +143,7 @@ public class GuiCraftingStatus extends GuiCraftingCPU
if( this.myIcon != null ) if( this.myIcon != null )
{ {
this.buttonList.add( this.originalGuiBtn = new GuiTabButton( this.guiLeft + 213, this.guiTop - 4, this.myIcon, this.myIcon.getDisplayName(), this.itemRender ) ); this.buttonList.add( this.originalGuiBtn = new GuiTabButton( this.guiLeft + 213, this.guiTop - 4, this.myIcon, this.myIcon.getDisplayName(), this.itemRender ) );
this.originalGuiBtn.hideEdge = 13; this.originalGuiBtn.setHideEdge( 13 );
} }
} }
@@ -38,12 +38,12 @@ import appeng.helpers.InventoryAction;
public class GuiCraftingTerm extends GuiMEMonitorable public class GuiCraftingTerm extends GuiMEMonitorable
{ {
GuiImgButton clearBtn; private GuiImgButton clearBtn;
public GuiCraftingTerm( final InventoryPlayer inventoryPlayer, final ITerminalHost te ) public GuiCraftingTerm( final InventoryPlayer inventoryPlayer, final ITerminalHost te )
{ {
super( inventoryPlayer, te, new ContainerCraftingTerm( inventoryPlayer, te ) ); super( inventoryPlayer, te, new ContainerCraftingTerm( inventoryPlayer, te ) );
this.reservedSpace = 73; this.setReservedSpace( 73 );
} }
@Override @Override
@@ -76,14 +76,14 @@ public class GuiCraftingTerm extends GuiMEMonitorable
{ {
super.initGui(); super.initGui();
this.buttonList.add( this.clearBtn = new GuiImgButton( this.guiLeft + 92, this.guiTop + this.ySize - 156, Settings.ACTIONS, ActionItems.STASH ) ); this.buttonList.add( this.clearBtn = new GuiImgButton( this.guiLeft + 92, this.guiTop + this.ySize - 156, Settings.ACTIONS, ActionItems.STASH ) );
this.clearBtn.halfSize = true; this.clearBtn.setHalfSize( true );
} }
@Override @Override
public void drawFG( final int offsetX, final int offsetY, final int mouseX, final int mouseY ) public void drawFG( final int offsetX, final int offsetY, final int mouseX, final int mouseY )
{ {
super.drawFG( offsetX, offsetY, mouseX, mouseY ); super.drawFG( offsetX, offsetY, mouseX, mouseY );
this.fontRendererObj.drawString( GuiText.CraftingTerminal.getLocal(), 8, this.ySize - 96 + 1 - this.reservedSpace, 4210752 ); this.fontRendererObj.drawString( GuiText.CraftingTerminal.getLocal(), 8, this.ySize - 96 + 1 - this.getReservedSpace(), 4210752 );
} }
@Override @Override
@@ -36,7 +36,7 @@ import appeng.tile.storage.TileDrive;
public class GuiDrive extends AEBaseGui public class GuiDrive extends AEBaseGui
{ {
GuiTabButton priority; private GuiTabButton priority;
public GuiDrive( final InventoryPlayer inventoryPlayer, final TileDrive te ) public GuiDrive( final InventoryPlayer inventoryPlayer, final TileDrive te )
{ {
@@ -43,8 +43,8 @@ import appeng.parts.automation.PartFormationPlane;
public class GuiFormationPlane extends GuiUpgradeable public class GuiFormationPlane extends GuiUpgradeable
{ {
GuiTabButton priority; private GuiTabButton priority;
GuiImgButton placeMode; private GuiImgButton placeMode;
public GuiFormationPlane( final InventoryPlayer inventoryPlayer, final PartFormationPlane te ) public GuiFormationPlane( final InventoryPlayer inventoryPlayer, final PartFormationPlane te )
{ {
@@ -72,12 +72,12 @@ public class GuiFormationPlane extends GuiUpgradeable
if( this.fuzzyMode != null ) if( this.fuzzyMode != null )
{ {
this.fuzzyMode.set( this.cvb.fzMode ); this.fuzzyMode.set( this.cvb.getFuzzyMode() );
} }
if( this.placeMode != null ) if( this.placeMode != null )
{ {
this.placeMode.set( ( (ContainerFormationPlane) this.cvb ).placeMode ); this.placeMode.set( ( (ContainerFormationPlane) this.cvb ).getPlaceMode() );
} }
} }
@@ -44,8 +44,8 @@ import appeng.tile.storage.TileIOPort;
public class GuiIOPort extends GuiUpgradeable public class GuiIOPort extends GuiUpgradeable
{ {
GuiImgButton fullMode; private GuiImgButton fullMode;
GuiImgButton operationMode; private GuiImgButton operationMode;
public GuiIOPort( final InventoryPlayer inventoryPlayer, final TileIOPort te ) public GuiIOPort( final InventoryPlayer inventoryPlayer, final TileIOPort te )
{ {
@@ -73,17 +73,17 @@ public class GuiIOPort extends GuiUpgradeable
if( this.redstoneMode != null ) if( this.redstoneMode != null )
{ {
this.redstoneMode.set( this.cvb.rsMode ); this.redstoneMode.set( this.cvb.getRedStoneMode() );
} }
if( this.operationMode != null ) if( this.operationMode != null )
{ {
this.operationMode.set( ( (ContainerIOPort) this.cvb ).opMode ); this.operationMode.set( ( (ContainerIOPort) this.cvb ).getOperationMode() );
} }
if( this.fullMode != null ) if( this.fullMode != null )
{ {
this.fullMode.set( ( (ContainerIOPort) this.cvb ).fMode ); this.fullMode.set( ( (ContainerIOPort) this.cvb ).getFullMode() );
} }
} }
@@ -32,8 +32,8 @@ import appeng.tile.misc.TileInscriber;
public class GuiInscriber extends AEBaseGui public class GuiInscriber extends AEBaseGui
{ {
final ContainerInscriber cvc; private final ContainerInscriber cvc;
GuiProgressBar pb; private GuiProgressBar pb;
public GuiInscriber( final InventoryPlayer inventoryPlayer, final TileInscriber te ) public GuiInscriber( final InventoryPlayer inventoryPlayer, final TileInscriber te )
{ {
@@ -43,7 +43,7 @@ public class GuiInscriber extends AEBaseGui
this.xSize = this.hasToolbox() ? 246 : 211; this.xSize = this.hasToolbox() ? 246 : 211;
} }
protected boolean hasToolbox() private boolean hasToolbox()
{ {
return ( (ContainerUpgradeable) this.inventorySlots ).hasToolbox(); return ( (ContainerUpgradeable) this.inventorySlots ).hasToolbox();
} }
@@ -85,7 +85,7 @@ public class GuiInscriber extends AEBaseGui
} }
} }
protected boolean drawUpgrades() private boolean drawUpgrades()
{ {
return true; return true;
} }
@@ -43,9 +43,9 @@ import appeng.helpers.IInterfaceHost;
public class GuiInterface extends GuiUpgradeable public class GuiInterface extends GuiUpgradeable
{ {
GuiTabButton priority; private GuiTabButton priority;
GuiImgButton BlockMode; private GuiImgButton BlockMode;
GuiToggleButton interfaceMode; private GuiToggleButton interfaceMode;
public GuiInterface( final InventoryPlayer inventoryPlayer, final IInterfaceHost te ) public GuiInterface( final InventoryPlayer inventoryPlayer, final IInterfaceHost te )
{ {
@@ -71,12 +71,12 @@ public class GuiInterface extends GuiUpgradeable
{ {
if( this.BlockMode != null ) if( this.BlockMode != null )
{ {
this.BlockMode.set( ( (ContainerInterface) this.cvb ).bMode ); this.BlockMode.set( ( (ContainerInterface) this.cvb ).getBlockingMode() );
} }
if( this.interfaceMode != null ) if( this.interfaceMode != null )
{ {
this.interfaceMode.setState( ( (ContainerInterface) this.cvb ).iTermMode == YesNo.YES ); this.interfaceMode.setState( ( (ContainerInterface) this.cvb ).getInterfaceTerminalMode() == YesNo.YES );
} }
this.fontRendererObj.drawString( this.getGuiDisplayName( GuiText.Interface.getLocal() ), 8, 6, 4210752 ); this.fontRendererObj.drawString( this.getGuiDisplayName( GuiText.Interface.getLocal() ), 8, 6, 4210752 );
@@ -56,7 +56,7 @@ public class GuiInterfaceTerminal extends AEBaseGui
private static final int LINES_ON_PAGE = 6; private static final int LINES_ON_PAGE = 6;
// TODO: copied from GuiMEMonitorable. It looks not changed, maybe unneeded? // TODO: copied from GuiMEMonitorable. It looks not changed, maybe unneeded?
final int offsetX = 9; private final int offsetX = 9;
private final HashMap<Long, ClientDCInternalInv> byId = new HashMap<Long, ClientDCInternalInv>(); private final HashMap<Long, ClientDCInternalInv> byId = new HashMap<Long, ClientDCInternalInv>();
private final HashMultimap<String, ClientDCInternalInv> byName = HashMultimap.create(); private final HashMultimap<String, ClientDCInternalInv> byName = HashMultimap.create();
@@ -71,7 +71,9 @@ public class GuiInterfaceTerminal extends AEBaseGui
public GuiInterfaceTerminal( final InventoryPlayer inventoryPlayer, final PartInterfaceTerminal te ) public GuiInterfaceTerminal( final InventoryPlayer inventoryPlayer, final PartInterfaceTerminal te )
{ {
super( new ContainerInterfaceTerminal( inventoryPlayer, te ) ); super( new ContainerInterfaceTerminal( inventoryPlayer, te ) );
this.myScrollBar = new GuiScrollbar();
final GuiScrollbar scrollbar = new GuiScrollbar();
this.setScrollBar( scrollbar );
this.xSize = 195; this.xSize = 195;
this.ySize = 222; this.ySize = 222;
} }
@@ -81,9 +83,9 @@ public class GuiInterfaceTerminal extends AEBaseGui
{ {
super.initGui(); super.initGui();
this.myScrollBar.setLeft( 175 ); this.getScrollBar().setLeft( 175 );
this.myScrollBar.setHeight( 106 ); this.getScrollBar().setHeight( 106 );
this.myScrollBar.setTop( 18 ); this.getScrollBar().setTop( 18 );
this.searchField = new MEGuiTextField( this.fontRendererObj, this.guiLeft + Math.max( 104, this.offsetX ), this.guiTop + 4, 65, 12 ); this.searchField = new MEGuiTextField( this.fontRendererObj, this.guiLeft + Math.max( 104, this.offsetX ), this.guiTop + 4, 65, 12 );
this.searchField.setEnableBackgroundDrawing( false ); this.searchField.setEnableBackgroundDrawing( false );
@@ -99,7 +101,7 @@ public class GuiInterfaceTerminal extends AEBaseGui
this.fontRendererObj.drawString( this.getGuiDisplayName( GuiText.InterfaceTerminal.getLocal() ), 8, 6, 4210752 ); this.fontRendererObj.drawString( this.getGuiDisplayName( GuiText.InterfaceTerminal.getLocal() ), 8, 6, 4210752 );
this.fontRendererObj.drawString( GuiText.inventory.getLocal(), 8, this.ySize - 96 + 3, 4210752 ); this.fontRendererObj.drawString( GuiText.inventory.getLocal(), 8, this.ySize - 96 + 3, 4210752 );
final int ex = this.myScrollBar.getCurrentScroll(); final int ex = this.getScrollBar().getCurrentScroll();
final Iterator<Object> o = this.inventorySlots.inventorySlots.iterator(); final Iterator<Object> o = this.inventorySlots.inventorySlots.iterator();
while( o.hasNext() ) while( o.hasNext() )
@@ -117,7 +119,7 @@ public class GuiInterfaceTerminal extends AEBaseGui
if( lineObj instanceof ClientDCInternalInv ) if( lineObj instanceof ClientDCInternalInv )
{ {
final ClientDCInternalInv inv = (ClientDCInternalInv) lineObj; final ClientDCInternalInv inv = (ClientDCInternalInv) lineObj;
for( int z = 0; z < inv.inv.getSizeInventory(); z++ ) for( int z = 0; z < inv.getInventory().getSizeInventory(); z++ )
{ {
this.inventorySlots.inventorySlots.add( new SlotDisconnected( inv, z, z * 18 + 8, 1 + offset ) ); this.inventorySlots.inventorySlots.add( new SlotDisconnected( inv, z, z * 18 + 8, 1 + offset ) );
} }
@@ -163,7 +165,7 @@ public class GuiInterfaceTerminal extends AEBaseGui
this.drawTexturedModalRect( offsetX, offsetY, 0, 0, this.xSize, this.ySize ); this.drawTexturedModalRect( offsetX, offsetY, 0, 0, this.xSize, this.ySize );
int offset = 17; int offset = 17;
final int ex = this.myScrollBar.getCurrentScroll(); final int ex = this.getScrollBar().getCurrentScroll();
for( int x = 0; x < LINES_ON_PAGE && ex + x < this.lines.size(); x++ ) for( int x = 0; x < LINES_ON_PAGE && ex + x < this.lines.size(); x++ )
{ {
@@ -173,7 +175,7 @@ public class GuiInterfaceTerminal extends AEBaseGui
final ClientDCInternalInv inv = (ClientDCInternalInv) lineObj; final ClientDCInternalInv inv = (ClientDCInternalInv) lineObj;
GL11.glColor4f( 1, 1, 1, 1 ); GL11.glColor4f( 1, 1, 1, 1 );
final int width = inv.inv.getSizeInventory() * 18; final int width = inv.getInventory().getSizeInventory() * 18;
this.drawTexturedModalRect( offsetX + 7, offsetY + offset, 7, 139, width, 18 ); this.drawTexturedModalRect( offsetX + 7, offsetY + offset, 7, 139, width, 18 );
} }
offset += 18; offset += 18;
@@ -225,12 +227,12 @@ public class GuiInterfaceTerminal extends AEBaseGui
final NBTTagCompound invData = in.getCompoundTag( key ); final NBTTagCompound invData = in.getCompoundTag( key );
final ClientDCInternalInv current = this.getById( id, invData.getLong( "sortBy" ), invData.getString( "un" ) ); final ClientDCInternalInv current = this.getById( id, invData.getLong( "sortBy" ), invData.getString( "un" ) );
for( int x = 0; x < current.inv.getSizeInventory(); x++ ) for( int x = 0; x < current.getInventory().getSizeInventory(); x++ )
{ {
final String which = Integer.toString( x ); final String which = Integer.toString( x );
if( invData.hasKey( which ) ) if( invData.hasKey( which ) )
{ {
current.inv.setInventorySlotContents( x, ItemStack.loadItemStackFromNBT( invData.getCompoundTag( which ) ) ); current.getInventory().setInventorySlotContents( x, ItemStack.loadItemStackFromNBT( invData.getCompoundTag( which ) ) );
} }
} }
} }
@@ -277,7 +279,7 @@ public class GuiInterfaceTerminal extends AEBaseGui
// Search if the current inventory holds a pattern containing the search term. // Search if the current inventory holds a pattern containing the search term.
if( !found && !searchFilterLowerCase.isEmpty() ) if( !found && !searchFilterLowerCase.isEmpty() )
{ {
for( final ItemStack itemStack : entry.inv ) for( final ItemStack itemStack : entry.getInventory() )
{ {
found = this.itemStackMatchesSearchTerm( itemStack, searchFilterLowerCase ); found = this.itemStackMatchesSearchTerm( itemStack, searchFilterLowerCase );
if( found ) if( found )
@@ -318,7 +320,7 @@ public class GuiInterfaceTerminal extends AEBaseGui
this.lines.addAll( clientInventories ); this.lines.addAll( clientInventories );
} }
this.myScrollBar.setRange( 0, this.lines.size() - LINES_ON_PAGE, 2 ); this.getScrollBar().setRange( 0, this.lines.size() - LINES_ON_PAGE, 2 );
} }
private boolean itemStackMatchesSearchTerm( final ItemStack itemStack, final String searchTerm ) private boolean itemStackMatchesSearchTerm( final ItemStack itemStack, final String searchTerm )
@@ -47,19 +47,19 @@ import appeng.parts.automation.PartLevelEmitter;
public class GuiLevelEmitter extends GuiUpgradeable public class GuiLevelEmitter extends GuiUpgradeable
{ {
GuiNumberBox level; private GuiNumberBox level;
GuiButton plus1; private GuiButton plus1;
GuiButton plus10; private GuiButton plus10;
GuiButton plus100; private GuiButton plus100;
GuiButton plus1000; private GuiButton plus1000;
GuiButton minus1; private GuiButton minus1;
GuiButton minus10; private GuiButton minus10;
GuiButton minus100; private GuiButton minus100;
GuiButton minus1000; private GuiButton minus1000;
GuiImgButton levelMode; private GuiImgButton levelMode;
GuiImgButton craftingMode; private GuiImgButton craftingMode;
public GuiLevelEmitter( final InventoryPlayer inventoryPlayer, final PartLevelEmitter te ) public GuiLevelEmitter( final InventoryPlayer inventoryPlayer, final PartLevelEmitter te )
{ {
@@ -131,12 +131,12 @@ public class GuiLevelEmitter extends GuiUpgradeable
if( this.craftingMode != null ) if( this.craftingMode != null )
{ {
this.craftingMode.set( ( (ContainerLevelEmitter) this.cvb ).cmType ); this.craftingMode.set( ( (ContainerLevelEmitter) this.cvb ).getCraftingMode() );
} }
if( this.levelMode != null ) if( this.levelMode != null )
{ {
this.levelMode.set( ( (ContainerLevelEmitter) this.cvb ).lvType ); this.levelMode.set( ( (ContainerLevelEmitter) this.cvb ).getLevelMode() );
} }
} }
@@ -33,8 +33,8 @@ import appeng.tile.crafting.TileMolecularAssembler;
public class GuiMAC extends GuiUpgradeable public class GuiMAC extends GuiUpgradeable
{ {
final ContainerMAC container; private final ContainerMAC container;
GuiProgressBar pb; private GuiProgressBar pb;
public GuiMAC( final InventoryPlayer inventoryPlayer, final TileMolecularAssembler te ) public GuiMAC( final InventoryPlayer inventoryPlayer, final TileMolecularAssembler te )
{ {
@@ -71,30 +71,31 @@ import appeng.util.Platform;
public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfigManagerHost public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfigManagerHost
{ {
public static int CraftingGridOffsetX; private static int craftingGridOffsetX;
public static int CraftingGridOffsetY; private static int craftingGridOffsetY;
private static String memoryText = ""; private static String memoryText = "";
final ItemRepo repo; private final ItemRepo repo;
final int offsetX = 9; private final int offsetX = 9;
final int lowerTextureOffset = 0; private final int lowerTextureOffset = 0;
final IConfigManager configSrc; private final IConfigManager configSrc;
final boolean viewCell; private final boolean viewCell;
final ItemStack[] myCurrentViewCells = new ItemStack[5]; private final ItemStack[] myCurrentViewCells = new ItemStack[5];
final ContainerMEMonitorable monitorableContainer; private final ContainerMEMonitorable monitorableContainer;
GuiTabButton craftingStatusBtn; private GuiTabButton craftingStatusBtn;
MEGuiTextField searchField; private MEGuiTextField searchField;
GuiText myName; private GuiText myName;
int perRow = 9; private int perRow = 9;
int reservedSpace = 0; private int reservedSpace = 0;
boolean customSortOrder = true; private boolean customSortOrder = true;
int rows = 0; private int rows = 0;
int maxRows = Integer.MAX_VALUE; private int maxRows = Integer.MAX_VALUE;
int standardSize; private int standardSize;
GuiImgButton ViewBox; private GuiImgButton ViewBox;
GuiImgButton SortByBox; private GuiImgButton SortByBox;
GuiImgButton SortDirBox; private GuiImgButton SortDirBox;
GuiImgButton searchBoxSettings; private GuiImgButton searchBoxSettings;
GuiImgButton terminalStyleBox; private GuiImgButton terminalStyleBox;
public GuiMEMonitorable( final InventoryPlayer inventoryPlayer, final ITerminalHost te ) public GuiMEMonitorable( final InventoryPlayer inventoryPlayer, final ITerminalHost te )
{ {
@@ -105,8 +106,10 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
{ {
super( c ); super( c );
this.myScrollBar = new GuiScrollbar();
this.repo = new ItemRepo( this.myScrollBar, this ); final GuiScrollbar scrollbar = new GuiScrollbar();
this.setScrollBar( scrollbar );
this.repo = new ItemRepo( scrollbar, this );
this.xSize = 185; this.xSize = 185;
this.ySize = 204; this.ySize = 204;
@@ -119,7 +122,7 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
this.standardSize = this.xSize; this.standardSize = this.xSize;
this.configSrc = ( (IConfigurableObject) this.inventorySlots ).getConfigManager(); this.configSrc = ( (IConfigurableObject) this.inventorySlots ).getConfigManager();
( this.monitorableContainer = (ContainerMEMonitorable) this.inventorySlots ).gui = this; ( this.monitorableContainer = (ContainerMEMonitorable) this.inventorySlots ).setGui( this );
this.viewCell = te instanceof IViewCellStorage; this.viewCell = te instanceof IViewCellStorage;
@@ -158,8 +161,8 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
private void setScrollBar() private void setScrollBar()
{ {
this.myScrollBar.setTop( 18 ).setLeft( 175 ).setHeight( this.rows * 18 - 2 ); this.getScrollBar().setTop( 18 ).setLeft( 175 ).setHeight( this.rows * 18 - 2 );
this.myScrollBar.setRange( 0, ( this.repo.size() + this.perRow - 1 ) / this.perRow - this.rows, Math.max( 1, this.rows / 6 ) ); this.getScrollBar().setRange( 0, ( this.repo.size() + this.perRow - 1 ) / this.perRow - this.rows, Math.max( 1, this.rows / 6 ) );
} }
@Override @Override
@@ -204,13 +207,13 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
if( next.getClass() == SearchBoxMode.class || next.getClass() == TerminalStyle.class ) if( next.getClass() == SearchBoxMode.class || next.getClass() == TerminalStyle.class )
{ {
this.re_init(); this.reinitalize();
} }
} }
} }
} }
public void re_init() private void reinitalize()
{ {
this.buttonList.clear(); this.buttonList.clear();
this.initGui(); this.initGui();
@@ -249,12 +252,12 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
this.rows = 3; this.rows = 3;
} }
this.meSlots.clear(); this.getMeSlots().clear();
for( int y = 0; y < this.rows; y++ ) for( int y = 0; y < this.rows; y++ )
{ {
for( int x = 0; x < this.perRow; x++ ) for( int x = 0; x < this.perRow; x++ )
{ {
this.meSlots.add( new InternalSlotME( this.repo, x + y * this.perRow, this.offsetX + x * 18, 18 + y * 18 ) ); this.getMeSlots().add( new InternalSlotME( this.repo, x + y * this.perRow, this.offsetX + x * 18, 18 + y * 18 ) );
} }
} }
@@ -311,7 +314,7 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
if( this.viewCell || this instanceof GuiWirelessTerm ) if( this.viewCell || this instanceof GuiWirelessTerm )
{ {
this.buttonList.add( this.craftingStatusBtn = new GuiTabButton( this.guiLeft + 170, this.guiTop - 4, 2 + 11 * 16, GuiText.CraftingStatus.getLocal(), this.itemRender ) ); this.buttonList.add( this.craftingStatusBtn = new GuiTabButton( this.guiLeft + 170, this.guiTop - 4, 2 + 11 * 16, GuiText.CraftingStatus.getLocal(), this.itemRender ) );
this.craftingStatusBtn.hideEdge = 13; this.craftingStatusBtn.setHideEdge( 13 );
} }
// Enum setting = AEConfig.INSTANCE.getSetting( "Terminal", SearchBoxMode.class, SearchBoxMode.AUTOSEARCH ); // Enum setting = AEConfig.INSTANCE.getSetting( "Terminal", SearchBoxMode.class, SearchBoxMode.AUTOSEARCH );
@@ -321,13 +324,13 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
if( this.isSubGui() ) if( this.isSubGui() )
{ {
this.searchField.setText( memoryText ); this.searchField.setText( memoryText );
this.repo.searchString = memoryText; this.repo.setSearchString( memoryText );
this.repo.updateView(); this.repo.updateView();
this.setScrollBar(); this.setScrollBar();
} }
CraftingGridOffsetX = Integer.MAX_VALUE; craftingGridOffsetX = Integer.MAX_VALUE;
CraftingGridOffsetY = Integer.MAX_VALUE; craftingGridOffsetY = Integer.MAX_VALUE;
for( final Object s : this.inventorySlots.inventorySlots ) for( final Object s : this.inventorySlots.inventorySlots )
{ {
@@ -344,14 +347,14 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
final Slot g = (Slot) s; final Slot g = (Slot) s;
if( g.xDisplayPosition > 0 && g.yDisplayPosition > 0 ) if( g.xDisplayPosition > 0 && g.yDisplayPosition > 0 )
{ {
CraftingGridOffsetX = Math.min( CraftingGridOffsetX, g.xDisplayPosition ); craftingGridOffsetX = Math.min( craftingGridOffsetX, g.xDisplayPosition );
CraftingGridOffsetY = Math.min( CraftingGridOffsetY, g.yDisplayPosition ); craftingGridOffsetY = Math.min( craftingGridOffsetY, g.yDisplayPosition );
} }
} }
} }
CraftingGridOffsetX -= 25; craftingGridOffsetX -= 25;
CraftingGridOffsetY -= 6; craftingGridOffsetY -= 6;
} }
@Override @Override
@@ -374,7 +377,7 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
if( btn == 1 && this.searchField.isMouseIn( xCoord, yCoord ) ) if( btn == 1 && this.searchField.isMouseIn( xCoord, yCoord ) )
{ {
this.searchField.setText( "" ); this.searchField.setText( "" );
this.repo.searchString = ""; this.repo.setSearchString( "" );
this.repo.updateView(); this.repo.updateView();
this.setScrollBar(); this.setScrollBar();
} }
@@ -416,10 +419,10 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
for( int i = 0; i < 5; i++ ) for( int i = 0; i < 5; i++ )
{ {
if( this.myCurrentViewCells[i] != this.monitorableContainer.cellView[i].getStack() ) if( this.myCurrentViewCells[i] != this.monitorableContainer.getCellViewSlot( i ).getStack() )
{ {
update = true; update = true;
this.myCurrentViewCells[i] = this.monitorableContainer.cellView[i].getStack(); this.myCurrentViewCells[i] = this.monitorableContainer.getCellViewSlot( i ).getStack();
} }
} }
@@ -453,7 +456,7 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
protected void repositionSlot( final AppEngSlot s ) protected void repositionSlot( final AppEngSlot s )
{ {
s.yDisplayPosition = s.defY + this.ySize - 78 - 5; s.yDisplayPosition = s.getY() + this.ySize - 78 - 5;
} }
@Override @Override
@@ -468,7 +471,7 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
if( this.searchField.textboxKeyTyped( character, key ) ) if( this.searchField.textboxKeyTyped( character, key ) )
{ {
this.repo.searchString = this.searchField.getText(); this.repo.setSearchString( this.searchField.getText() );
this.repo.updateView(); this.repo.updateView();
this.setScrollBar(); this.setScrollBar();
} }
@@ -482,7 +485,7 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
@Override @Override
public void updateScreen() public void updateScreen()
{ {
this.repo.setPower( this.monitorableContainer.hasPower ); this.repo.setPower( this.monitorableContainer.isPowered() );
super.updateScreen(); super.updateScreen();
} }
@@ -524,4 +527,34 @@ public class GuiMEMonitorable extends AEBaseMEGui implements ISortSource, IConfi
this.repo.updateView(); this.repo.updateView();
} }
int getReservedSpace()
{
return this.reservedSpace;
}
void setReservedSpace( final int reservedSpace )
{
this.reservedSpace = reservedSpace;
}
public boolean isCustomSortOrder()
{
return this.customSortOrder;
}
void setCustomSortOrder( final boolean customSortOrder )
{
this.customSortOrder = customSortOrder;
}
public int getStandardSize()
{
return this.standardSize;
}
void setStandardSize( final int standardSize )
{
this.standardSize = standardSize;
}
} }
@@ -51,19 +51,21 @@ import appeng.util.Platform;
public class GuiNetworkStatus extends AEBaseGui implements ISortSource public class GuiNetworkStatus extends AEBaseGui implements ISortSource
{ {
final ItemRepo repo; private final ItemRepo repo;
final int rows = 4; private final int rows = 4;
GuiImgButton units; private GuiImgButton units;
int tooltip = -1; private int tooltip = -1;
public GuiNetworkStatus( final InventoryPlayer inventoryPlayer, final INetworkTool te ) public GuiNetworkStatus( final InventoryPlayer inventoryPlayer, final INetworkTool te )
{ {
super( new ContainerNetworkStatus( inventoryPlayer, te ) ); super( new ContainerNetworkStatus( inventoryPlayer, te ) );
final GuiScrollbar scrollbar = new GuiScrollbar();
this.setScrollBar( scrollbar );
this.repo = new ItemRepo( scrollbar, this );
this.ySize = 153; this.ySize = 153;
this.xSize = 195; this.xSize = 195;
this.myScrollBar = new GuiScrollbar(); this.repo.setRowSize( 5 );
this.repo = new ItemRepo( this.myScrollBar, this );
this.repo.rowSize = 5;
} }
@Override @Override
@@ -133,11 +135,11 @@ public class GuiNetworkStatus extends AEBaseGui implements ISortSource
this.fontRendererObj.drawString( GuiText.NetworkDetails.getLocal(), 8, 6, 4210752 ); this.fontRendererObj.drawString( GuiText.NetworkDetails.getLocal(), 8, 6, 4210752 );
this.fontRendererObj.drawString( GuiText.StoredPower.getLocal() + ": " + Platform.formatPowerLong( ns.currentPower, false ), 13, 16, 4210752 ); this.fontRendererObj.drawString( GuiText.StoredPower.getLocal() + ": " + Platform.formatPowerLong( ns.getCurrentPower(), false ), 13, 16, 4210752 );
this.fontRendererObj.drawString( GuiText.MaxPower.getLocal() + ": " + Platform.formatPowerLong( ns.maxPower, false ), 13, 26, 4210752 ); this.fontRendererObj.drawString( GuiText.MaxPower.getLocal() + ": " + Platform.formatPowerLong( ns.getMaxPower(), false ), 13, 26, 4210752 );
this.fontRendererObj.drawString( GuiText.PowerInputRate.getLocal() + ": " + Platform.formatPowerLong( ns.avgAddition, true ), 13, 143 - 10, 4210752 ); this.fontRendererObj.drawString( GuiText.PowerInputRate.getLocal() + ": " + Platform.formatPowerLong( ns.getAverageAddition(), true ), 13, 143 - 10, 4210752 );
this.fontRendererObj.drawString( GuiText.PowerUsageRate.getLocal() + ": " + Platform.formatPowerLong( ns.powerUsage, true ), 13, 143 - 20, 4210752 ); this.fontRendererObj.drawString( GuiText.PowerUsageRate.getLocal() + ": " + Platform.formatPowerLong( ns.getPowerUsage(), true ), 13, 143 - 20, 4210752 );
final int sectionLength = 30; final int sectionLength = 30;
@@ -230,8 +232,8 @@ public class GuiNetworkStatus extends AEBaseGui implements ISortSource
private void setScrollBar() private void setScrollBar()
{ {
final int size = this.repo.size(); final int size = this.repo.size();
this.myScrollBar.setTop( 39 ).setLeft( 175 ).setHeight( 78 ); this.getScrollBar().setTop( 39 ).setLeft( 175 ).setHeight( 78 );
this.myScrollBar.setRange( 0, ( size + 4 ) / 5 - this.rows, 1 ); this.getScrollBar().setRange( 0, ( size + 4 ) / 5 - this.rows, 1 );
} }
// @Override - NEI // @Override - NEI
@@ -36,7 +36,7 @@ import appeng.core.sync.packets.PacketValueConfig;
public class GuiNetworkTool extends AEBaseGui public class GuiNetworkTool extends AEBaseGui
{ {
GuiToggleButton tFacades; private GuiToggleButton tFacades;
public GuiNetworkTool( final InventoryPlayer inventoryPlayer, final INetworkTool te ) public GuiNetworkTool( final InventoryPlayer inventoryPlayer, final INetworkTool te )
{ {
@@ -77,7 +77,7 @@ public class GuiNetworkTool extends AEBaseGui
{ {
if( this.tFacades != null ) if( this.tFacades != null )
{ {
this.tFacades.setState( ( (ContainerNetworkTool) this.inventorySlots ).facadeMode ); this.tFacades.setState( ( (ContainerNetworkTool) this.inventorySlots ).isFacadeMode() );
} }
this.fontRendererObj.drawString( this.getGuiDisplayName( GuiText.NetworkTool.getLocal() ), 8, 6, 4210752 ); this.fontRendererObj.drawString( this.getGuiDisplayName( GuiText.NetworkTool.getLocal() ), 8, 6, 4210752 );
@@ -60,7 +60,7 @@ public class GuiPatternTerm extends GuiMEMonitorable
{ {
super( inventoryPlayer, te, new ContainerPatternTerm( inventoryPlayer, te ) ); super( inventoryPlayer, te, new ContainerPatternTerm( inventoryPlayer, te ) );
this.container = (ContainerPatternTerm) this.inventorySlots; this.container = (ContainerPatternTerm) this.inventorySlots;
this.reservedSpace = 81; this.setReservedSpace( 81 );
} }
@Override @Override
@@ -110,15 +110,15 @@ public class GuiPatternTerm extends GuiMEMonitorable
this.buttonList.add( this.tabProcessButton ); this.buttonList.add( this.tabProcessButton );
this.substitutionsEnabledBtn = new GuiImgButton( this.guiLeft + 84, this.guiTop + this.ySize - 163, Settings.ACTIONS, ItemSubstitution.ENABLED ); this.substitutionsEnabledBtn = new GuiImgButton( this.guiLeft + 84, this.guiTop + this.ySize - 163, Settings.ACTIONS, ItemSubstitution.ENABLED );
this.substitutionsEnabledBtn.halfSize = true; this.substitutionsEnabledBtn.setHalfSize( true );
this.buttonList.add( this.substitutionsEnabledBtn ); this.buttonList.add( this.substitutionsEnabledBtn );
this.substitutionsDisabledBtn = new GuiImgButton( this.guiLeft + 84, this.guiTop + this.ySize - 163, Settings.ACTIONS, ItemSubstitution.DISABLED ); this.substitutionsDisabledBtn = new GuiImgButton( this.guiLeft + 84, this.guiTop + this.ySize - 163, Settings.ACTIONS, ItemSubstitution.DISABLED );
this.substitutionsDisabledBtn.halfSize = true; this.substitutionsDisabledBtn.setHalfSize( true );
this.buttonList.add( this.substitutionsDisabledBtn ); this.buttonList.add( this.substitutionsDisabledBtn );
this.clearBtn = new GuiImgButton( this.guiLeft + 74, this.guiTop + this.ySize - 163, Settings.ACTIONS, ActionItems.CLOSE ); this.clearBtn = new GuiImgButton( this.guiLeft + 74, this.guiTop + this.ySize - 163, Settings.ACTIONS, ActionItems.CLOSE );
this.clearBtn.halfSize = true; this.clearBtn.setHalfSize( true );
this.buttonList.add( this.clearBtn ); this.buttonList.add( this.clearBtn );
this.encodeBtn = new GuiImgButton( this.guiLeft + 147, this.guiTop + this.ySize - 142, Settings.ACTIONS, ActionItems.ENCODE ); this.encodeBtn = new GuiImgButton( this.guiLeft + 147, this.guiTop + this.ySize - 142, Settings.ACTIONS, ActionItems.ENCODE );
@@ -128,7 +128,7 @@ public class GuiPatternTerm extends GuiMEMonitorable
@Override @Override
public void drawFG( final int offsetX, final int offsetY, final int mouseX, final int mouseY ) public void drawFG( final int offsetX, final int offsetY, final int mouseX, final int mouseY )
{ {
if( !this.container.craftingMode ) if( !this.container.isCraftingMode() )
{ {
this.tabCraftButton.visible = false; this.tabCraftButton.visible = false;
this.tabProcessButton.visible = true; this.tabProcessButton.visible = true;
@@ -151,13 +151,13 @@ public class GuiPatternTerm extends GuiMEMonitorable
} }
super.drawFG( offsetX, offsetY, mouseX, mouseY ); super.drawFG( offsetX, offsetY, mouseX, mouseY );
this.fontRendererObj.drawString( GuiText.PatternTerminal.getLocal(), 8, this.ySize - 96 + 2 - this.reservedSpace, 4210752 ); this.fontRendererObj.drawString( GuiText.PatternTerminal.getLocal(), 8, this.ySize - 96 + 2 - this.getReservedSpace(), 4210752 );
} }
@Override @Override
protected String getBackground() protected String getBackground()
{ {
if( this.container.craftingMode ) if( this.container.isCraftingMode() )
{ {
return "guis/pattern.png"; return "guis/pattern.png";
} }
@@ -169,11 +169,11 @@ public class GuiPatternTerm extends GuiMEMonitorable
{ {
if( s.isPlayerSide() ) if( s.isPlayerSide() )
{ {
s.yDisplayPosition = s.defY + this.ySize - 78 - 5; s.yDisplayPosition = s.getY() + this.ySize - 78 - 5;
} }
else else
{ {
s.yDisplayPosition = s.defY + this.ySize - 78 - 3; s.yDisplayPosition = s.getY() + this.ySize - 78 - 3;
} }
} }
} }
@@ -52,19 +52,19 @@ import appeng.tile.storage.TileDrive;
public class GuiPriority extends AEBaseGui public class GuiPriority extends AEBaseGui
{ {
GuiNumberBox priority; private GuiNumberBox priority;
GuiTabButton originalGuiBtn; private GuiTabButton originalGuiBtn;
GuiButton plus1; private GuiButton plus1;
GuiButton plus10; private GuiButton plus10;
GuiButton plus100; private GuiButton plus100;
GuiButton plus1000; private GuiButton plus1000;
GuiButton minus1; private GuiButton minus1;
GuiButton minus10; private GuiButton minus10;
GuiButton minus100; private GuiButton minus100;
GuiButton minus1000; private GuiButton minus1000;
GuiBridge OriginalGui; private GuiBridge OriginalGui;
public GuiPriority( final InventoryPlayer inventoryPlayer, final IPriorityHost te ) public GuiPriority( final InventoryPlayer inventoryPlayer, final IPriorityHost te )
{ {
@@ -35,7 +35,7 @@ import appeng.items.contents.QuartzKnifeObj;
public class GuiQuartzKnife extends AEBaseGui public class GuiQuartzKnife extends AEBaseGui
{ {
GuiTextField name; private GuiTextField name;
public GuiQuartzKnife( final InventoryPlayer inventoryPlayer, final QuartzKnifeObj te ) public GuiQuartzKnife( final InventoryPlayer inventoryPlayer, final QuartzKnifeObj te )
{ {
@@ -36,21 +36,21 @@ import appeng.core.sync.packets.PacketValueConfig;
public class GuiSecurity extends GuiMEMonitorable public class GuiSecurity extends GuiMEMonitorable
{ {
GuiToggleButton inject; private GuiToggleButton inject;
GuiToggleButton extract; private GuiToggleButton extract;
GuiToggleButton craft; private GuiToggleButton craft;
GuiToggleButton build; private GuiToggleButton build;
GuiToggleButton security; private GuiToggleButton security;
public GuiSecurity( final InventoryPlayer inventoryPlayer, final ITerminalHost te ) public GuiSecurity( final InventoryPlayer inventoryPlayer, final ITerminalHost te )
{ {
super( inventoryPlayer, te, new ContainerSecurity( inventoryPlayer, te ) ); super( inventoryPlayer, te, new ContainerSecurity( inventoryPlayer, te ) );
this.customSortOrder = false; this.setCustomSortOrder( false );
this.reservedSpace = 33; this.setReservedSpace( 33 );
// increase size so that the slot is over the gui. // increase size so that the slot is over the gui.
this.xSize += 56; this.xSize += 56;
this.standardSize = this.xSize; this.setStandardSize( this.xSize );
} }
@Override @Override
@@ -115,7 +115,7 @@ public class GuiSecurity extends GuiMEMonitorable
public void drawFG( final int offsetX, final int offsetY, final int mouseX, final int mouseY ) public void drawFG( final int offsetX, final int offsetY, final int mouseX, final int mouseY )
{ {
super.drawFG( offsetX, offsetY, mouseX, mouseY ); super.drawFG( offsetX, offsetY, mouseX, mouseY );
this.fontRendererObj.drawString( GuiText.SecurityCardEditor.getLocal(), 8, this.ySize - 96 + 1 - this.reservedSpace, 4210752 ); this.fontRendererObj.drawString( GuiText.SecurityCardEditor.getLocal(), 8, this.ySize - 96 + 1 - this.getReservedSpace(), 4210752 );
} }
@Override @Override
@@ -123,11 +123,11 @@ public class GuiSecurity extends GuiMEMonitorable
{ {
final ContainerSecurity cs = (ContainerSecurity) this.inventorySlots; final ContainerSecurity cs = (ContainerSecurity) this.inventorySlots;
this.inject.setState( ( cs.security & ( 1 << SecurityPermissions.INJECT.ordinal() ) ) > 0 ); this.inject.setState( ( cs.getPermissionMode() & ( 1 << SecurityPermissions.INJECT.ordinal() ) ) > 0 );
this.extract.setState( ( cs.security & ( 1 << SecurityPermissions.EXTRACT.ordinal() ) ) > 0 ); this.extract.setState( ( cs.getPermissionMode() & ( 1 << SecurityPermissions.EXTRACT.ordinal() ) ) > 0 );
this.craft.setState( ( cs.security & ( 1 << SecurityPermissions.CRAFT.ordinal() ) ) > 0 ); this.craft.setState( ( cs.getPermissionMode() & ( 1 << SecurityPermissions.CRAFT.ordinal() ) ) > 0 );
this.build.setState( ( cs.security & ( 1 << SecurityPermissions.BUILD.ordinal() ) ) > 0 ); this.build.setState( ( cs.getPermissionMode() & ( 1 << SecurityPermissions.BUILD.ordinal() ) ) > 0 );
this.security.setState( ( cs.security & ( 1 << SecurityPermissions.SECURITY.ordinal() ) ) > 0 ); this.security.setState( ( cs.getPermissionMode() & ( 1 << SecurityPermissions.SECURITY.ordinal() ) ) > 0 );
return "guis/security.png"; return "guis/security.png";
} }
@@ -39,8 +39,8 @@ import appeng.util.Platform;
public class GuiSpatialIOPort extends AEBaseGui public class GuiSpatialIOPort extends AEBaseGui
{ {
final ContainerSpatialIOPort container; private final ContainerSpatialIOPort container;
GuiImgButton units; private GuiImgButton units;
public GuiSpatialIOPort( final InventoryPlayer inventoryPlayer, final TileSpatialIOPort te ) public GuiSpatialIOPort( final InventoryPlayer inventoryPlayer, final TileSpatialIOPort te )
{ {
@@ -75,10 +75,10 @@ public class GuiSpatialIOPort extends AEBaseGui
@Override @Override
public void drawFG( final int offsetX, final int offsetY, final int mouseX, final int mouseY ) public void drawFG( final int offsetX, final int offsetY, final int mouseX, final int mouseY )
{ {
this.fontRendererObj.drawString( GuiText.StoredPower.getLocal() + ": " + Platform.formatPowerLong( this.container.currentPower, false ), 13, 21, 4210752 ); this.fontRendererObj.drawString( GuiText.StoredPower.getLocal() + ": " + Platform.formatPowerLong( this.container.getCurrentPower(), false ), 13, 21, 4210752 );
this.fontRendererObj.drawString( GuiText.MaxPower.getLocal() + ": " + Platform.formatPowerLong( this.container.maxPower, false ), 13, 31, 4210752 ); this.fontRendererObj.drawString( GuiText.MaxPower.getLocal() + ": " + Platform.formatPowerLong( this.container.getMaxPower(), false ), 13, 31, 4210752 );
this.fontRendererObj.drawString( GuiText.RequiredPower.getLocal() + ": " + Platform.formatPowerLong( this.container.reqPower, false ), 13, 78, 4210752 ); this.fontRendererObj.drawString( GuiText.RequiredPower.getLocal() + ": " + Platform.formatPowerLong( this.container.getRequiredPower(), false ), 13, 78, 4210752 );
this.fontRendererObj.drawString( GuiText.Efficiency.getLocal() + ": " + ( ( (float) this.container.eff ) / 100 ) + '%', 13, 88, 4210752 ); this.fontRendererObj.drawString( GuiText.Efficiency.getLocal() + ": " + ( ( (float) this.container.getEfficency() ) / 100 ) + '%', 13, 88, 4210752 );
this.fontRendererObj.drawString( this.getGuiDisplayName( GuiText.SpatialIOPort.getLocal() ), 8, 6, 4210752 ); this.fontRendererObj.drawString( this.getGuiDisplayName( GuiText.SpatialIOPort.getLocal() ), 8, 6, 4210752 );
this.fontRendererObj.drawString( GuiText.inventory.getLocal(), 8, this.ySize - 96, 4210752 ); this.fontRendererObj.drawString( GuiText.inventory.getLocal(), 8, this.ySize - 96, 4210752 );
@@ -47,11 +47,11 @@ import appeng.parts.misc.PartStorageBus;
public class GuiStorageBus extends GuiUpgradeable public class GuiStorageBus extends GuiUpgradeable
{ {
GuiImgButton rwMode; private GuiImgButton rwMode;
GuiImgButton storageFilter; private GuiImgButton storageFilter;
GuiTabButton priority; private GuiTabButton priority;
GuiImgButton partition; private GuiImgButton partition;
GuiImgButton clear; private GuiImgButton clear;
public GuiStorageBus( final InventoryPlayer inventoryPlayer, final PartStorageBus te ) public GuiStorageBus( final InventoryPlayer inventoryPlayer, final PartStorageBus te )
{ {
@@ -85,17 +85,17 @@ public class GuiStorageBus extends GuiUpgradeable
if( this.fuzzyMode != null ) if( this.fuzzyMode != null )
{ {
this.fuzzyMode.set( this.cvb.fzMode ); this.fuzzyMode.set( this.cvb.getFuzzyMode() );
} }
if( this.storageFilter != null ) if( this.storageFilter != null )
{ {
this.storageFilter.set( ( (ContainerStorageBus) this.cvb ).storageFilter ); this.storageFilter.set( ( (ContainerStorageBus) this.cvb ).getStorageFilter() );
} }
if( this.rwMode != null ) if( this.rwMode != null )
{ {
this.rwMode.set( ( (ContainerStorageBus) this.cvb ).rwMode ); this.rwMode.set( ( (ContainerStorageBus) this.cvb ).getReadWriteMode() );
} }
} }
@@ -46,13 +46,13 @@ import appeng.parts.automation.PartImportBus;
public class GuiUpgradeable extends AEBaseGui public class GuiUpgradeable extends AEBaseGui
{ {
final ContainerUpgradeable cvb; protected final ContainerUpgradeable cvb;
final IUpgradeableHost bc; protected final IUpgradeableHost bc;
GuiImgButton redstoneMode; protected GuiImgButton redstoneMode;
GuiImgButton fuzzyMode; protected GuiImgButton fuzzyMode;
GuiImgButton craftMode; protected GuiImgButton craftMode;
GuiImgButton schedulingMode; protected GuiImgButton schedulingMode;
public GuiUpgradeable( final InventoryPlayer inventoryPlayer, final IUpgradeableHost te ) public GuiUpgradeable( final InventoryPlayer inventoryPlayer, final IUpgradeableHost te )
{ {
@@ -102,22 +102,22 @@ public class GuiUpgradeable extends AEBaseGui
if( this.redstoneMode != null ) if( this.redstoneMode != null )
{ {
this.redstoneMode.set( this.cvb.rsMode ); this.redstoneMode.set( this.cvb.getRedStoneMode() );
} }
if( this.fuzzyMode != null ) if( this.fuzzyMode != null )
{ {
this.fuzzyMode.set( this.cvb.fzMode ); this.fuzzyMode.set( this.cvb.getFuzzyMode() );
} }
if( this.craftMode != null ) if( this.craftMode != null )
{ {
this.craftMode.set( this.cvb.cMode ); this.craftMode.set( this.cvb.getCraftingMode() );
} }
if( this.schedulingMode != null ) if( this.schedulingMode != null )
{ {
this.schedulingMode.set( this.cvb.schedulingMode ); this.schedulingMode.set( this.cvb.getSchedulingMode() );
} }
} }
@@ -34,8 +34,8 @@ import appeng.tile.misc.TileVibrationChamber;
public class GuiVibrationChamber extends AEBaseGui public class GuiVibrationChamber extends AEBaseGui
{ {
final ContainerVibrationChamber cvc; private final ContainerVibrationChamber cvc;
GuiProgressBar pb; private GuiProgressBar pb;
public GuiVibrationChamber( final InventoryPlayer inventoryPlayer, final TileVibrationChamber te ) public GuiVibrationChamber( final InventoryPlayer inventoryPlayer, final TileVibrationChamber te )
{ {
@@ -59,7 +59,7 @@ public class GuiVibrationChamber extends AEBaseGui
this.fontRendererObj.drawString( this.getGuiDisplayName( GuiText.VibrationChamber.getLocal() ), 8, 6, 4210752 ); this.fontRendererObj.drawString( this.getGuiDisplayName( GuiText.VibrationChamber.getLocal() ), 8, 6, 4210752 );
this.fontRendererObj.drawString( GuiText.inventory.getLocal(), 8, this.ySize - 96 + 3, 4210752 ); this.fontRendererObj.drawString( GuiText.inventory.getLocal(), 8, this.ySize - 96 + 3, 4210752 );
this.pb.setFullMsg( this.cvc.aePerTick * this.cvc.getCurrentProgress() / 100 + " AE/t" ); this.pb.setFullMsg( this.cvc.getAePerTick() * this.cvc.getCurrentProgress() / 100 + " AE/t" );
if( this.cvc.getCurrentProgress() > 0 ) if( this.cvc.getCurrentProgress() > 0 )
{ {
@@ -39,7 +39,7 @@ import appeng.util.Platform;
public class GuiWireless extends AEBaseGui public class GuiWireless extends AEBaseGui
{ {
GuiImgButton units; private GuiImgButton units;
public GuiWireless( final InventoryPlayer inventoryPlayer, final TileWireless te ) public GuiWireless( final InventoryPlayer inventoryPlayer, final TileWireless te )
{ {
@@ -78,10 +78,10 @@ public class GuiWireless extends AEBaseGui
final ContainerWireless cw = (ContainerWireless) this.inventorySlots; final ContainerWireless cw = (ContainerWireless) this.inventorySlots;
if( cw.range > 0 ) if( cw.getRange() > 0 )
{ {
final String firstMessage = GuiText.Range.getLocal() + ": " + ( cw.range / 10.0 ) + " m"; final String firstMessage = GuiText.Range.getLocal() + ": " + ( cw.getRange() / 10.0 ) + " m";
final String secondMessage = GuiText.PowerUsageRate.getLocal() + ": " + Platform.formatPowerLong( cw.drain, true ); final String secondMessage = GuiText.PowerUsageRate.getLocal() + ": " + Platform.formatPowerLong( cw.getDrain(), true );
final int strWidth = Math.max( this.fontRendererObj.getStringWidth( firstMessage ), this.fontRendererObj.getStringWidth( secondMessage ) ); final int strWidth = Math.max( this.fontRendererObj.getStringWidth( firstMessage ), this.fontRendererObj.getStringWidth( secondMessage ) );
final int cOffset = ( this.xSize / 2 ) - ( strWidth / 2 ); final int cOffset = ( this.xSize / 2 ) - ( strWidth / 2 );
@@ -29,7 +29,6 @@ public class GuiWirelessTerm extends GuiMEPortableCell
public GuiWirelessTerm( final InventoryPlayer inventoryPlayer, final IPortableCell te ) public GuiWirelessTerm( final InventoryPlayer inventoryPlayer, final IPortableCell te )
{ {
super( inventoryPlayer, te ); super( inventoryPlayer, te );
this.maxRows = Integer.MAX_VALUE;
} }
@Override @Override
@@ -59,8 +59,8 @@ public class GuiImgButton extends GuiButton implements ITooltip
private static final Pattern PATTERN_NEW_LINE = Pattern.compile( "\\n", Pattern.LITERAL ); private static final Pattern PATTERN_NEW_LINE = Pattern.compile( "\\n", Pattern.LITERAL );
private static Map<EnumPair, ButtonAppearance> appearances; private static Map<EnumPair, ButtonAppearance> appearances;
private final Enum buttonSetting; private final Enum buttonSetting;
public boolean halfSize = false; private boolean halfSize = false;
public String fillVar; private String fillVar;
private Enum currentValue; private Enum currentValue;
public GuiImgButton( final int x, final int y, final Enum idx, final Enum val ) public GuiImgButton( final int x, final int y, final Enum idx, final Enum val )
@@ -362,7 +362,27 @@ public class GuiImgButton extends GuiButton implements ITooltip
} }
} }
static class EnumPair public boolean isHalfSize()
{
return this.halfSize;
}
public void setHalfSize( final boolean halfSize )
{
this.halfSize = halfSize;
}
public String getFillVar()
{
return this.fillVar;
}
public void setFillVar( final String fillVar )
{
this.fillVar = fillVar;
}
private static final class EnumPair
{ {
final Enum setting; final Enum setting;
@@ -26,7 +26,7 @@ import net.minecraft.client.gui.GuiTextField;
public class GuiNumberBox extends GuiTextField public class GuiNumberBox extends GuiTextField
{ {
final Class type; private final Class type;
public GuiNumberBox( final FontRenderer fontRenderer, final int x, final int y, final int width, final int height, final Class type ) public GuiNumberBox( final FontRenderer fontRenderer, final int x, final int y, final int width, final int height, final Class type )
{ {
@@ -53,7 +53,7 @@ public class GuiScrollbar implements IScrollSource
} }
} }
public int getRange() private int getRange()
{ {
return this.maxScroll - this.minScroll; return this.maxScroll - this.minScroll;
} }
@@ -35,7 +35,7 @@ public class GuiTabButton extends GuiButton implements ITooltip
{ {
private final RenderItem itemRenderer; private final RenderItem itemRenderer;
private final String message; private final String message;
public int hideEdge = 0; private int hideEdge = 0;
private int myIcon = -1; private int myIcon = -1;
private ItemStack myItem; private ItemStack myItem;
@@ -150,4 +150,14 @@ public class GuiTabButton extends GuiButton implements ITooltip
{ {
return this.visible; return this.visible;
} }
public int getHideEdge()
{
return this.hideEdge;
}
public void setHideEdge( final int hideEdge )
{
this.hideEdge = hideEdge;
}
} }
@@ -29,14 +29,15 @@ import appeng.util.ItemSorters;
public class ClientDCInternalInv implements Comparable<ClientDCInternalInv> public class ClientDCInternalInv implements Comparable<ClientDCInternalInv>
{ {
public final String unlocalizedName; private final String unlocalizedName;
public final AppEngInternalInventory inv; private final AppEngInternalInventory inventory;
public final long id;
public final long sortBy; private final long id;
private final long sortBy;
public ClientDCInternalInv( final int size, final long id, final long sortBy, final String unlocalizedName ) public ClientDCInternalInv( final int size, final long id, final long sortBy, final String unlocalizedName )
{ {
this.inv = new AppEngInternalInventory( null, size ); this.inventory = new AppEngInternalInventory( null, size );
this.unlocalizedName = unlocalizedName; this.unlocalizedName = unlocalizedName;
this.id = id; this.id = id;
this.sortBy = sortBy; this.sortBy = sortBy;
@@ -57,4 +58,14 @@ public class ClientDCInternalInv implements Comparable<ClientDCInternalInv>
{ {
return ItemSorters.compareLong( this.sortBy, o.sortBy ); return ItemSorters.compareLong( this.sortBy, o.sortBy );
} }
public AppEngInternalInventory getInventory()
{
return this.inventory;
}
public long getId()
{
return this.id;
}
} }
@@ -26,9 +26,9 @@ import appeng.api.storage.data.IAEItemStack;
public class InternalSlotME public class InternalSlotME
{ {
public final int offset; private final int offset;
public final int xPos; private final int xPos;
public final int yPos; private final int yPos;
private final ItemRepo repo; private final ItemRepo repo;
public InternalSlotME( final ItemRepo def, final int offset, final int displayX, final int displayY ) public InternalSlotME( final ItemRepo def, final int offset, final int displayX, final int displayY )
@@ -39,18 +39,28 @@ public class InternalSlotME
this.yPos = displayY; this.yPos = displayY;
} }
public ItemStack getStack() ItemStack getStack()
{ {
return this.repo.getItem( this.offset ); return this.repo.getItem( this.offset );
} }
public IAEItemStack getAEStack() IAEItemStack getAEStack()
{ {
return this.repo.getReferenceItem( this.offset ); return this.repo.getReferenceItem( this.offset );
} }
public boolean hasPower() boolean hasPower()
{ {
return this.repo.hasPower(); return this.repo.hasPower();
} }
int getxPosition()
{
return this.xPos;
}
int getyPosition()
{
return this.yPos;
}
} }
+26 -4
View File
@@ -25,6 +25,8 @@ import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
import java.util.regex.Pattern; import java.util.regex.Pattern;
import javax.annotation.Nonnull;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.relauncher.ReflectionHelper; import net.minecraftforge.fml.relauncher.ReflectionHelper;
import appeng.api.AEApi; import appeng.api.AEApi;
@@ -53,10 +55,10 @@ public class ItemRepo
private final IScrollSource src; private final IScrollSource src;
private final ISortSource sortSrc; private final ISortSource sortSrc;
public int rowSize = 9; private int rowSize = 9;
public String searchString = ""; private String searchString = "";
IPartitionList<IAEItemStack> myPartitionList; private IPartitionList<IAEItemStack> myPartitionList;
private String innerSearch = ""; private String innerSearch = "";
private String NEIWord = null; private String NEIWord = null;
private boolean hasPower; private boolean hasPower;
@@ -216,7 +218,7 @@ public class ItemRepo
final Enum SortBy = this.sortSrc.getSortBy(); final Enum SortBy = this.sortSrc.getSortBy();
final Enum SortDir = this.sortSrc.getSortDir(); final Enum SortDir = this.sortSrc.getSortDir();
ItemSorters.Direction = (appeng.api.config.SortDir) SortDir; ItemSorters.setDirection( (appeng.api.config.SortDir) SortDir );
ItemSorters.init(); ItemSorters.init();
if( SortBy == SortOrder.MOD ) if( SortBy == SortOrder.MOD )
@@ -285,4 +287,24 @@ public class ItemRepo
{ {
this.hasPower = hasPower; this.hasPower = hasPower;
} }
public int getRowSize()
{
return this.rowSize;
}
public void setRowSize( final int rowSize )
{
this.rowSize = rowSize;
}
public String getSearchString()
{
return this.searchString;
}
public void setSearchString( @Nonnull final String searchString )
{
this.searchString = searchString;
}
} }
@@ -30,11 +30,11 @@ import appeng.util.Platform;
public class SlotDisconnected extends AppEngSlot public class SlotDisconnected extends AppEngSlot
{ {
public final ClientDCInternalInv mySlot; private final ClientDCInternalInv mySlot;
public SlotDisconnected( final ClientDCInternalInv me, final int which, final int x, final int y ) public SlotDisconnected( final ClientDCInternalInv me, final int which, final int x, final int y )
{ {
super( me.inv, which, x, y ); super( me.getInventory(), which, x, y );
this.mySlot = me; this.mySlot = me;
} }
@@ -103,4 +103,9 @@ public class SlotDisconnected extends AppEngSlot
{ {
return false; return false;
} }
public ClientDCInternalInv getSlot()
{
return this.mySlot;
}
} }
+2 -2
View File
@@ -30,11 +30,11 @@ import appeng.api.storage.data.IAEItemStack;
public class SlotME extends Slot public class SlotME extends Slot
{ {
public final InternalSlotME mySlot; private final InternalSlotME mySlot;
public SlotME( final InternalSlotME me ) public SlotME( final InternalSlotME me )
{ {
super( null, 0, me.xPos, me.yPos ); super( null, 0, me.getxPosition(), me.getyPosition() );
this.mySlot = me; this.mySlot = me;
} }
@@ -19,6 +19,10 @@
package appeng.client.render; package appeng.client.render;
import javax.annotation.Nonnull;
import org.lwjgl.opengl.GL11;
import net.minecraft.client.gui.FontRenderer; import net.minecraft.client.gui.FontRenderer;
import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.WorldRenderer; import net.minecraft.client.renderer.WorldRenderer;
@@ -27,8 +31,6 @@ import net.minecraft.client.renderer.texture.TextureManager;
import net.minecraft.client.resources.model.ModelManager; import net.minecraft.client.resources.model.ModelManager;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import org.lwjgl.opengl.GL11;
import appeng.api.storage.data.IAEItemStack; import appeng.api.storage.data.IAEItemStack;
import appeng.core.AEConfig; import appeng.core.AEConfig;
import appeng.core.localization.GuiText; import appeng.core.localization.GuiText;
@@ -55,7 +57,7 @@ public class AppEngRenderItem extends RenderItem
private static final ISlimReadableNumberConverter SLIM_CONVERTER = ReadableNumberConverter.INSTANCE; private static final ISlimReadableNumberConverter SLIM_CONVERTER = ReadableNumberConverter.INSTANCE;
private static final IWideReadableNumberConverter WIDE_CONVERTER = ReadableNumberConverter.INSTANCE; private static final IWideReadableNumberConverter WIDE_CONVERTER = ReadableNumberConverter.INSTANCE;
public IAEItemStack aeStack; private IAEItemStack aeStack = null;
@Override @Override
public void renderItemOverlayIntoGUI( public void renderItemOverlayIntoGUI(
@@ -158,4 +160,14 @@ public class AppEngRenderItem extends RenderItem
return WIDE_CONVERTER.toWideReadableForm( originalSize ); return WIDE_CONVERTER.toWideReadableForm( originalSize );
} }
} }
public IAEItemStack getAeStack()
{
return this.aeStack;
}
public void setAeStack( @Nonnull final IAEItemStack aeStack )
{
this.aeStack = aeStack;
}
} }
@@ -24,6 +24,9 @@ import java.util.EnumSet;
import javax.annotation.Nullable; import javax.annotation.Nullable;
import org.lwjgl.BufferUtils;
import org.lwjgl.opengl.GL11;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.RenderHelper; import net.minecraft.client.renderer.RenderHelper;
import net.minecraft.client.renderer.WorldRenderer; import net.minecraft.client.renderer.WorldRenderer;
@@ -40,9 +43,6 @@ import net.minecraftforge.client.IItemRenderer.ItemRenderType;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import org.lwjgl.BufferUtils;
import org.lwjgl.opengl.GL11;
import appeng.api.util.AEPartLocation; import appeng.api.util.AEPartLocation;
import appeng.api.util.IOrientable; import appeng.api.util.IOrientable;
import appeng.block.AEBaseBlock; import appeng.block.AEBaseBlock;
@@ -80,7 +80,7 @@ public class BaseBlockRender<B extends AEBaseBlock, T extends AEBaseTile>
setOriMap(); setOriMap();
} }
public static void setOriMap() private static void setOriMap()
{ {
// pointed up... // pointed up...
ORIENTATION_MAP[0][3][1] = 0; ORIENTATION_MAP[0][3][1] = 0;
@@ -279,7 +279,7 @@ public class BaseBlockRender<B extends AEBaseBlock, T extends AEBaseTile>
return ( r << 16 ) | ( g << 8 ) | b; return ( r << 16 ) | ( g << 8 ) | b;
} }
public double getTesrRenderDistance() double getTesrRenderDistance()
{ {
return this.renderDistance; return this.renderDistance;
} }
@@ -294,14 +294,14 @@ public class BaseBlockRender<B extends AEBaseBlock, T extends AEBaseTile>
block.setRenderStateByMeta( item.getItemDamage() ); block.setRenderStateByMeta( item.getItemDamage() );
} }
renderer.uvRotateBottom = info.getTexture( AEPartLocation.DOWN ).setFlip( getOrientation( EnumFacing.DOWN, EnumFacing.SOUTH, EnumFacing.UP ) ); renderer.setUvRotateBottom( info.getTexture( AEPartLocation.DOWN ).setFlip( getOrientation( EnumFacing.DOWN, EnumFacing.SOUTH, EnumFacing.UP ) ) );
renderer.uvRotateTop = info.getTexture( AEPartLocation.UP ).setFlip( getOrientation( EnumFacing.UP, EnumFacing.SOUTH, EnumFacing.UP ) ); renderer.setUvRotateTop( info.getTexture( AEPartLocation.UP ).setFlip( getOrientation( EnumFacing.UP, EnumFacing.SOUTH, EnumFacing.UP ) ) );
renderer.uvRotateEast = info.getTexture( AEPartLocation.EAST ).setFlip( getOrientation( EnumFacing.EAST, EnumFacing.SOUTH, EnumFacing.UP ) ); renderer.setUvRotateEast( info.getTexture( AEPartLocation.EAST ).setFlip( getOrientation( EnumFacing.EAST, EnumFacing.SOUTH, EnumFacing.UP ) ) );
renderer.uvRotateWest = info.getTexture( AEPartLocation.WEST ).setFlip( getOrientation( EnumFacing.WEST, EnumFacing.SOUTH, EnumFacing.UP ) ); renderer.setUvRotateWest( info.getTexture( AEPartLocation.WEST ).setFlip( getOrientation( EnumFacing.WEST, EnumFacing.SOUTH, EnumFacing.UP ) ) );
renderer.uvRotateNorth = info.getTexture( AEPartLocation.NORTH ).setFlip( getOrientation( EnumFacing.NORTH, EnumFacing.SOUTH, EnumFacing.UP ) ); renderer.setUvRotateNorth( info.getTexture( AEPartLocation.NORTH ).setFlip( getOrientation( EnumFacing.NORTH, EnumFacing.SOUTH, EnumFacing.UP ) ) );
renderer.uvRotateSouth = info.getTexture( AEPartLocation.SOUTH ).setFlip( getOrientation( EnumFacing.SOUTH, EnumFacing.SOUTH, EnumFacing.UP ) ); renderer.setUvRotateSouth( info.getTexture( AEPartLocation.SOUTH ).setFlip( getOrientation( EnumFacing.SOUTH, EnumFacing.SOUTH, EnumFacing.UP ) ) );
} }
this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), block, item, 0xffffff, renderer ); this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), block, item, 0xffffff, renderer );
@@ -311,10 +311,10 @@ public class BaseBlockRender<B extends AEBaseBlock, T extends AEBaseTile>
info.setTemporaryRenderIcon( null ); info.setTemporaryRenderIcon( null );
} }
renderer.uvRotateBottom = renderer.uvRotateEast = renderer.uvRotateNorth = renderer.uvRotateSouth = renderer.uvRotateTop = renderer.uvRotateWest = 0; renderer.setUvRotateBottom( renderer.setUvRotateEast( renderer.setUvRotateNorth( renderer.setUvRotateSouth( renderer.setUvRotateTop( renderer.setUvRotateWest( 0 ) ) ) ) ) );
} }
public static int getOrientation( final EnumFacing in, final EnumFacing forward, final EnumFacing up ) static int getOrientation( final EnumFacing in, final EnumFacing forward, final EnumFacing up )
{ {
if( in == null // 1 if( in == null // 1
|| forward == null // 2 || forward == null // 2
@@ -344,46 +344,46 @@ public class BaseBlockRender<B extends AEBaseBlock, T extends AEBaseTile>
{ {
tess.setNormal( 0.0F, -1.0F, 0.0F ); tess.setNormal( 0.0F, -1.0F, 0.0F );
tess.setColorOpaque_I( color ); tess.setColorOpaque_I( color );
tess.renderFaceYNeg( block, zero, this.firstNotNull( tess.overrideBlockTexture, block.getRendererInstance().getTexture( AEPartLocation.DOWN ), icons[ AEPartLocation.DOWN.ordinal() ] ) ); tess.renderFaceYNeg( block, zero, this.firstNotNull( tess.getOverrideBlockTexture(), block.getRendererInstance().getTexture( AEPartLocation.DOWN ), icons[ AEPartLocation.DOWN.ordinal() ] ) );
} }
if( sides.contains( AEPartLocation.UP ) ) if( sides.contains( AEPartLocation.UP ) )
{ {
tess.setNormal( 0.0F, 1.0F, 0.0F ); tess.setNormal( 0.0F, 1.0F, 0.0F );
tess.setColorOpaque_I( color ); tess.setColorOpaque_I( color );
tess.renderFaceYPos( block, zero, this.firstNotNull( tess.overrideBlockTexture, block.getRendererInstance().getTexture( AEPartLocation.UP ), icons[ AEPartLocation.UP.ordinal() ] ) ); tess.renderFaceYPos( block, zero, this.firstNotNull( tess.getOverrideBlockTexture(), block.getRendererInstance().getTexture( AEPartLocation.UP ), icons[ AEPartLocation.UP.ordinal() ] ) );
} }
if( sides.contains( AEPartLocation.NORTH ) ) if( sides.contains( AEPartLocation.NORTH ) )
{ {
tess.setNormal( 0.0F, 0.0F, -1.0F ); tess.setNormal( 0.0F, 0.0F, -1.0F );
tess.setColorOpaque_I( color ); tess.setColorOpaque_I( color );
tess.renderFaceZNeg( block, zero, this.firstNotNull( tess.overrideBlockTexture, block.getRendererInstance().getTexture( AEPartLocation.NORTH ), icons[ AEPartLocation.NORTH.ordinal() ] ) ); tess.renderFaceZNeg( block, zero, this.firstNotNull( tess.getOverrideBlockTexture(), block.getRendererInstance().getTexture( AEPartLocation.NORTH ), icons[ AEPartLocation.NORTH.ordinal() ] ) );
} }
if( sides.contains( AEPartLocation.SOUTH ) ) if( sides.contains( AEPartLocation.SOUTH ) )
{ {
tess.setNormal( 0.0F, 0.0F, 1.0F ); tess.setNormal( 0.0F, 0.0F, 1.0F );
tess.setColorOpaque_I( color ); tess.setColorOpaque_I( color );
tess.renderFaceZPos( block, zero, this.firstNotNull( tess.overrideBlockTexture, block.getRendererInstance().getTexture( AEPartLocation.SOUTH ), icons[ AEPartLocation.SOUTH.ordinal() ] ) ); tess.renderFaceZPos( block, zero, this.firstNotNull( tess.getOverrideBlockTexture(), block.getRendererInstance().getTexture( AEPartLocation.SOUTH ), icons[ AEPartLocation.SOUTH.ordinal() ] ) );
} }
if( sides.contains( AEPartLocation.WEST ) ) if( sides.contains( AEPartLocation.WEST ) )
{ {
tess.setNormal( -1.0F, 0.0F, 0.0F ); tess.setNormal( -1.0F, 0.0F, 0.0F );
tess.setColorOpaque_I( color ); tess.setColorOpaque_I( color );
tess.renderFaceXNeg( block, zero, this.firstNotNull( tess.overrideBlockTexture, block.getRendererInstance().getTexture( AEPartLocation.WEST ), icons[ AEPartLocation.WEST.ordinal() ] ) ); tess.renderFaceXNeg( block, zero, this.firstNotNull( tess.getOverrideBlockTexture(), block.getRendererInstance().getTexture( AEPartLocation.WEST ), icons[ AEPartLocation.WEST.ordinal() ] ) );
} }
if( sides.contains( AEPartLocation.EAST ) ) if( sides.contains( AEPartLocation.EAST ) )
{ {
tess.setNormal( 1.0F, 0.0F, 0.0F ); tess.setNormal( 1.0F, 0.0F, 0.0F );
tess.setColorOpaque_I( color ); tess.setColorOpaque_I( color );
tess.renderFaceXPos( block, zero, this.firstNotNull( tess.overrideBlockTexture, block.getRendererInstance().getTexture( AEPartLocation.EAST ), icons[ AEPartLocation.EAST.ordinal() ]) ); tess.renderFaceXPos( block, zero, this.firstNotNull( tess.getOverrideBlockTexture(), block.getRendererInstance().getTexture( AEPartLocation.EAST ), icons[ AEPartLocation.EAST.ordinal() ]) );
} }
} }
public IAESprite firstNotNull( final IAESprite... s ) private IAESprite firstNotNull( final IAESprite... s )
{ {
for( final IAESprite o : s ) for( final IAESprite o : s )
{ {
@@ -415,20 +415,20 @@ public class BaseBlockRender<B extends AEBaseBlock, T extends AEBaseTile>
final EnumFacing forward = te.getForward(); final EnumFacing forward = te.getForward();
final EnumFacing up = te.getUp(); final EnumFacing up = te.getUp();
renderer.uvRotateBottom = info.getTexture( AEPartLocation.DOWN ).setFlip( getOrientation( EnumFacing.DOWN, forward, up ) ); renderer.setUvRotateBottom( info.getTexture( AEPartLocation.DOWN ).setFlip( getOrientation( EnumFacing.DOWN, forward, up ) ) );
renderer.uvRotateTop = info.getTexture( AEPartLocation.UP ).setFlip( getOrientation( EnumFacing.UP, forward, up ) ); renderer.setUvRotateTop( info.getTexture( AEPartLocation.UP ).setFlip( getOrientation( EnumFacing.UP, forward, up ) ) );
renderer.uvRotateEast = info.getTexture( AEPartLocation.EAST ).setFlip( getOrientation( EnumFacing.EAST, forward, up ) ); renderer.setUvRotateEast( info.getTexture( AEPartLocation.EAST ).setFlip( getOrientation( EnumFacing.EAST, forward, up ) ) );
renderer.uvRotateWest = info.getTexture( AEPartLocation.WEST ).setFlip( getOrientation( EnumFacing.WEST, forward, up ) ); renderer.setUvRotateWest( info.getTexture( AEPartLocation.WEST ).setFlip( getOrientation( EnumFacing.WEST, forward, up ) ) );
renderer.uvRotateNorth = info.getTexture( AEPartLocation.NORTH ).setFlip( getOrientation( EnumFacing.NORTH, forward, up ) ); renderer.setUvRotateNorth( info.getTexture( AEPartLocation.NORTH ).setFlip( getOrientation( EnumFacing.NORTH, forward, up ) ) );
renderer.uvRotateSouth = info.getTexture( AEPartLocation.SOUTH ).setFlip( getOrientation( EnumFacing.SOUTH, forward, up ) ); renderer.setUvRotateSouth( info.getTexture( AEPartLocation.SOUTH ).setFlip( getOrientation( EnumFacing.SOUTH, forward, up ) ) );
} }
} }
public void postRenderInWorld( final ModelGenerator renderer ) public void postRenderInWorld( final ModelGenerator renderer )
{ {
renderer.uvRotateBottom = renderer.uvRotateEast = renderer.uvRotateNorth = renderer.uvRotateSouth = renderer.uvRotateTop = renderer.uvRotateWest = 0; renderer.setUvRotateBottom( renderer.setUvRotateEast( renderer.setUvRotateNorth( renderer.setUvRotateSouth( renderer.setUvRotateTop( renderer.setUvRotateWest( 0 ) ) ) ) ) );
} }
@Nullable @Nullable
@@ -483,12 +483,12 @@ public class BaseBlockRender<B extends AEBaseBlock, T extends AEBaseTile>
bZ += 1; bZ += 1;
} }
renderer.renderMinX = Math.min( aX, bX ); renderer.setRenderMinX( Math.min( aX, bX ) );
renderer.renderMinY = Math.min( aY, bY ); renderer.setRenderMinY( Math.min( aY, bY ) );
renderer.renderMinZ = Math.min( aZ, bZ ); renderer.setRenderMinZ( Math.min( aZ, bZ ) );
renderer.renderMaxX = Math.max( aX, bX ); renderer.setRenderMaxX( Math.max( aX, bX ) );
renderer.renderMaxY = Math.max( aY, bY ); renderer.setRenderMaxY( Math.max( aY, bY ) );
renderer.renderMaxZ = Math.max( aZ, bZ ); renderer.setRenderMaxZ( Math.max( aZ, bZ ) );
} }
@SideOnly( Side.CLIENT ) @SideOnly( Side.CLIENT )
@@ -642,14 +642,14 @@ public class BaseBlockRender<B extends AEBaseBlock, T extends AEBaseTile>
final double maxY = ( forward.getFrontOffsetY() > 0 ? 1 : 0 ) + this.mapFaceUV( west.getFrontOffsetY(), u2 ) + this.mapFaceUV( up.getFrontOffsetY(), v2 ); final double maxY = ( forward.getFrontOffsetY() > 0 ? 1 : 0 ) + this.mapFaceUV( west.getFrontOffsetY(), u2 ) + this.mapFaceUV( up.getFrontOffsetY(), v2 );
final double maxZ = ( forward.getFrontOffsetZ() > 0 ? 1 : 0 ) + this.mapFaceUV( west.getFrontOffsetZ(), u2 ) + this.mapFaceUV( up.getFrontOffsetZ(), v2 ); final double maxZ = ( forward.getFrontOffsetZ() > 0 ? 1 : 0 ) + this.mapFaceUV( west.getFrontOffsetZ(), u2 ) + this.mapFaceUV( up.getFrontOffsetZ(), v2 );
renderer.renderMinX = Math.max( 0.0, Math.min( minX, maxX ) - ( forward.getFrontOffsetX() != 0 ? 0 : 0.001 ) ); renderer.setRenderMinX( Math.max( 0.0, Math.min( minX, maxX ) - ( forward.getFrontOffsetX() != 0 ? 0 : 0.001 ) ) );
renderer.renderMaxX = Math.min( 1.0, Math.max( minX, maxX ) + ( forward.getFrontOffsetX() != 0 ? 0 : 0.001 ) ); renderer.setRenderMaxX( Math.min( 1.0, Math.max( minX, maxX ) + ( forward.getFrontOffsetX() != 0 ? 0 : 0.001 ) ) );
renderer.renderMinY = Math.max( 0.0, Math.min( minY, maxY ) - ( forward.getFrontOffsetY() != 0 ? 0 : 0.001 ) ); renderer.setRenderMinY( Math.max( 0.0, Math.min( minY, maxY ) - ( forward.getFrontOffsetY() != 0 ? 0 : 0.001 ) ) );
renderer.renderMaxY = Math.min( 1.0, Math.max( minY, maxY ) + ( forward.getFrontOffsetY() != 0 ? 0 : 0.001 ) ); renderer.setRenderMaxY( Math.min( 1.0, Math.max( minY, maxY ) + ( forward.getFrontOffsetY() != 0 ? 0 : 0.001 ) ) );
renderer.renderMinZ = Math.max( 0.0, Math.min( minZ, maxZ ) - ( forward.getFrontOffsetZ() != 0 ? 0 : 0.001 ) ); renderer.setRenderMinZ( Math.max( 0.0, Math.min( minZ, maxZ ) - ( forward.getFrontOffsetZ() != 0 ? 0 : 0.001 ) ) );
renderer.renderMaxZ = Math.min( 1.0, Math.max( minZ, maxZ ) + ( forward.getFrontOffsetZ() != 0 ? 0 : 0.001 ) ); renderer.setRenderMaxZ( Math.min( 1.0, Math.max( minZ, maxZ ) + ( forward.getFrontOffsetZ() != 0 ? 0 : 0.001 ) ) );
} }
private double mapFaceUV( final int offset, final int uv ) private double mapFaceUV( final int offset, final int uv )
@@ -670,7 +670,7 @@ public class BaseBlockRender<B extends AEBaseBlock, T extends AEBaseTile>
public void renderTile( final B block, final T tile, final WorldRenderer tess, final double x, final double y, final double z, final float f, final ModelGenerator renderer ) public void renderTile( final B block, final T tile, final WorldRenderer tess, final double x, final double y, final double z, final float f, final ModelGenerator renderer )
{ {
renderer.uvRotateBottom = renderer.uvRotateTop = renderer.uvRotateEast = renderer.uvRotateWest = renderer.uvRotateNorth = renderer.uvRotateSouth = 0; renderer.setUvRotateBottom( renderer.setUvRotateTop( renderer.setUvRotateEast( renderer.setUvRotateWest( renderer.setUvRotateNorth( renderer.setUvRotateSouth( 0 ) ) ) ) ) );
final AEPartLocation up = AEPartLocation.UP; final AEPartLocation up = AEPartLocation.UP;
final AEPartLocation forward = AEPartLocation.SOUTH; final AEPartLocation forward = AEPartLocation.SOUTH;
@@ -700,7 +700,7 @@ public class BaseBlockRender<B extends AEBaseBlock, T extends AEBaseTile>
renderer.setTranslation( 0, 0, 0 ); renderer.setTranslation( 0, 0, 0 );
RenderHelper.enableStandardItemLighting(); RenderHelper.enableStandardItemLighting();
renderer.uvRotateBottom = renderer.uvRotateTop = renderer.uvRotateEast = renderer.uvRotateWest = renderer.uvRotateNorth = renderer.uvRotateSouth = 0; renderer.setUvRotateBottom( renderer.setUvRotateTop( renderer.setUvRotateEast( renderer.setUvRotateWest( renderer.setUvRotateNorth( renderer.setUvRotateSouth( 0 ) ) ) ) ) );
} }
protected void applyTESRRotation( final double x, final double y, final double z, final EnumFacing forward, final EnumFacing up ) protected void applyTESRRotation( final double x, final double y, final double z, final EnumFacing forward, final EnumFacing up )
@@ -28,7 +28,7 @@ import appeng.client.texture.TmpFlippableIcon;
public class BlockRenderInfo public class BlockRenderInfo
{ {
public final BaseBlockRender rendererInstance; private final BaseBlockRender rendererInstance;
private final TmpFlippableIcon tmpTopIcon = new TmpFlippableIcon(); private final TmpFlippableIcon tmpTopIcon = new TmpFlippableIcon();
private final TmpFlippableIcon tmpBottomIcon = new TmpFlippableIcon(); private final TmpFlippableIcon tmpBottomIcon = new TmpFlippableIcon();
private final TmpFlippableIcon tmpSouthIcon = new TmpFlippableIcon(); private final TmpFlippableIcon tmpSouthIcon = new TmpFlippableIcon();
@@ -131,8 +131,13 @@ public class BlockRenderInfo
return this.topIcon; return this.topIcon;
} }
public boolean isValid() boolean isValid()
{ {
return this.topIcon != null && this.bottomIcon != null && this.southIcon != null && this.northIcon != null && this.eastIcon != null && this.westIcon != null; return this.topIcon != null && this.bottomIcon != null && this.southIcon != null && this.northIcon != null && this.eastIcon != null && this.westIcon != null;
} }
public BaseBlockRender getRendererInstance()
{
return this.rendererInstance;
}
} }
@@ -125,15 +125,15 @@ public final class BusRenderHelper implements IPartRenderHelper
} }
/* /*
public void setRenderColor( int color ) * public void setRenderColor( int color )
{ * {
for( Block block : AEApi.instance().definitions().blocks().multiPart().maybeBlock().asSet() ) * for( Block block : AEApi.instance().definitions().blocks().multiPart().maybeBlock().asSet() )
{ * {
final BlockCableBus cableBus = (BlockCableBus) block; * final BlockCableBus cableBus = (BlockCableBus) block;
cableBus.setRenderColor( color ); * cableBus.setRenderColor( color );
} * }
} * }
*/ */
public void setOrientation( final EnumFacing dx, final EnumFacing dy, final EnumFacing dz ) public void setOrientation( final EnumFacing dx, final EnumFacing dy, final EnumFacing dz )
{ {
@@ -250,7 +250,7 @@ public final class BusRenderHelper implements IPartRenderHelper
this.renderingForPass = pass; this.renderingForPass = pass;
} }
public boolean renderThis() private boolean renderThis()
{ {
if( this.renderingForPass == this.currentPass || this.noAlphaPass ) if( this.renderingForPass == this.currentPass || this.noAlphaPass )
{ {
@@ -304,7 +304,7 @@ public final class BusRenderHelper implements IPartRenderHelper
} }
} }
public EnumFacing mapRotation( final EnumFacing dir ) private EnumFacing mapRotation( final EnumFacing dir )
{ {
final EnumFacing forward = this.az; final EnumFacing forward = this.az;
final EnumFacing up = this.ay; final EnumFacing up = this.ay;
@@ -396,14 +396,14 @@ public final class BusRenderHelper implements IPartRenderHelper
final EnumFacing forward = BusRenderHelper.INSTANCE.az; final EnumFacing forward = BusRenderHelper.INSTANCE.az;
final EnumFacing up = BusRenderHelper.INSTANCE.ay; final EnumFacing up = BusRenderHelper.INSTANCE.ay;
renderer.uvRotateBottom = info.getTexture( AEPartLocation.DOWN ).setFlip( BaseBlockRender.getOrientation( EnumFacing.DOWN, forward, up ) ); renderer.setUvRotateBottom( info.getTexture( AEPartLocation.DOWN ).setFlip( BaseBlockRender.getOrientation( EnumFacing.DOWN, forward, up ) ) );
renderer.uvRotateTop = info.getTexture( AEPartLocation.UP ).setFlip( BaseBlockRender.getOrientation( EnumFacing.UP, forward, up ) ); renderer.setUvRotateTop( info.getTexture( AEPartLocation.UP ).setFlip( BaseBlockRender.getOrientation( EnumFacing.UP, forward, up ) ) );
renderer.uvRotateEast = info.getTexture( AEPartLocation.EAST ).setFlip( BaseBlockRender.getOrientation( EnumFacing.EAST, forward, up ) ); renderer.setUvRotateEast( info.getTexture( AEPartLocation.EAST ).setFlip( BaseBlockRender.getOrientation( EnumFacing.EAST, forward, up ) ) );
renderer.uvRotateWest = info.getTexture( AEPartLocation.WEST ).setFlip( BaseBlockRender.getOrientation( EnumFacing.WEST, forward, up ) ); renderer.setUvRotateWest( info.getTexture( AEPartLocation.WEST ).setFlip( BaseBlockRender.getOrientation( EnumFacing.WEST, forward, up ) ) );
renderer.uvRotateNorth = info.getTexture( AEPartLocation.NORTH ).setFlip( BaseBlockRender.getOrientation( EnumFacing.NORTH, forward, up ) ); renderer.setUvRotateNorth( info.getTexture( AEPartLocation.NORTH ).setFlip( BaseBlockRender.getOrientation( EnumFacing.NORTH, forward, up ) ) );
renderer.uvRotateSouth = info.getTexture( AEPartLocation.SOUTH ).setFlip( BaseBlockRender.getOrientation( EnumFacing.SOUTH, forward, up ) ); renderer.setUvRotateSouth( info.getTexture( AEPartLocation.SOUTH ).setFlip( BaseBlockRender.getOrientation( EnumFacing.SOUTH, forward, up ) ) );
this.bbr.renderBlockBounds( renderer, this.minX, this.minY, this.minZ, this.maxX, this.maxY, this.maxZ, this.ax, this.ay, this.az ); this.bbr.renderBlockBounds( renderer, this.minX, this.minY, this.minZ, this.maxX, this.maxY, this.maxZ, this.ax, this.ay, this.az );
@@ -430,7 +430,7 @@ public final class BusRenderHelper implements IPartRenderHelper
@Override @Override
public void setFacesToRender( final EnumSet<EnumFacing> faces ) public void setFacesToRender( final EnumSet<EnumFacing> faces )
{ {
BusRenderer.INSTANCE.renderer.renderFaces = faces; BusRenderer.INSTANCE.getRenderer().setRenderFaces( faces );
} }
@Override @Override
@@ -50,7 +50,7 @@ public class BusRenderer implements IItemRenderer
public static final BusRenderer INSTANCE = new BusRenderer(); public static final BusRenderer INSTANCE = new BusRenderer();
private static final Map<Integer, IPart> RENDER_PART = new HashMap<Integer, IPart>(); private static final Map<Integer, IPart> RENDER_PART = new HashMap<Integer, IPart>();
public ModelGenerator renderer; private ModelGenerator renderer;
@Override @Override
public boolean handleRenderType( final ItemStack item, final ItemRenderType type ) public boolean handleRenderType( final ItemStack item, final ItemRenderType type )
@@ -113,18 +113,18 @@ public class BusRenderer implements IItemRenderer
GL11.glScaled( 1.2, 1.2, 1. ); GL11.glScaled( 1.2, 1.2, 1. );
GL11.glColor4f( 1, 1, 1, 1 ); GL11.glColor4f( 1, 1, 1, 1 );
this.renderer.setColorOpaque_F( 1, 1, 1 ); this.getRenderer().setColorOpaque_F( 1, 1, 1 );
this.renderer.setBrightness( 14 << 20 | 14 << 4 ); this.getRenderer().setBrightness( 14 << 20 | 14 << 4 );
BusRenderHelper.INSTANCE.setBounds( 0, 0, 0, 1, 1, 1 ); BusRenderHelper.INSTANCE.setBounds( 0, 0, 0, 1, 1, 1 );
BusRenderHelper.INSTANCE.setTexture( null ); BusRenderHelper.INSTANCE.setTexture( null );
BusRenderHelper.INSTANCE.setInvColor( 0xffffff ); BusRenderHelper.INSTANCE.setInvColor( 0xffffff );
this.renderer.blockAccess = ClientHelper.proxy.getWorld(); this.getRenderer().setBlockAccess( ClientHelper.proxy.getWorld() );
BusRenderHelper.INSTANCE.setOrientation( EnumFacing.EAST, EnumFacing.UP, EnumFacing.SOUTH ); BusRenderHelper.INSTANCE.setOrientation( EnumFacing.EAST, EnumFacing.UP, EnumFacing.SOUTH );
this.renderer.uvRotateBottom = this.renderer.uvRotateEast = this.renderer.uvRotateNorth = this.renderer.uvRotateSouth = this.renderer.uvRotateTop = this.renderer.uvRotateWest = 0; this.getRenderer().setUvRotateBottom( this.getRenderer().setUvRotateEast( this.getRenderer().setUvRotateNorth( this.getRenderer().setUvRotateSouth( this.getRenderer().setUvRotateTop( this.getRenderer().setUvRotateWest( 0 ) ) ) ) ) );
this.renderer.overrideBlockTexture = null; this.getRenderer().setOverrideBlockTexture( null );
if( item.getItem() instanceof IFacadeItem ) if( item.getItem() instanceof IFacadeItem )
{ {
@@ -139,7 +139,7 @@ public class BusRenderer implements IItemRenderer
if( fp != null ) if( fp != null )
{ {
fp.renderInventory( BusRenderHelper.INSTANCE, this.renderer ); fp.renderInventory( BusRenderHelper.INSTANCE, this.getRenderer() );
} }
} }
else else
@@ -153,18 +153,18 @@ public class BusRenderer implements IItemRenderer
GL11.glTranslatef( 0.0f, 0.0f, -0.04f * ( 8 - depth ) - 0.06f ); GL11.glTranslatef( 0.0f, 0.0f, -0.04f * ( 8 - depth ) - 0.06f );
} }
ip.renderInventory( BusRenderHelper.INSTANCE, this.renderer ); ip.renderInventory( BusRenderHelper.INSTANCE, this.getRenderer() );
} }
} }
this.renderer.uvRotateBottom = this.renderer.uvRotateEast = this.renderer.uvRotateNorth = this.renderer.uvRotateSouth = this.renderer.uvRotateTop = this.renderer.uvRotateWest = 0; this.getRenderer().setUvRotateBottom( this.getRenderer().setUvRotateEast( this.getRenderer().setUvRotateNorth( this.getRenderer().setUvRotateSouth( this.getRenderer().setUvRotateTop( this.getRenderer().setUvRotateWest( 0 ) ) ) ) ) );
GL11.glPopAttrib(); GL11.glPopAttrib();
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
@Nullable @Nullable
public IPart getRenderer( final ItemStack is, final IPartItem c ) private IPart getRenderer( final ItemStack is, final IPartItem c )
{ {
final int id = ( Item.getIdFromItem( is.getItem() ) << Platform.DEF_OFFSET ) | is.getItemDamage(); final int id = ( Item.getIdFromItem( is.getItem() ) << Platform.DEF_OFFSET ) | is.getItemDamage();
@@ -180,4 +180,14 @@ public class BusRenderer implements IItemRenderer
return part; return part;
} }
public ModelGenerator getRenderer()
{
return this.renderer;
}
public void setRenderer( ModelGenerator renderer )
{
this.renderer = renderer;
}
} }
@@ -50,9 +50,9 @@ public class CableRenderHelper
public void renderStatic( final CableBusContainer cableBusContainer, final IFacadeContainer iFacadeContainer ) public void renderStatic( final CableBusContainer cableBusContainer, final IFacadeContainer iFacadeContainer )
{ {
final TileEntity te = cableBusContainer.getTile(); final TileEntity te = cableBusContainer.getTile();
final ModelGenerator renderer = BusRenderer.INSTANCE.renderer; final ModelGenerator renderer = BusRenderer.INSTANCE.getRenderer();
if( renderer.overrideBlockTexture != null ) if( renderer.getOverrideBlockTexture() != null )
{ {
BusRenderHelper.INSTANCE.setPass( 0 ); BusRenderHelper.INSTANCE.setPass( 0 );
} }
@@ -61,9 +61,9 @@ public class CableRenderHelper
BusRenderHelper.INSTANCE.setPass( MinecraftForgeClient.getRenderLayer() == EnumWorldBlockLayer.TRANSLUCENT ? 1 : 0 ); BusRenderHelper.INSTANCE.setPass( MinecraftForgeClient.getRenderLayer() == EnumWorldBlockLayer.TRANSLUCENT ? 1 : 0 );
} }
if( renderer.blockAccess == null ) if( renderer.getBlockAccess() == null )
{ {
renderer.blockAccess = Minecraft.getMinecraft().theWorld; renderer.setBlockAccess( Minecraft.getMinecraft().theWorld );
} }
for( final AEPartLocation s : AEPartLocation.values() ) for( final AEPartLocation s : AEPartLocation.values() )
@@ -72,16 +72,21 @@ public class CableRenderHelper
if( part != null ) if( part != null )
{ {
this.setSide( s ); this.setSide( s );
renderer.renderAllFaces = true; renderer.setRenderAllFaces( true );
//renderer.flipTexture = false; // renderer.flipTexture = false;
renderer.uvRotateBottom = renderer.uvRotateEast = renderer.uvRotateNorth = renderer.uvRotateSouth = renderer.uvRotateTop = renderer.uvRotateWest = 0; renderer.setUvRotateBottom( 0 );
renderer.setUvRotateEast( 0 );
renderer.setUvRotateNorth( 0 );
renderer.setUvRotateSouth( 0 );
renderer.setUvRotateTop( 0 );
renderer.setUvRotateWest( 0 );
renderer.setOverrideBlockTexture( null ); renderer.setOverrideBlockTexture( null );
part.renderStatic( te.getPos(), BusRenderHelper.INSTANCE, renderer ); part.renderStatic( te.getPos(), BusRenderHelper.INSTANCE, renderer );
//renderer.faces = EnumSet.allOf( EnumFacing.class ); // renderer.faces = EnumSet.allOf( EnumFacing.class );
//renderer.useTextures = true; // renderer.useTextures = true;
} }
} }
@@ -151,8 +156,13 @@ public class CableRenderHelper
} }
} }
renderer.flipTexture = false; renderer.setFlipTexture( false );
renderer.uvRotateBottom = renderer.uvRotateEast = renderer.uvRotateNorth = renderer.uvRotateSouth = renderer.uvRotateTop = renderer.uvRotateWest = 0; renderer.setUvRotateBottom( 0 );
renderer.setUvRotateEast( 0 );
renderer.setUvRotateNorth( 0 );
renderer.setUvRotateSouth( 0 );
renderer.setUvRotateTop( 0 );
renderer.setUvRotateWest( 0 );
renderer.setOverrideBlockTexture( null ); renderer.setOverrideBlockTexture( null );
this.setSide( s ); this.setSide( s );
@@ -161,8 +171,8 @@ public class CableRenderHelper
} }
} }
//renderer.isFacade = false; // renderer.isFacade = false;
//renderer.enableAO = false; // renderer.enableAO = false;
// renderer.sett // renderer.sett
} }
} }
@@ -266,7 +276,7 @@ public class CableRenderHelper
} }
BusRenderHelper.INSTANCE.setOrientation( ax, ay, az ); BusRenderHelper.INSTANCE.setOrientation( ax, ay, az );
part.renderDynamic( x, y, z, BusRenderHelper.INSTANCE, BusRenderer.INSTANCE.renderer ); part.renderDynamic( x, y, z, BusRenderHelper.INSTANCE, BusRenderer.INSTANCE.getRenderer() );
} }
} }
} }
@@ -8,13 +8,13 @@ import appeng.client.texture.IAESprite;
public class IconUnwrapper extends TextureAtlasSprite public class IconUnwrapper extends TextureAtlasSprite
{ {
int width; private int width;
int height; private int height;
float max_u; private float max_u;
float min_u; private float min_u;
float min_v; private float min_v;
float max_v; private float max_v;
protected IconUnwrapper( protected IconUnwrapper(
final IAESprite src ) final IAESprite src )
@@ -1,5 +1,7 @@
package appeng.client.render; package appeng.client.render;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.EnumSet; import java.util.EnumSet;
import java.util.List; import java.util.List;
@@ -32,18 +34,19 @@ import appeng.client.texture.MissingIcon;
import appeng.items.AEBaseItem; import appeng.items.AEBaseItem;
import appeng.items.parts.ItemMultiPart; import appeng.items.parts.ItemMultiPart;
public class ModelGenerator public class ModelGenerator
{ {
private static final class CachedModel implements IBakedModel private static final class CachedModel implements IBakedModel
{ {
List<BakedQuad>[] faces = new List[6]; private List<BakedQuad>[] faces = new List[6];
List<BakedQuad> general; private List<BakedQuad> general;
public CachedModel() public CachedModel()
{ {
this.general = new ArrayList<BakedQuad>(); this.general = new ArrayList<BakedQuad>();
for ( final EnumFacing f : EnumFacing.VALUES ) for( final EnumFacing f : EnumFacing.VALUES )
this.faces[f.ordinal()] = new ArrayList<BakedQuad>(); this.faces[f.ordinal()] = new ArrayList<BakedQuad>();
} }
@@ -91,45 +94,66 @@ public class ModelGenerator
} }
} }
public int uvRotateBottom; private int uvRotateBottom;
public int uvRotateEast; private int uvRotateEast;
public int uvRotateNorth; private int uvRotateNorth;
public int uvRotateSouth; private int uvRotateSouth;
public int uvRotateTop; private int uvRotateTop;
public int uvRotateWest; private int uvRotateWest;
public IAESprite overrideBlockTexture; private IAESprite overrideBlockTexture;
public boolean renderAllFaces; private boolean renderAllFaces;
public double renderMinX; private double renderMinX;
public double renderMaxX; private double renderMaxX;
public double renderMinY; private double renderMinY;
public double renderMaxY; private double renderMaxY;
public double renderMinZ; private double renderMinZ;
public double renderMaxZ; private double renderMaxZ;
public IBlockAccess blockAccess; private IBlockAccess blockAccess;
CachedModel generatedModel = new CachedModel(); private CachedModel generatedModel = new CachedModel();
// used to create faces... // used to create faces...
final FaceBakery faceBakery = new FaceBakery(); private final FaceBakery faceBakery = new FaceBakery();
float tx=0,ty=0,tz=0; private float tx = 0, ty = 0, tz = 0;
final float[] defUVs = { 0, 0, 1, 1 }; private final float[] defUVs = { 0, 0, 1, 1 };
private final float[] quadsUV = {
0,
0,
1,
1,
0,
0,
1,
1
};
private EnumSet<EnumFacing> renderFaces = EnumSet.allOf( EnumFacing.class );
private boolean flipTexture = false;
private List<SMFace> faces = new ArrayList();
private int point = 0;
private int brightness = -1;
private float[][] points = new float[4][];
private EnumFacing currentFace = EnumFacing.UP;
private int color = -1;
public void setRenderBoundsFromBlock( public void setRenderBoundsFromBlock(
final Block block ) final Block block )
{ {
if ( block == null ) return; if( block == null )
return;
this.renderMinX = block.getBlockBoundsMinX(); this.setRenderMinX( block.getBlockBoundsMinX() );
this.renderMinY = block.getBlockBoundsMinY(); this.setRenderMinY( block.getBlockBoundsMinY() );
this.renderMinZ = block.getBlockBoundsMinZ(); this.setRenderMinZ( block.getBlockBoundsMinZ() );
this.renderMaxX = block.getBlockBoundsMaxX(); this.setRenderMaxX( block.getBlockBoundsMaxX() );
this.renderMaxY = block.getBlockBoundsMaxY(); this.setRenderMaxY( block.getBlockBoundsMaxY() );
this.renderMaxZ = block.getBlockBoundsMaxZ(); this.setRenderMaxZ( block.getBlockBoundsMaxZ() );
} }
public void setRenderBounds( public void setRenderBounds(
@@ -140,20 +164,18 @@ public class ModelGenerator
final double h, final double h,
final double i ) final double i )
{ {
this.renderMinX = d; this.setRenderMinX( d );
this.renderMinY = e; this.setRenderMinY( e );
this.renderMinZ = f; this.setRenderMinZ( f );
this.renderMaxX = g; this.setRenderMaxX( g );
this.renderMaxY = h; this.setRenderMaxY( h );
this.renderMaxZ = i; this.setRenderMaxZ( i );
} }
int color = -1;
public void setBrightness( public void setBrightness(
final int i ) final int i )
{ {
this.brightness =i; this.brightness = i;
} }
public void setColorRGBA_F( public void setColorRGBA_F(
@@ -162,7 +184,7 @@ public class ModelGenerator
final int b, final int b,
final float a ) final float a )
{ {
final int alpha = ( int ) ( a * 0xff ); final int alpha = (int) ( a * 0xff );
this.color = alpha << 24 | this.color = alpha << 24 |
r << 16 | r << 16 |
b << 8 | b << 8 |
@@ -173,17 +195,18 @@ public class ModelGenerator
final int whiteVariant ) final int whiteVariant )
{ {
final int alpha = 0xff; final int alpha = 0xff;
this.color = //alpha << 24 | this.color = // alpha << 24 |
whiteVariant; whiteVariant;
} }
public void setColorOpaque( public void setColorOpaque(
final int r, final int r,
final int g, final int g,
final int b ) final int b )
{ {
final int alpha = 0xff; final int alpha = 0xff;
this.color =// alpha << 24 | this.color = // alpha << 24 |
r << 16 | r << 16 |
g << 8 | g << 8 |
b; b;
} }
@@ -194,8 +217,8 @@ public class ModelGenerator
final int b ) final int b )
{ {
final int alpha = 0xff; final int alpha = 0xff;
this.color = //alpha << 24 | this.color = // alpha << 24 |
Math.min( 0xff, Math.max( 0, r ) ) << 16 | Math.min( 0xff, Math.max( 0, r ) ) << 16 |
Math.min( 0xff, Math.max( 0, g ) ) << 8 | Math.min( 0xff, Math.max( 0, g ) ) << 8 |
Math.min( 0xff, Math.max( 0, b ) ); Math.min( 0xff, Math.max( 0, b ) );
} }
@@ -205,12 +228,12 @@ public class ModelGenerator
final float bf, final float bf,
final float gf ) final float gf )
{ {
final int r = (int)( rf * 0xff ); final int r = (int) ( rf * 0xff );
final int g = (int)( gf * 0xff ); final int g = (int) ( gf * 0xff );
final int b = (int)( bf * 0xff ); final int b = (int) ( bf * 0xff );
final int alpha = 0xff; final int alpha = 0xff;
this.color = //alpha << 24 | this.color = // alpha << 24 |
Math.min( 0xff, Math.max( 0, r ) ) << 16 | Math.min( 0xff, Math.max( 0, r ) ) << 16 |
Math.min( 0xff, Math.max( 0, g ) ) << 8 | Math.min( 0xff, Math.max( 0, g ) ) << 8 |
Math.min( 0xff, Math.max( 0, b ) ); Math.min( 0xff, Math.max( 0, b ) );
} }
@@ -220,74 +243,74 @@ public class ModelGenerator
{ {
final Item it = is.getItem(); final Item it = is.getItem();
if ( it instanceof ItemMultiPart ) if( it instanceof ItemMultiPart )
return ( (ItemMultiPart) it).getIcon( is); return ( (ItemMultiPart) it ).getIcon( is );
final Block blk = Block.getBlockFromItem( it ); final Block blk = Block.getBlockFromItem( it );
if ( blk != null ) if( blk != null )
return this.getIcon(blk.getStateFromMeta( is.getMetadata() ))[0]; return this.getIcon( blk.getStateFromMeta( is.getMetadata() ) )[0];
if ( it instanceof AEBaseItem ) if( it instanceof AEBaseItem )
{ {
final IAESprite ico = ( (AEBaseItem)it ).getIcon(is); final IAESprite ico = ( (AEBaseItem) it ).getIcon( is );
if ( ico != null ) return ico; if( ico != null )
return ico;
} }
return new MissingIcon( is ); return new MissingIcon( is );
} }
public IAESprite[] getIcon( public IAESprite[] getIcon(
final IBlockState state ) final IBlockState state )
{ {
final IAESprite[] out = new IAESprite[6]; final IAESprite[] out = new IAESprite[6];
final Block blk = state.getBlock(); final Block blk = state.getBlock();
if ( blk instanceof AEBaseBlock ) if( blk instanceof AEBaseBlock )
{ {
final AEBaseBlock base = (AEBaseBlock)blk; final AEBaseBlock base = (AEBaseBlock) blk;
for ( final EnumFacing face : EnumFacing.VALUES ) for( final EnumFacing face : EnumFacing.VALUES )
out[face.ordinal()] = base.getIcon( face, state ); out[face.ordinal()] = base.getIcon( face, state );
} }
else else
{ {
final TextureAtlasSprite spite = Minecraft.getMinecraft().getBlockRendererDispatcher().getBlockModelShapes().getTexture( state ); final TextureAtlasSprite spite = Minecraft.getMinecraft().getBlockRendererDispatcher().getBlockModelShapes().getTexture( state );
if ( spite == null ) if( spite == null )
{ {
out[0] = new MissingIcon( blk ); out[0] = new MissingIcon( blk );
out[1] = new MissingIcon( blk ); out[1] = new MissingIcon( blk );
out[2] = new MissingIcon( blk ); out[2] = new MissingIcon( blk );
out[3] = new MissingIcon( blk ); out[3] = new MissingIcon( blk );
out[4] = new MissingIcon( blk ); out[4] = new MissingIcon( blk );
out[5] = new MissingIcon( blk ); out[5] = new MissingIcon( blk );
} }
else else
{ {
final IAESprite mySpite = new BaseIcon( spite ); final IAESprite mySpite = new BaseIcon( spite );
out[0] = mySpite; out[0] = mySpite;
out[1] = mySpite; out[1] = mySpite;
out[2] = mySpite; out[2] = mySpite;
out[3] = mySpite; out[3] = mySpite;
out[4] = mySpite; out[4] = mySpite;
out[5] = mySpite; out[5] = mySpite;
} }
} }
return out; return out;
} }
public IAESprite[] getIcon( final IBlockAccess world, final BlockPos pos) public IAESprite[] getIcon( final IBlockAccess world, final BlockPos pos )
{ {
final IBlockState state = world.getBlockState( pos ); final IBlockState state = world.getBlockState( pos );
final Block blk = state.getBlock(); final Block blk = state.getBlock();
if ( blk instanceof AEBaseBlock ) if( blk instanceof AEBaseBlock )
{ {
final IAESprite[] out = new IAESprite[6]; final IAESprite[] out = new IAESprite[6];
final AEBaseBlock base = (AEBaseBlock)blk; final AEBaseBlock base = (AEBaseBlock) blk;
for ( final EnumFacing face : EnumFacing.VALUES ) for( final EnumFacing face : EnumFacing.VALUES )
out[face.ordinal()] = base.getIcon( world, pos, face ); out[face.ordinal()] = base.getIcon( world, pos, face );
return out; return out;
@@ -296,10 +319,6 @@ public class ModelGenerator
return this.getIcon( state ); return this.getIcon( state );
} }
int point =0;
int brightness = -1;
float[][] points = new float[4][];
public void addVertexWithUV( public void addVertexWithUV(
final EnumFacing face, final EnumFacing face,
final double x, final double x,
@@ -308,48 +327,48 @@ public class ModelGenerator
final double u, final double u,
final double v ) final double v )
{ {
this.points[this.point++] = new float[]{ (float)x+ this.tx, (float)y+ this.ty, (float)z+ this.tz, (float)u, (float)v }; this.points[this.point++] = new float[] { (float) x + this.tx, (float) y + this.ty, (float) z + this.tz, (float) u, (float) v };
if ( this.point == 4 ) if( this.point == 4 )
{ {
this.brightness = -1; this.brightness = -1;
final int[] vertData = { final int[] vertData = {
Float.floatToRawIntBits( this.points[0][0] ), Float.floatToRawIntBits( this.points[0][0] ),
Float.floatToRawIntBits( this.points[0][1] ), Float.floatToRawIntBits( this.points[0][1] ),
Float.floatToRawIntBits( this.points[0][2] ), Float.floatToRawIntBits( this.points[0][2] ),
this.brightness, this.brightness,
Float.floatToRawIntBits( this.points[0][3] ), Float.floatToRawIntBits( this.points[0][3] ),
Float.floatToRawIntBits( this.points[0][4] ), Float.floatToRawIntBits( this.points[0][4] ),
0, 0,
Float.floatToRawIntBits( this.points[1][0] ), Float.floatToRawIntBits( this.points[1][0] ),
Float.floatToRawIntBits( this.points[1][1] ), Float.floatToRawIntBits( this.points[1][1] ),
Float.floatToRawIntBits( this.points[1][2] ), Float.floatToRawIntBits( this.points[1][2] ),
this.brightness, this.brightness,
Float.floatToRawIntBits( this.points[1][3] ), Float.floatToRawIntBits( this.points[1][3] ),
Float.floatToRawIntBits( this.points[1][4] ), Float.floatToRawIntBits( this.points[1][4] ),
0, 0,
Float.floatToRawIntBits( this.points[2][0] ), Float.floatToRawIntBits( this.points[2][0] ),
Float.floatToRawIntBits( this.points[2][1] ), Float.floatToRawIntBits( this.points[2][1] ),
Float.floatToRawIntBits( this.points[2][2] ), Float.floatToRawIntBits( this.points[2][2] ),
this.brightness, this.brightness,
Float.floatToRawIntBits( this.points[2][3] ), Float.floatToRawIntBits( this.points[2][3] ),
Float.floatToRawIntBits( this.points[2][4] ), Float.floatToRawIntBits( this.points[2][4] ),
0, 0,
Float.floatToRawIntBits( this.points[3][0] ), Float.floatToRawIntBits( this.points[3][0] ),
Float.floatToRawIntBits( this.points[3][1] ), Float.floatToRawIntBits( this.points[3][1] ),
Float.floatToRawIntBits( this.points[3][2] ), Float.floatToRawIntBits( this.points[3][2] ),
this.brightness, this.brightness,
Float.floatToRawIntBits( this.points[3][3] ), Float.floatToRawIntBits( this.points[3][3] ),
Float.floatToRawIntBits( this.points[3][4] ), Float.floatToRawIntBits( this.points[3][4] ),
0, 0,
}; };
this.generatedModel.general.add( new IColoredBakedQuad.ColoredBakedQuad( vertData, this.color, face )); this.generatedModel.general.add( new IColoredBakedQuad.ColoredBakedQuad( vertData, this.color, face ) );
this.point =0; this.point = 0;
} }
} }
@@ -357,9 +376,9 @@ public class ModelGenerator
final Block block, final Block block,
final BlockPos pos ) final BlockPos pos )
{ {
//setRenderBoundsFromBlock( block ); // setRenderBoundsFromBlock( block );
final IAESprite[] textures = this.getIcon( this.blockAccess,pos ); final IAESprite[] textures = this.getIcon( this.getBlockAccess(), pos );
this.setColorOpaque_I( 0xffffff ); this.setColorOpaque_I( 0xffffff );
this.renderFaceXNeg( block, pos, textures[EnumFacing.WEST.ordinal()] ); this.renderFaceXNeg( block, pos, textures[EnumFacing.WEST.ordinal()] );
@@ -377,9 +396,9 @@ public class ModelGenerator
final int y, final int y,
final int z ) final int z )
{ {
this.tx =x; this.tx = x;
this.ty =y; this.ty = y;
this.tz =z; this.tz = z;
} }
public boolean isAlphaPass() public boolean isAlphaPass()
@@ -387,31 +406,17 @@ public class ModelGenerator
return MinecraftForgeClient.getRenderLayer() == EnumWorldBlockLayer.TRANSLUCENT; return MinecraftForgeClient.getRenderLayer() == EnumWorldBlockLayer.TRANSLUCENT;
} }
final float[] quadsUV = {
0,
0,
1,
1,
0,
0,
1,
1
};
public EnumSet<EnumFacing> renderFaces = EnumSet.allOf(EnumFacing.class);
public boolean flipTexture=false;
private List<SMFace> faces = new ArrayList();
private float[] getFaceUvs( private float[] getFaceUvs(
final EnumFacing face, final EnumFacing face,
final Vector3f to_16, final Vector3f to_16,
final Vector3f from_16 ) final Vector3f from_16 )
{ {
float from_a = 0; float from_a = 0;
float from_b = 0; float from_b = 0;
float to_a = 0; float to_a = 0;
float to_b = 0; float to_b = 0;
switch ( face ) switch( face )
{ {
case UP: case UP:
from_a = from_16.x / 16.0f; from_a = from_16.x / 16.0f;
@@ -479,12 +484,12 @@ public class ModelGenerator
final BlockPos pos, final BlockPos pos,
final IAESprite lights ) final IAESprite lights )
{ {
final boolean isEdge = this.renderMinX < 0.0001; final boolean isEdge = this.getRenderMinX() < 0.0001;
final Vector3f to = new Vector3f( (float) this.renderMinX * 16.0f, (float) this.renderMinY * 16.0f, (float) this.renderMinZ * 16.0f); final Vector3f to = new Vector3f( (float) this.getRenderMinX() * 16.0f, (float) this.getRenderMinY() * 16.0f, (float) this.getRenderMinZ() * 16.0f );
final Vector3f from = new Vector3f( (float) this.renderMinX * 16.0f, (float) this.renderMaxY * 16.0f, (float) this.renderMaxZ * 16.0f); final Vector3f from = new Vector3f( (float) this.getRenderMinX() * 16.0f, (float) this.getRenderMaxY() * 16.0f, (float) this.getRenderMaxZ() * 16.0f );
final EnumFacing myFace = EnumFacing.WEST; final EnumFacing myFace = EnumFacing.WEST;
this.addFace(myFace, isEdge,to,from, this.defUVs,lights ); this.addFace( myFace, isEdge, to, from, this.defUVs, lights );
} }
public void renderFaceYNeg( public void renderFaceYNeg(
@@ -492,12 +497,12 @@ public class ModelGenerator
final BlockPos pos, final BlockPos pos,
final IAESprite lights ) final IAESprite lights )
{ {
final boolean isEdge = this.renderMinY < 0.0001; final boolean isEdge = this.getRenderMinY() < 0.0001;
final Vector3f to = new Vector3f( (float) this.renderMinX * 16.0f, (float) this.renderMinY * 16.0f, (float) this.renderMinZ * 16.0f ); final Vector3f to = new Vector3f( (float) this.getRenderMinX() * 16.0f, (float) this.getRenderMinY() * 16.0f, (float) this.getRenderMinZ() * 16.0f );
final Vector3f from = new Vector3f( (float) this.renderMaxX * 16.0f, (float) this.renderMinY * 16.0f, (float) this.renderMaxZ * 16.0f ); final Vector3f from = new Vector3f( (float) this.getRenderMaxX() * 16.0f, (float) this.getRenderMinY() * 16.0f, (float) this.getRenderMaxZ() * 16.0f );
final EnumFacing myFace = EnumFacing.DOWN; final EnumFacing myFace = EnumFacing.DOWN;
this.addFace(myFace, isEdge,to,from, this.defUVs, lights ); this.addFace( myFace, isEdge, to, from, this.defUVs, lights );
} }
public void renderFaceZNeg( public void renderFaceZNeg(
@@ -505,12 +510,12 @@ public class ModelGenerator
final BlockPos pos, final BlockPos pos,
final IAESprite lights ) final IAESprite lights )
{ {
final boolean isEdge = this.renderMinZ < 0.0001; final boolean isEdge = this.getRenderMinZ() < 0.0001;
final Vector3f to = new Vector3f( (float) this.renderMinX * 16.0f, (float) this.renderMinY * 16.0f, (float) this.renderMinZ * 16.0f ); final Vector3f to = new Vector3f( (float) this.getRenderMinX() * 16.0f, (float) this.getRenderMinY() * 16.0f, (float) this.getRenderMinZ() * 16.0f );
final Vector3f from = new Vector3f( (float) this.renderMaxX * 16.0f, (float) this.renderMaxY * 16.0f, (float) this.renderMinZ * 16.0f ); final Vector3f from = new Vector3f( (float) this.getRenderMaxX() * 16.0f, (float) this.getRenderMaxY() * 16.0f, (float) this.getRenderMinZ() * 16.0f );
final EnumFacing myFace = EnumFacing.NORTH; final EnumFacing myFace = EnumFacing.NORTH;
this.addFace(myFace, isEdge,to,from, this.defUVs, lights ); this.addFace( myFace, isEdge, to, from, this.defUVs, lights );
} }
public void renderFaceYPos( public void renderFaceYPos(
@@ -518,12 +523,12 @@ public class ModelGenerator
final BlockPos pos, final BlockPos pos,
final IAESprite lights ) final IAESprite lights )
{ {
final boolean isEdge = this.renderMaxY > 0.9999; final boolean isEdge = this.getRenderMaxY() > 0.9999;
final Vector3f to = new Vector3f( (float) this.renderMinX * 16.0f, (float) this.renderMaxY * 16.0f, (float) this.renderMinZ * 16.0f ); final Vector3f to = new Vector3f( (float) this.getRenderMinX() * 16.0f, (float) this.getRenderMaxY() * 16.0f, (float) this.getRenderMinZ() * 16.0f );
final Vector3f from = new Vector3f( (float) this.renderMaxX * 16.0f, (float) this.renderMaxY * 16.0f, (float) this.renderMaxZ * 16.0f); final Vector3f from = new Vector3f( (float) this.getRenderMaxX() * 16.0f, (float) this.getRenderMaxY() * 16.0f, (float) this.getRenderMaxZ() * 16.0f );
final EnumFacing myFace = EnumFacing.UP; final EnumFacing myFace = EnumFacing.UP;
this.addFace(myFace, isEdge,to,from, this.defUVs,lights ); this.addFace( myFace, isEdge, to, from, this.defUVs, lights );
} }
public void renderFaceZPos( public void renderFaceZPos(
@@ -531,12 +536,12 @@ public class ModelGenerator
final BlockPos pos, final BlockPos pos,
final IAESprite lights ) final IAESprite lights )
{ {
final boolean isEdge = this.renderMaxZ > 0.9999; final boolean isEdge = this.getRenderMaxZ() > 0.9999;
final Vector3f to = new Vector3f( (float) this.renderMinX * 16.0f, (float) this.renderMinY * 16.0f, (float) this.renderMaxZ * 16.0f ); final Vector3f to = new Vector3f( (float) this.getRenderMinX() * 16.0f, (float) this.getRenderMinY() * 16.0f, (float) this.getRenderMaxZ() * 16.0f );
final Vector3f from = new Vector3f( (float) this.renderMaxX * 16.0f, (float) this.renderMaxY * 16.0f, (float) this.renderMaxZ * 16.0f ); final Vector3f from = new Vector3f( (float) this.getRenderMaxX() * 16.0f, (float) this.getRenderMaxY() * 16.0f, (float) this.getRenderMaxZ() * 16.0f );
final EnumFacing myFace = EnumFacing.SOUTH; final EnumFacing myFace = EnumFacing.SOUTH;
this.addFace(myFace, isEdge,to,from, this.defUVs,lights ); this.addFace( myFace, isEdge, to, from, this.defUVs, lights );
} }
public void renderFaceXPos( public void renderFaceXPos(
@@ -544,45 +549,43 @@ public class ModelGenerator
final BlockPos pos, final BlockPos pos,
final IAESprite lights ) final IAESprite lights )
{ {
final boolean isEdge = this.renderMaxX > 0.9999; final boolean isEdge = this.getRenderMaxX() > 0.9999;
final Vector3f to = new Vector3f( (float) this.renderMaxX * 16.0f, (float) this.renderMinY * 16.0f, (float) this.renderMinZ * 16.0f ); final Vector3f to = new Vector3f( (float) this.getRenderMaxX() * 16.0f, (float) this.getRenderMinY() * 16.0f, (float) this.getRenderMinZ() * 16.0f );
final Vector3f from = new Vector3f( (float) this.renderMaxX * 16.0f, (float) this.renderMaxY * 16.0f, (float) this.renderMaxZ * 16.0f ); final Vector3f from = new Vector3f( (float) this.getRenderMaxX() * 16.0f, (float) this.getRenderMaxY() * 16.0f, (float) this.getRenderMaxZ() * 16.0f );
final EnumFacing myFace = EnumFacing.EAST; final EnumFacing myFace = EnumFacing.EAST;
this.addFace(myFace, isEdge,to,from, this.defUVs, lights ); this.addFace( myFace, isEdge, to, from, this.defUVs, lights );
} }
private void addFace( private void addFace(
final EnumFacing face , final boolean isEdge, final EnumFacing face, final boolean isEdge,
final Vector3f to, final Vector3f to,
final Vector3f from, final Vector3f from,
final float[] defUVs2, final float[] defUVs2,
IAESprite texture ) IAESprite texture )
{ {
if ( this.overrideBlockTexture != null ) if( this.getOverrideBlockTexture() != null )
texture = this.overrideBlockTexture; texture = this.getOverrideBlockTexture();
this.faces.add( new SMFace( face, isEdge, this.color, to, from, defUVs2, new IconUnwrapper( texture ) ) ); this.faces.add( new SMFace( face, isEdge, this.color, to, from, defUVs2, new IconUnwrapper( texture ) ) );
} }
EnumFacing currentFace = EnumFacing.UP;
public void setNormal( public void setNormal(
final float x, final float x,
final float y, final float y,
final float z ) final float z )
{ {
if ( x > 0.5 ) if( x > 0.5 )
this.currentFace = EnumFacing.EAST; this.currentFace = EnumFacing.EAST;
if ( x < -0.5 ) if( x < -0.5 )
this.currentFace = EnumFacing.WEST; this.currentFace = EnumFacing.WEST;
if ( y > 0.5 ) if( y > 0.5 )
this.currentFace = EnumFacing.UP; this.currentFace = EnumFacing.UP;
if ( y < -0.5 ) if( y < -0.5 )
this.currentFace = EnumFacing.DOWN; this.currentFace = EnumFacing.DOWN;
if ( z > 0.5 ) if( z > 0.5 )
this.currentFace = EnumFacing.SOUTH; this.currentFace = EnumFacing.SOUTH;
if ( z < -0.5 ) if( z < -0.5 )
this.currentFace = EnumFacing.NORTH; this.currentFace = EnumFacing.NORTH;
} }
@@ -596,21 +599,21 @@ public class ModelGenerator
{ {
ModelRotation mr = ModelRotation.X0_Y0; ModelRotation mr = ModelRotation.X0_Y0;
if ( Flip ) if( Flip )
mr = ModelRotation.X0_Y180; mr = ModelRotation.X0_Y180;
for ( final SMFace face : this.faces ) for( final SMFace face : this.faces )
{ {
final EnumFacing myFace = face.face; final EnumFacing myFace = face.getFace();
final float[] uvs = this.getFaceUvs( myFace, face.from, face.to ); final float[] uvs = this.getFaceUvs( myFace, face.getFrom(), face.getTo() );
final BlockFaceUV uv = new BlockFaceUV( uvs, 0 ); final BlockFaceUV uv = new BlockFaceUV( uvs, 0 );
final BlockPartFace bpf = new BlockPartFace( myFace, face.color, "", uv ); final BlockPartFace bpf = new BlockPartFace( myFace, face.getColor(), "", uv );
BakedQuad bf = this.faceBakery.makeBakedQuad( face.to, face.from, bpf, face.spite, myFace, mr, null, true, true ); BakedQuad bf = this.faceBakery.makeBakedQuad( face.getTo(), face.getFrom(), bpf, face.getSpite(), myFace, mr, null, true, true );
bf = new IColoredBakedQuad.ColoredBakedQuad( bf.getVertexData(), face.color, bf.getFace() ); bf = new IColoredBakedQuad.ColoredBakedQuad( bf.getVertexData(), face.getColor(), bf.getFace() );
if ( face.isEdge ) if( face.isEdge )
this.generatedModel.getFaceQuads( myFace ).add( bf ); this.generatedModel.getFaceQuads( myFace ).add( bf );
else else
this.generatedModel.getGeneralQuads().add( bf ); this.generatedModel.getGeneralQuads().add( bf );
@@ -622,4 +625,175 @@ public class ModelGenerator
return this.generatedModel; return this.generatedModel;
} }
public IAESprite getOverrideBlockTexture()
{
return overrideBlockTexture;
}
public IBlockAccess getBlockAccess()
{
return blockAccess;
}
public void setBlockAccess( IBlockAccess blockAccess )
{
this.blockAccess = blockAccess;
}
public boolean isRenderAllFaces()
{
return renderAllFaces;
}
public void setRenderAllFaces( boolean renderAllFaces )
{
this.renderAllFaces = renderAllFaces;
}
public int getUvRotateBottom()
{
return uvRotateBottom;
}
public int setUvRotateBottom( int uvRotateBottom )
{
this.uvRotateBottom = uvRotateBottom;
return uvRotateBottom;
}
public int getUvRotateEast()
{
return uvRotateEast;
}
public int setUvRotateEast( int uvRotateEast )
{
this.uvRotateEast = uvRotateEast;
return uvRotateEast;
}
public int getUvRotateNorth()
{
return uvRotateNorth;
}
public int setUvRotateNorth( int uvRotateNorth )
{
this.uvRotateNorth = uvRotateNorth;
return uvRotateNorth;
}
public int getUvRotateSouth()
{
return uvRotateSouth;
}
public int setUvRotateSouth( int uvRotateSouth )
{
this.uvRotateSouth = uvRotateSouth;
return uvRotateSouth;
}
public int getUvRotateTop()
{
return uvRotateTop;
}
public int setUvRotateTop( int uvRotateTop )
{
this.uvRotateTop = uvRotateTop;
return uvRotateTop;
}
public int getUvRotateWest()
{
return uvRotateWest;
}
public int setUvRotateWest( int uvRotateWest )
{
this.uvRotateWest = uvRotateWest;
return uvRotateWest;
}
public double getRenderMinX()
{
return renderMinX;
}
public void setRenderMinX( double renderMinX )
{
this.renderMinX = renderMinX;
}
public double getRenderMinY()
{
return renderMinY;
}
public void setRenderMinY( double renderMinY )
{
this.renderMinY = renderMinY;
}
public double getRenderMinZ()
{
return renderMinZ;
}
public void setRenderMinZ( double renderMinZ )
{
this.renderMinZ = renderMinZ;
}
public double getRenderMaxX()
{
return renderMaxX;
}
public void setRenderMaxX( double renderMaxX )
{
this.renderMaxX = renderMaxX;
}
public double getRenderMaxY()
{
return renderMaxY;
}
public void setRenderMaxY( double renderMaxY )
{
this.renderMaxY = renderMaxY;
}
public double getRenderMaxZ()
{
return renderMaxZ;
}
public void setRenderMaxZ( double renderMaxZ )
{
this.renderMaxZ = renderMaxZ;
}
public boolean isFlipTexture()
{
return flipTexture;
}
public void setFlipTexture( boolean flipTexture )
{
this.flipTexture = flipTexture;
}
public EnumSet<EnumFacing> getRenderFaces()
{
return renderFaces;
}
public void setRenderFaces( EnumSet<EnumFacing> renderFaces )
{
this.renderFaces = renderFaces;
}
} }
@@ -30,17 +30,31 @@ import net.minecraftforge.fml.relauncher.SideOnly;
public class RenderBlocksWorkaround extends ModelGenerator public class RenderBlocksWorkaround extends ModelGenerator
{ {
public boolean flipTexture; private boolean flipTexture;
public EnumSet<EnumFacing> faces; private EnumSet<EnumFacing> faces;
public boolean useTextures; private boolean useTextures;
public EnumSet<EnumFacing> renderFaces; private EnumSet<EnumFacing> renderFaces;
public float opacity; private float opacity;
public void setTexture( public void setTexture(
final Object object ) final Object object )
{ {
// TODO Auto-generated method stub // TODO Auto-generated method stub
}
public void setOpacity( float f )
{
this.opacity = f;
}
public EnumSet<EnumFacing> getFaces()
{
return faces;
}
public void setFaces( EnumSet<EnumFacing> faces )
{
this.faces = faces;
} }
} }
+32 -7
View File
@@ -8,17 +8,17 @@ import net.minecraft.util.EnumFacing;
public class SMFace public class SMFace
{ {
public final EnumFacing face; private final EnumFacing face;
public final boolean isEdge; private final boolean isEdge;
public final Vector3f to; private final Vector3f to;
public final Vector3f from; private final Vector3f from;
public final float[] uv; private final float[] uv;
public final TextureAtlasSprite spite; private final TextureAtlasSprite spite;
public final int color; private final int color;
public SMFace( public SMFace(
final EnumFacing face , final boolean isEdge, final EnumFacing face , final boolean isEdge,
@@ -37,4 +37,29 @@ public class SMFace
this.spite = iconUnwrapper; this.spite = iconUnwrapper;
} }
public int getColor()
{
return color;
}
public EnumFacing getFace()
{
return face;
}
public Vector3f getFrom()
{
return from;
}
public Vector3f getTo()
{
return to;
}
public TextureAtlasSprite getSpite()
{
return spite;
}
} }
@@ -37,8 +37,7 @@ import appeng.tile.AEBaseTile;
public class TESRWrapper extends TileEntitySpecialRenderer public class TESRWrapper extends TileEntitySpecialRenderer
{ {
public final ModelGenerator renderBlocksInstance = new ModelGenerator(); private final ModelGenerator renderBlocksInstance = new ModelGenerator();
private final BaseBlockRender blkRender; private final BaseBlockRender blkRender;
private final double maxDistance; private final double maxDistance;
@@ -68,7 +67,7 @@ public class TESRWrapper extends TileEntitySpecialRenderer
{ {
GL11.glPushMatrix(); GL11.glPushMatrix();
this.renderBlocksInstance.blockAccess = te.getWorld(); this.renderBlocksInstance.setBlockAccess( te.getWorld() );
this.blkRender.renderTile( (AEBaseBlock) b, (AEBaseTile) te, tess.getWorldRenderer(), x, y, z, f, this.renderBlocksInstance ); this.blkRender.renderTile( (AEBaseBlock) b, (AEBaseTile) te, tess.getWorldRenderer(), x, y, z, f, this.renderBlocksInstance );
GL11.glPopMatrix(); GL11.glPopMatrix();
@@ -36,10 +36,10 @@ import appeng.core.AELog;
public final class WorldRender implements ISimpleBlockRenderingHandler public final class WorldRender implements ISimpleBlockRenderingHandler
{ {
public static final WorldRender INSTANCE = new WorldRender(); private static final WorldRender INSTANCE = new WorldRender();
public final HashMap<AEBaseBlock, BaseBlockRender> blockRenders = new HashMap<AEBaseBlock, BaseBlockRender>(); private final HashMap<AEBaseBlock, BaseBlockRender> blockRenders = new HashMap<AEBaseBlock, BaseBlockRender>();
private final ModelGenerator renderer = new ModelGenerator(); private final ModelGenerator renderer = new ModelGenerator();
boolean hasError = false; private boolean hasError = false;
private WorldRender() private WorldRender()
{ {
@@ -66,10 +66,10 @@ public final class WorldRender implements ISimpleBlockRenderingHandler
private BaseBlockRender getRender( final AEBaseBlock block ) private BaseBlockRender getRender( final AEBaseBlock block )
{ {
return block.getRendererInstance().rendererInstance; return block.getRendererInstance().getRendererInstance();
} }
public void renderItemBlock( final ItemStack item, final ItemRenderType type, final Object[] data ) void renderItemBlock( final ItemStack item, final ItemRenderType type, final Object[] data )
{ {
final Block blk = Block.getBlockFromItem( item.getItem() ); final Block blk = Block.getBlockFromItem( item.getItem() );
if( blk instanceof AEBaseBlock ) if( blk instanceof AEBaseBlock )
@@ -77,9 +77,9 @@ public final class WorldRender implements ISimpleBlockRenderingHandler
final AEBaseBlock block = (AEBaseBlock) blk; final AEBaseBlock block = (AEBaseBlock) blk;
this.renderer.setRenderBoundsFromBlock( block ); this.renderer.setRenderBoundsFromBlock( block );
this.renderer.uvRotateBottom = this.renderer.uvRotateEast = this.renderer.uvRotateNorth = this.renderer.uvRotateSouth = this.renderer.uvRotateTop = this.renderer.uvRotateWest = 0; this.renderer.setUvRotateBottom( this.renderer.setUvRotateEast( this.renderer.setUvRotateNorth( this.renderer.setUvRotateSouth( this.renderer.setUvRotateTop( this.renderer.setUvRotateWest( 0 ) ) ) ) ) );
this.getRender( block ).renderInventory( block, item, this.renderer, type, data ); this.getRender( block ).renderInventory( block, item, this.renderer, type, data );
this.renderer.uvRotateBottom = this.renderer.uvRotateEast = this.renderer.uvRotateNorth = this.renderer.uvRotateSouth = this.renderer.uvRotateTop = this.renderer.uvRotateWest = 0; this.renderer.setUvRotateBottom( this.renderer.setUvRotateEast( this.renderer.setUvRotateNorth( this.renderer.setUvRotateSouth( this.renderer.setUvRotateTop( this.renderer.setUvRotateWest( 0 ) ) ) ) ) );
} }
else else
{ {
@@ -87,16 +87,16 @@ public class RenderBlockAssembler extends BaseBlockRender<BlockMolecularAssemble
this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer ); this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer );
this.setInvRenderBounds( renderer, 14, 14, 0, 16, 16, 14 ); this.setInvRenderBounds( renderer, 14, 14, 0, 16, 16, 14 );
this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer ); this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer );
this.setInvRenderBounds( renderer, 14, 2, 0, 16, 14, 2 ); this.setInvRenderBounds( renderer, 14, 2, 0, 16, 14, 2 );
this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer ); this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer );
this.setInvRenderBounds( renderer, 0, 2, 14, 2, 14, 16 ); this.setInvRenderBounds( renderer, 0, 2, 14, 2, 14, 16 );
this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer ); this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer );
this.setInvRenderBounds( renderer, 1, 1, 1, 15, 15, 15 ); this.setInvRenderBounds( renderer, 1, 1, 1, 15, 15, 15 );
this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer ); this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer );
renderer.setOverrideBlockTexture( null ); renderer.setOverrideBlockTexture( null );
} }
@@ -106,7 +106,7 @@ public class RenderBlockAssembler extends BaseBlockRender<BlockMolecularAssemble
{ {
final TileMolecularAssembler tma = maBlock.getTileEntity( world, pos ); final TileMolecularAssembler tma = maBlock.getTileEntity( world, pos );
if ( renderer.isAlphaPass() ) if( renderer.isAlphaPass() )
{ {
if( tma.isPowered() ) if( tma.isPowered() )
{ {
@@ -125,9 +125,9 @@ public class RenderBlockAssembler extends BaseBlockRender<BlockMolecularAssemble
return false; return false;
} }
//BusRenderer.INSTANCE.renderer.blockAccess = renderer.blockAccess; // BusRenderer.INSTANCE.renderer.blockAccess = renderer.blockAccess;
//renderer = BusRenderer.INSTANCE.renderer; // renderer = BusRenderer.INSTANCE.renderer;
BusRenderer.INSTANCE.renderer=renderer; BusRenderer.INSTANCE.setRenderer( renderer );
this.preRenderInWorld( maBlock, world, pos, renderer ); this.preRenderInWorld( maBlock, world, pos, renderer );
@@ -137,12 +137,12 @@ public class RenderBlockAssembler extends BaseBlockRender<BlockMolecularAssemble
final EnumFacing fdz = te.getForward(); final EnumFacing fdz = te.getForward();
final EnumFacing fdx = Platform.crossProduct( fdz, fdy ).getOpposite(); final EnumFacing fdx = Platform.crossProduct( fdz, fdy ).getOpposite();
renderer.renderAllFaces = true; renderer.setRenderAllFaces( true );
this.renderCableAt( 0.11D, world, pos, maBlock, renderer, 0.141D, false ); this.renderCableAt( 0.11D, world, pos, maBlock, renderer, 0.141D, false );
this.renderCableAt( 0.188D, world, pos, maBlock, renderer, 0.1875D, true ); this.renderCableAt( 0.188D, world, pos, maBlock, renderer, 0.1875D, true );
maBlock.getRendererInstance().setTemporaryRenderIcon( renderer.getIcon( world.getBlockState( pos ) )[0] ); maBlock.getRendererInstance().setTemporaryRenderIcon( renderer.getIcon( world.getBlockState( pos ) )[0] );
this.renderBlockBounds( renderer, 2, 14, 0, 14, 16, 2, fdx, fdy, fdz ); this.renderBlockBounds( renderer, 2, 14, 0, 14, 16, 2, fdx, fdy, fdz );
renderer.renderStandardBlock( maBlock, pos ); renderer.renderStandardBlock( maBlock, pos );
@@ -186,14 +186,14 @@ public class RenderBlockAssembler extends BaseBlockRender<BlockMolecularAssemble
maBlock.getRendererInstance().setTemporaryRenderIcon( null ); maBlock.getRendererInstance().setTemporaryRenderIcon( null );
renderer.renderAllFaces = false; renderer.setRenderAllFaces( false );
this.postRenderInWorld( renderer ); this.postRenderInWorld( renderer );
return true; return true;
} }
public void renderCableAt( final double thickness, final IBlockAccess world, final BlockPos pos, final BlockMolecularAssembler block, final ModelGenerator renderer, final double pull, final boolean covered ) private void renderCableAt( final double thickness, final IBlockAccess world, final BlockPos pos, final BlockMolecularAssembler block, final ModelGenerator renderer, final double pull, final boolean covered )
{ {
IAESprite texture = null; IAESprite texture = null;
@@ -242,7 +242,7 @@ public class RenderBlockAssembler extends BaseBlockRender<BlockMolecularAssemble
block.getRendererInstance().setTemporaryRenderIcon( null ); block.getRendererInstance().setTemporaryRenderIcon( null );
} }
IAESprite getConnectedCable( final IBlockAccess world, final BlockPos pos, final EnumFacing side, final boolean covered, final ModelGenerator renderer ) private IAESprite getConnectedCable( final IBlockAccess world, final BlockPos pos, final EnumFacing side, final boolean covered, final ModelGenerator renderer )
{ {
final int tileYPos = pos.getY() + side.getFrontOffsetY(); final int tileYPos = pos.getY() + side.getFrontOffsetY();
if( -1 < tileYPos && tileYPos < 256 ) if( -1 < tileYPos && tileYPos < 256 )
@@ -259,9 +259,9 @@ public class RenderBlockAssembler extends BaseBlockRender<BlockMolecularAssemble
{ {
if( covered ) if( covered )
{ {
return pc.getCoveredTexture( pc.getCableColor(),renderer ); return pc.getCoveredTexture( pc.getCableColor(), renderer );
} }
return pc.getGlassTexture( pc.getCableColor(),renderer ); return pc.getGlassTexture( pc.getCableColor(), renderer );
} }
} }
} }
@@ -56,7 +56,7 @@ public class RenderBlockCharger extends BaseBlockRender<BlockCharger, TileCharge
@Override @Override
public void renderInventory( final BlockCharger blk, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj ) public void renderInventory( final BlockCharger blk, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj )
{ {
renderer.renderAllFaces = true; renderer.setRenderAllFaces( true );
this.setInvRenderBounds( renderer, 6, 1, 0, 10, 15, 2 ); this.setInvRenderBounds( renderer, 6, 1, 0, 10, 15, 2 );
this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer ); this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer );
@@ -78,7 +78,7 @@ public class RenderBlockCharger extends BaseBlockRender<BlockCharger, TileCharge
this.setInvRenderBounds( renderer, 3, 12, 3, 13, 13, 13 ); this.setInvRenderBounds( renderer, 3, 12, 3, 13, 13, 13 );
this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer ); this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer );
renderer.renderAllFaces = false; renderer.setRenderAllFaces( false );
blk.getRendererInstance().setTemporaryRenderIcon( null ); blk.getRendererInstance().setTemporaryRenderIcon( null );
} }
@@ -93,7 +93,7 @@ public class RenderBlockCharger extends BaseBlockRender<BlockCharger, TileCharge
final EnumFacing fdz = te.getForward(); final EnumFacing fdz = te.getForward();
final EnumFacing fdx = Platform.crossProduct( fdz, fdy ).getOpposite(); final EnumFacing fdx = Platform.crossProduct( fdz, fdy ).getOpposite();
renderer.renderAllFaces = true; renderer.setRenderAllFaces( true );
this.renderBlockBounds( renderer, 6, 1, 0, 10, 15, 2, fdx, fdy, fdz ); this.renderBlockBounds( renderer, 6, 1, 0, 10, 15, 2, fdx, fdy, fdz );
boolean out = renderer.renderStandardBlock( block, pos ); boolean out = renderer.renderStandardBlock( block, pos );
@@ -115,7 +115,7 @@ public class RenderBlockCharger extends BaseBlockRender<BlockCharger, TileCharge
this.renderBlockBounds( renderer, 3, 12, 3, 13, 13, 13, fdx, fdy, fdz ); this.renderBlockBounds( renderer, 3, 12, 3, 13, 13, 13, fdx, fdy, fdz );
out = renderer.renderStandardBlock( block, pos ); out = renderer.renderStandardBlock( block, pos );
renderer.renderAllFaces = false; renderer.setRenderAllFaces( false );
block.getRendererInstance().setTemporaryRenderIcon( null ); block.getRendererInstance().setTemporaryRenderIcon( null );
this.postRenderInWorld( renderer ); this.postRenderInWorld( renderer );
@@ -73,10 +73,10 @@ public class RenderBlockController extends BaseBlockRender<BlockController, Tile
blk.getRendererInstance().setTemporaryRenderIcon( ExtraBlockTextures.BlockControllerColumn.getIcon() ); blk.getRendererInstance().setTemporaryRenderIcon( ExtraBlockTextures.BlockControllerColumn.getIcon() );
} }
renderer.uvRotateEast = 1; renderer.setUvRotateEast( 1 );
renderer.uvRotateWest = 1; renderer.setUvRotateWest( 1 );
renderer.uvRotateTop = 1; renderer.setUvRotateTop( 1 );
renderer.uvRotateBottom = 1; renderer.setUvRotateBottom( 1 );
} }
else if( !xx && yy && !zz ) else if( !xx && yy && !zz )
{ {
@@ -97,8 +97,8 @@ public class RenderBlockController extends BaseBlockRender<BlockController, Tile
blk.getRendererInstance().setTemporaryRenderIcon( ExtraBlockTextures.BlockControllerColumn.getIcon() ); blk.getRendererInstance().setTemporaryRenderIcon( ExtraBlockTextures.BlockControllerColumn.getIcon() );
} }
renderer.uvRotateEast = 0; renderer.setUvRotateEast( 0 );
renderer.uvRotateNorth = 0; renderer.setUvRotateNorth( 0 );
} }
else if( !xx && !yy && zz ) else if( !xx && !yy && zz )
{ {
@@ -119,14 +119,14 @@ public class RenderBlockController extends BaseBlockRender<BlockController, Tile
blk.getRendererInstance().setTemporaryRenderIcon( ExtraBlockTextures.BlockControllerColumn.getIcon() ); blk.getRendererInstance().setTemporaryRenderIcon( ExtraBlockTextures.BlockControllerColumn.getIcon() );
} }
renderer.uvRotateNorth = 1; renderer.setUvRotateNorth( 1 );
renderer.uvRotateSouth = 1; renderer.setUvRotateSouth( 1 );
renderer.uvRotateTop = 0; renderer.setUvRotateTop( 0 );
} }
else if( ( xx ? 1 : 0 ) + ( yy ? 1 : 0 ) + ( zz ? 1 : 0 ) >= 2 ) else if( ( xx ? 1 : 0 ) + ( yy ? 1 : 0 ) + ( zz ? 1 : 0 ) >= 2 )
{ {
final int v = ( Math.abs( pos.getX() ) + Math.abs( pos.getY() ) + Math.abs( pos.getZ() ) ) % 2; final int v = ( Math.abs( pos.getX() ) + Math.abs( pos.getY() ) + Math.abs( pos.getZ() ) ) % 2;
renderer.uvRotateEast = renderer.uvRotateBottom = renderer.uvRotateNorth = renderer.uvRotateSouth = renderer.uvRotateTop = renderer.uvRotateWest = 0; renderer.setUvRotateEast( renderer.setUvRotateBottom( renderer.setUvRotateNorth( renderer.setUvRotateSouth( renderer.setUvRotateTop( renderer.setUvRotateWest( 0 ) ) ) ) ) );
if( v == 0 ) if( v == 0 )
{ {
@@ -171,7 +171,7 @@ public class RenderBlockController extends BaseBlockRender<BlockController, Tile
} }
blk.getRendererInstance().setTemporaryRenderIcon( null ); blk.getRendererInstance().setTemporaryRenderIcon( null );
renderer.uvRotateEast = renderer.uvRotateBottom = renderer.uvRotateNorth = renderer.uvRotateSouth = renderer.uvRotateTop = renderer.uvRotateWest = 0; renderer.setUvRotateEast( renderer.setUvRotateBottom( renderer.setUvRotateNorth( renderer.setUvRotateSouth( renderer.setUvRotateTop( renderer.setUvRotateWest( 0 ) ) ) ) ) );
return out; return out;
} }
@@ -75,7 +75,7 @@ public class RenderBlockCraftingCPU<B extends BlockCraftingUnit, T extends TileC
int meta = 1; int meta = 1;
for( final Block craftingBlock : AEApi.instance().definitions().blocks().craftingUnit().maybeBlock().asSet() ) for( final Block craftingBlock : AEApi.instance().definitions().blocks().craftingUnit().maybeBlock().asSet() )
{ {
if ( craftingBlock == blk ) if( craftingBlock == blk )
meta = 0; meta = 0;
} }
@@ -84,16 +84,23 @@ public class RenderBlockCraftingCPU<B extends BlockCraftingUnit, T extends TileC
{ {
for( final Block craftingBlock : AEApi.instance().definitions().blocks().craftingUnit().maybeBlock().asSet() ) for( final Block craftingBlock : AEApi.instance().definitions().blocks().craftingUnit().maybeBlock().asSet() )
{ {
nonForward = renderer.getIcon( craftingBlock.getDefaultState() )[EnumFacing.SOUTH.ordinal()]; // craftingBlock.getIcon( 0, meta | ( formed ? 8 : 0 ) ); nonForward = renderer.getIcon( craftingBlock.getDefaultState() )[EnumFacing.SOUTH.ordinal()]; // craftingBlock.getIcon(
// 0,
// meta
// | (
// formed
// ? 8 :
// 0 )
// );
} }
} }
if( formed && renderer.overrideBlockTexture == null ) if( formed && renderer.getOverrideBlockTexture() == null )
{ {
renderer = BusRenderer.INSTANCE.renderer; renderer = BusRenderer.INSTANCE.getRenderer();
final BusRenderHelper i = BusRenderHelper.INSTANCE; final BusRenderHelper i = BusRenderHelper.INSTANCE;
renderer.blockAccess = w; renderer.setBlockAccess( w );
i.setPass( MinecraftForgeClient.getRenderLayer() == EnumWorldBlockLayer.TRANSLUCENT ? 1 : 0 ); i.setPass( MinecraftForgeClient.getRenderLayer() == EnumWorldBlockLayer.TRANSLUCENT ? 1 : 0 );
i.setOrientation( EnumFacing.EAST, EnumFacing.UP, EnumFacing.SOUTH ); i.setOrientation( EnumFacing.EAST, EnumFacing.UP, EnumFacing.SOUTH );
@@ -129,7 +136,7 @@ public class RenderBlockCraftingCPU<B extends BlockCraftingUnit, T extends TileC
this.handleSide( blk, meta, pos, i, renderer, ct.getForward() == side ? theIcon : nonForward, LocalEmit, isMonitor, side, w ); this.handleSide( blk, meta, pos, i, renderer, ct.getForward() == side ? theIcon : nonForward, LocalEmit, isMonitor, side, w );
} }
//BusRenderer.INSTANCE.renderer.isFacade = false; // BusRenderer.INSTANCE.renderer.isFacade = false;
i.setFacesToRender( EnumSet.allOf( EnumFacing.class ) ); i.setFacesToRender( EnumSet.allOf( EnumFacing.class ) );
return true; return true;
@@ -305,41 +312,41 @@ public class RenderBlockCraftingCPU<B extends BlockCraftingUnit, T extends TileC
switch( a ) switch( a )
{ {
case DOWN: case DOWN:
renderer.renderMinY = 0; renderer.setRenderMinY( 0 );
renderer.renderMaxY = width; renderer.setRenderMaxY( width );
break; break;
case EAST: case EAST:
renderer.renderMaxX = 1; renderer.setRenderMaxX( 1 );
renderer.renderMinX = 1.0 - width; renderer.setRenderMinX( 1.0 - width );
renderer.uvRotateTop = 1; renderer.setUvRotateTop( 1 );
renderer.uvRotateBottom = 1; renderer.setUvRotateBottom( 1 );
renderer.uvRotateWest = 1; renderer.setUvRotateWest( 1 );
renderer.uvRotateEast = 1; renderer.setUvRotateEast( 1 );
break; break;
case NORTH: case NORTH:
renderer.renderMinZ = 0; renderer.setRenderMinZ( 0 );
renderer.renderMaxZ = width; renderer.setRenderMaxZ( width );
renderer.uvRotateWest = 1; renderer.setUvRotateWest( 1 );
renderer.uvRotateNorth = 1; renderer.setUvRotateNorth( 1 );
renderer.uvRotateSouth = 1; renderer.setUvRotateSouth( 1 );
break; break;
case SOUTH: case SOUTH:
renderer.renderMaxZ = 1; renderer.setRenderMaxZ( 1 );
renderer.renderMinZ = 1.0 - width; renderer.setRenderMinZ( 1.0 - width );
renderer.uvRotateNorth = 1; renderer.setUvRotateNorth( 1 );
renderer.uvRotateSouth = 1; renderer.setUvRotateSouth( 1 );
break; break;
case UP: case UP:
renderer.renderMaxY = 1; renderer.setRenderMaxY( 1 );
renderer.renderMinY = 1.0 - width; renderer.setRenderMinY( 1.0 - width );
break; break;
case WEST: case WEST:
renderer.renderMinX = 0; renderer.setRenderMinX( 0 );
renderer.renderMaxX = width; renderer.setRenderMaxX( width );
renderer.uvRotateTop = 1; renderer.setUvRotateTop( 1 );
renderer.uvRotateBottom = 1; renderer.setUvRotateBottom( 1 );
renderer.uvRotateWest = 1; renderer.setUvRotateWest( 1 );
renderer.uvRotateEast = 1; renderer.setUvRotateEast( 1 );
break; break;
default: default:
} }
@@ -63,10 +63,10 @@ public class RenderBlockCraftingCPUMonitor extends RenderBlockCraftingCPU<BlockC
{ {
final IAEItemStack ais = tile.getJobProgress(); final IAEItemStack ais = tile.getJobProgress();
if( tile.dspList == null ) if( tile.getDisplayList() == null )
{ {
tile.updateList = true; tile.setUpdateList( true );
tile.dspList = GLAllocation.generateDisplayLists( 1 ); tile.setDisplayList( GLAllocation.generateDisplayLists( 1 ) );
} }
if( ais != null ) if( ais != null )
@@ -74,16 +74,16 @@ public class RenderBlockCraftingCPUMonitor extends RenderBlockCraftingCPU<BlockC
GL11.glPushMatrix(); GL11.glPushMatrix();
GL11.glTranslated( x + 0.5, y + 0.5, z + 0.5 ); GL11.glTranslated( x + 0.5, y + 0.5, z + 0.5 );
if( tile.updateList ) if( tile.isUpdateList() )
{ {
tile.updateList = false; tile.setUpdateList( false );
GL11.glNewList( tile.dspList, GL11.GL_COMPILE_AND_EXECUTE ); GL11.glNewList( tile.getDisplayList(), GL11.GL_COMPILE_AND_EXECUTE );
this.tesrRenderScreen( tess, tile, ais ); this.tesrRenderScreen( tess, tile, ais );
GL11.glEndList(); GL11.glEndList();
} }
else else
{ {
GL11.glCallList( tile.dspList ); GL11.glCallList( tile.getDisplayList() );
} }
GL11.glPopMatrix(); GL11.glPopMatrix();
@@ -49,7 +49,7 @@ public class RenderBlockCrank extends BaseBlockRender<BlockCrank, TileCrank>
@Override @Override
public void renderInventory( final BlockCrank blk, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj ) public void renderInventory( final BlockCrank blk, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj )
{ {
renderer.renderAllFaces = true; renderer.setRenderAllFaces( true );
renderer.setRenderBounds( 0.5D - 0.05, 0.5D - 0.5, 0.5D - 0.05, 0.5D + 0.05, 0.5D + 0.3, 0.5D + 0.05 ); renderer.setRenderBounds( 0.5D - 0.05, 0.5D - 0.5, 0.5D - 0.05, 0.5D + 0.05, 0.5D + 0.3, 0.5D + 0.05 );
super.renderInventory( blk, is, renderer, type, obj ); super.renderInventory( blk, is, renderer, type, obj );
@@ -57,7 +57,7 @@ public class RenderBlockCrank extends BaseBlockRender<BlockCrank, TileCrank>
renderer.setRenderBounds( 0.70D - 0.15, 0.75D - 0.05, 0.5D - 0.05, 0.70D + 0.28, 0.75D + 0.05, 0.5D + 0.05 ); renderer.setRenderBounds( 0.70D - 0.15, 0.75D - 0.05, 0.5D - 0.05, 0.70D + 0.28, 0.75D + 0.05, 0.5D + 0.05 );
super.renderInventory( blk, is, renderer, type, obj ); super.renderInventory( blk, is, renderer, type, obj );
renderer.renderAllFaces = false; renderer.setRenderAllFaces( false );
} }
@Override @Override
@@ -90,7 +90,7 @@ public class RenderBlockCrank extends BaseBlockRender<BlockCrank, TileCrank>
this.applyTESRRotation( x, y, z, tile.getForward(), tile.getUp() ); this.applyTESRRotation( x, y, z, tile.getForward(), tile.getUp() );
GL11.glTranslated( 0.5, 0, 0.5 ); GL11.glTranslated( 0.5, 0, 0.5 );
GL11.glRotatef( tile.visibleRotation, 0, 1, 0 ); GL11.glRotatef( tile.getVisibleRotation(), 0, 1, 0 );
GL11.glScalef( -1, 1, 1 ); GL11.glScalef( -1, 1, 1 );
GL11.glTranslated( -0.5, 0, -0.5 ); GL11.glTranslated( -0.5, 0, -0.5 );
@@ -64,9 +64,9 @@ public class RenderBlockEnergyCube extends BaseBlockRender<BlockEnergyCell, Tile
@Override @Override
public boolean renderInWorld( final BlockEnergyCell blk, final IBlockAccess world, final BlockPos pos, final ModelGenerator renderer ) public boolean renderInWorld( final BlockEnergyCell blk, final IBlockAccess world, final BlockPos pos, final ModelGenerator renderer )
{ {
renderer.overrideBlockTexture = renderer.getIcon( world.getBlockState( pos ) )[0];// blk.getIcon( 0, meta ); renderer.setOverrideBlockTexture( renderer.getIcon( world.getBlockState( pos ) )[0] );// blk.getIcon( 0, meta );
final boolean out = renderer.renderStandardBlock( blk, pos ); final boolean out = renderer.renderStandardBlock( blk, pos );
renderer.overrideBlockTexture = null; renderer.setOverrideBlockTexture( null );
return out; return out;
} }
@@ -68,7 +68,7 @@ public class RenderBlockInscriber extends BaseBlockRender<BlockInscriber, TileIn
@Override @Override
public void renderInventory( final BlockInscriber blk, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj ) public void renderInventory( final BlockInscriber blk, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj )
{ {
renderer.renderAllFaces = true; renderer.setRenderAllFaces( true );
this.setInvRenderBounds( renderer, 6, 1, 0, 10, 15, 2 ); this.setInvRenderBounds( renderer, 6, 1, 0, 10, 15, 2 );
this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer ); this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer );
@@ -99,7 +99,7 @@ public class RenderBlockInscriber extends BaseBlockRender<BlockInscriber, TileIn
blk.getRendererInstance().setTemporaryRenderIcon( null ); blk.getRendererInstance().setTemporaryRenderIcon( null );
renderer.renderAllFaces = false; renderer.setRenderAllFaces( false );
// blk.getRendererInstance().setTemporaryRenderIcon( null ); // blk.getRendererInstance().setTemporaryRenderIcon( null );
} }
@@ -119,7 +119,7 @@ public class RenderBlockInscriber extends BaseBlockRender<BlockInscriber, TileIn
final EnumFacing fdz = te.getForward(); final EnumFacing fdz = te.getForward();
final EnumFacing fdx = Platform.crossProduct( fdz, fdy ).getOpposite(); final EnumFacing fdx = Platform.crossProduct( fdz, fdy ).getOpposite();
renderer.renderAllFaces = true; renderer.setRenderAllFaces( true );
// sides... // sides...
this.renderBlockBounds( renderer, 3, 1, 0, 13, 15, 3, fdx, fdy, fdz ); this.renderBlockBounds( renderer, 3, 1, 0, 13, 15, 3, fdx, fdy, fdz );
@@ -140,7 +140,7 @@ public class RenderBlockInscriber extends BaseBlockRender<BlockInscriber, TileIn
block.getRendererInstance().setTemporaryRenderIcon( null ); block.getRendererInstance().setTemporaryRenderIcon( null );
renderer.renderAllFaces = false; renderer.setRenderAllFaces( false );
block.getRendererInstance().setTemporaryRenderIcon( null ); block.getRendererInstance().setTemporaryRenderIcon( null );
this.postRenderInWorld( renderer ); this.postRenderInWorld( renderer );
@@ -170,13 +170,13 @@ public class RenderBlockInscriber extends BaseBlockRender<BlockInscriber, TileIn
long absoluteProgress = 0; long absoluteProgress = 0;
if( tile.smash ) if( tile.isSmash() )
{ {
final long currentTime = System.currentTimeMillis(); final long currentTime = System.currentTimeMillis();
absoluteProgress = currentTime - tile.clientStart; absoluteProgress = currentTime - tile.getClientStart();
if( absoluteProgress > 800 ) if( absoluteProgress > 800 )
{ {
tile.smash = false; tile.setSmash( false );
} }
} }
@@ -262,7 +262,7 @@ public class RenderBlockInscriber extends BaseBlockRender<BlockInscriber, TileIn
} }
} }
public void renderItem( ItemStack sis, final float o, final AEBaseBlock block, final AEBaseTile tile, final WorldRenderer tess, final double x, final double y, final double z, final float f, final ModelGenerator renderer ) private void renderItem( ItemStack sis, final float o, final AEBaseBlock block, final AEBaseTile tile, final WorldRenderer tess, final double x, final double y, final double z, final float f, final ModelGenerator renderer )
{ {
if( sis != null ) if( sis != null )
{ {
@@ -79,19 +79,19 @@ public class RenderBlockPaint extends BaseBlockRender<BlockPaint, TilePaint>
final int lumen = 14 << 20 | 14 << 4; final int lumen = 14 << 20 | 14 << 4;
for( final Splotch s : tp.getDots() ) for( final Splotch s : tp.getDots() )
{ {
if( !validSides.contains( s.side ) ) if( !validSides.contains( s.getSide() ) )
{ {
continue; continue;
} }
if( s.lumen ) if( s.isLumen() )
{ {
tess.setColorOpaque_I( s.color.whiteVariant ); tess.setColorOpaque_I( s.getColor().whiteVariant );
tess.setBrightness( lumen ); tess.setBrightness( lumen );
} }
else else
{ {
tess.setColorOpaque_I( s.color.mediumVariant ); tess.setColorOpaque_I( s.getColor().mediumVariant );
tess.setBrightness( brightness ); tess.setBrightness( brightness );
} }
@@ -106,13 +106,13 @@ public class RenderBlockPaint extends BaseBlockRender<BlockPaint, TilePaint>
pos_x = Math.max( buffer, Math.min( 1.0 - buffer, pos_x ) ); pos_x = Math.max( buffer, Math.min( 1.0 - buffer, pos_x ) );
pos_y = Math.max( buffer, Math.min( 1.0 - buffer, pos_y ) ); pos_y = Math.max( buffer, Math.min( 1.0 - buffer, pos_y ) );
if( s.side == EnumFacing.SOUTH || s.side == EnumFacing.NORTH ) if( s.getSide() == EnumFacing.SOUTH || s.getSide() == EnumFacing.NORTH )
{ {
pos_x += x; pos_x += x;
pos_y += y; pos_y += y;
} }
else if( s.side == EnumFacing.UP || s.side == EnumFacing.DOWN ) else if( s.getSide() == EnumFacing.UP || s.getSide() == EnumFacing.DOWN )
{ {
pos_x += x; pos_x += x;
pos_y += z; pos_y += z;
@@ -125,16 +125,16 @@ public class RenderBlockPaint extends BaseBlockRender<BlockPaint, TilePaint>
} }
final IAESprite ico = icoSet[s.getSeed() % icoSet.length]; final IAESprite ico = icoSet[s.getSeed() % icoSet.length];
final EnumFacing rs = s.side.getOpposite(); final EnumFacing rs = s.getSide().getOpposite();
switch( s.side ) switch( s.getSide() )
{ {
case UP: case UP:
offset = 1.0 - offset; offset = 1.0 - offset;
tess.addVertexWithUV( rs,pos_x - buffer, y + offset, pos_y - buffer, ico.getMinU(), ico.getMinV() ); tess.addVertexWithUV( rs, pos_x - buffer, y + offset, pos_y - buffer, ico.getMinU(), ico.getMinV() );
tess.addVertexWithUV( rs,pos_x + buffer, y + offset, pos_y - buffer, ico.getMaxU(), ico.getMinV() ); tess.addVertexWithUV( rs, pos_x + buffer, y + offset, pos_y - buffer, ico.getMaxU(), ico.getMinV() );
tess.addVertexWithUV( rs,pos_x + buffer, y + offset, pos_y + buffer, ico.getMaxU(), ico.getMaxV() ); tess.addVertexWithUV( rs, pos_x + buffer, y + offset, pos_y + buffer, ico.getMaxU(), ico.getMaxV() );
tess.addVertexWithUV( rs,pos_x - buffer, y + offset, pos_y + buffer, ico.getMinU(), ico.getMaxV() ); tess.addVertexWithUV( rs, pos_x - buffer, y + offset, pos_y + buffer, ico.getMinU(), ico.getMaxV() );
break; break;
case DOWN: case DOWN:
@@ -44,7 +44,7 @@ public class RenderBlockQuartzAccelerator extends BaseBlockRender<BlockQuartzGro
final TileEntity te = world.getTileEntity( pos ); final TileEntity te = world.getTileEntity( pos );
if( te instanceof TileQuartzGrowthAccelerator ) if( te instanceof TileQuartzGrowthAccelerator )
{ {
if( ( (TileQuartzGrowthAccelerator) te ).hasPower ) if( ( (TileQuartzGrowthAccelerator) te ).isPowered() )
{ {
final IAESprite top_Bottom = ExtraBlockTextures.BlockQuartzGrowthAcceleratorOn.getIcon(); final IAESprite top_Bottom = ExtraBlockTextures.BlockQuartzGrowthAcceleratorOn.getIcon();
final IAESprite side = ExtraBlockTextures.BlockQuartzGrowthAcceleratorSideOn.getIcon(); final IAESprite side = ExtraBlockTextures.BlockQuartzGrowthAcceleratorSideOn.getIcon();
@@ -89,7 +89,7 @@ public class RenderBlockSkyChest extends BaseBlockRender<BlockSkyChest, TileSkyC
@Override @Override
public void renderTile( final BlockSkyChest block, final TileSkyChest skyChest, final WorldRenderer tess, final double x, final double y, final double z, final float partialTick, final ModelGenerator renderer ) public void renderTile( final BlockSkyChest block, final TileSkyChest skyChest, final WorldRenderer tess, final double x, final double y, final double z, final float partialTick, final ModelGenerator renderer )
{ {
if( skyChest == null ) if( skyChest == null )
{ {
return; return;
} }
@@ -113,28 +113,28 @@ public class RenderBlockSkyChest extends BaseBlockRender<BlockSkyChest, TileSkyC
GL11.glTranslatef( -0.0F, -1.0F, -1.0F ); GL11.glTranslatef( -0.0F, -1.0F, -1.0F );
final long now = System.currentTimeMillis(); final long now = System.currentTimeMillis();
final long distance = now - skyChest.lastEvent; final long distance = now - skyChest.getLastEvent();
if( skyChest.playerOpen > 0 ) if( skyChest.getPlayerOpen() > 0 )
{ {
skyChest.lidAngle += distance * 0.0001; skyChest.setLidAngle( skyChest.getLidAngle() + distance * 0.0001f );
} }
else else
{ {
skyChest.lidAngle -= distance * 0.0001; skyChest.setLidAngle( skyChest.getLidAngle() - distance * 0.0001f );
} }
if( skyChest.lidAngle > 0.5f ) if( skyChest.getLidAngle() > 0.5f )
{ {
skyChest.lidAngle = 0.5f; skyChest.setLidAngle( 0.5f );
} }
if( skyChest.lidAngle < 0.0f ) if( skyChest.getLidAngle() < 0.0f )
{ {
skyChest.lidAngle = 0.0f; skyChest.setLidAngle( 0.0f );
} }
float lidAngle = skyChest.lidAngle; float lidAngle = skyChest.getLidAngle();
lidAngle = 1.0F - lidAngle; lidAngle = 1.0F - lidAngle;
lidAngle = 1.0F - lidAngle * lidAngle * lidAngle; lidAngle = 1.0F - lidAngle * lidAngle * lidAngle;
@@ -45,8 +45,7 @@ import appeng.tile.misc.TileSkyCompass;
public class RenderBlockSkyCompass extends BaseBlockRender<BlockSkyCompass, TileSkyCompass> public class RenderBlockSkyCompass extends BaseBlockRender<BlockSkyCompass, TileSkyCompass>
{ {
final ModelCompass model = new ModelCompass(); private final ModelCompass model = new ModelCompass();
float r = 0;
public RenderBlockSkyCompass() public RenderBlockSkyCompass()
{ {
@@ -57,122 +56,121 @@ public class RenderBlockSkyCompass extends BaseBlockRender<BlockSkyCompass, Tile
public void renderInventory( final BlockSkyCompass blk, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj ) public void renderInventory( final BlockSkyCompass blk, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj )
{ {
/* /*
if( type == ItemRenderType.INVENTORY ) * if( type == ItemRenderType.INVENTORY )
{ * {
boolean isGood = false; * boolean isGood = false;
* IInventory inv = Minecraft.getMinecraft().thePlayer.inventory;
IInventory inv = Minecraft.getMinecraft().thePlayer.inventory; * for( int x = 0; x < inv.getSizeInventory(); x++ )
for( int x = 0; x < inv.getSizeInventory(); x++ ) * {
{ * if( inv.getStackInSlot( x ) == is )
if( inv.getStackInSlot( x ) == is ) * {
{ * isGood = true;
isGood = true; * }
} * }
} * if( !isGood )
* {
if( !isGood ) * type = ItemRenderType.FIRST_PERSON_MAP;
{ * }
type = ItemRenderType.FIRST_PERSON_MAP; * }
} * GL11.glEnable( GL12.GL_RESCALE_NORMAL );
} * GL11.glColor4f( 1.0F, 1.0F, 1.0F, 1.0F );
* ResourceLocation loc = new ResourceLocation( "appliedenergistics2", "textures/models/compass.png" );
GL11.glEnable( GL12.GL_RESCALE_NORMAL ); * Minecraft.getMinecraft().getTextureManager().bindTexture( loc );
GL11.glColor4f( 1.0F, 1.0F, 1.0F, 1.0F ); * if( type == ItemRenderType.ENTITY )
* {
ResourceLocation loc = new ResourceLocation( "appliedenergistics2", "textures/models/compass.png" ); * GL11.glRotatef( -90.0f, 0.0f, 0.0f, 1.0f );
* GL11.glScalef( 1.0F, -1F, -1F );
Minecraft.getMinecraft().getTextureManager().bindTexture( loc ); * GL11.glScalef( 2.5f, 2.5f, 2.5f );
* GL11.glTranslatef( -0.25F, -1.65F, -0.19F );
if( type == ItemRenderType.ENTITY ) * }
{ * else
GL11.glRotatef( -90.0f, 0.0f, 0.0f, 1.0f ); * {
GL11.glScalef( 1.0F, -1F, -1F ); * if( type == ItemRenderType.EQUIPPED_FIRST_PERSON )
GL11.glScalef( 2.5f, 2.5f, 2.5f ); * {
GL11.glTranslatef( -0.25F, -1.65F, -0.19F ); * GL11.glRotatef( 15.3f, 0.0f, 0.0f, 1.0f );
} * }
else * GL11.glScalef( 1.0F, -1F, -1F );
{ * GL11.glScalef( 2.5f, 2.5f, 2.5f );
if( type == ItemRenderType.EQUIPPED_FIRST_PERSON ) * if( type == ItemRenderType.EQUIPPED_FIRST_PERSON )
{ * {
GL11.glRotatef( 15.3f, 0.0f, 0.0f, 1.0f ); * GL11.glTranslatef( 0.3F, -1.65F, -0.19F );
} * }
* else
GL11.glScalef( 1.0F, -1F, -1F ); * {
GL11.glScalef( 2.5f, 2.5f, 2.5f ); * GL11.glTranslatef( 0.2F, -1.65F, -0.19F );
* }
if( type == ItemRenderType.EQUIPPED_FIRST_PERSON ) * }
{ * long now = System.currentTimeMillis();
GL11.glTranslatef( 0.3F, -1.65F, -0.19F ); * if( type == ItemRenderType.EQUIPPED_FIRST_PERSON || type == ItemRenderType.INVENTORY || type ==
} * ItemRenderType.EQUIPPED )
else * {
{ * EntityPlayer p = Minecraft.getMinecraft().thePlayer;
GL11.glTranslatef( 0.2F, -1.65F, -0.19F ); * float rYaw = p.rotationYaw;
} * if( type == ItemRenderType.EQUIPPED )
} * {
* p = (EntityPlayer) obj[1];
long now = System.currentTimeMillis(); * rYaw = p.renderYawOffset;
if( type == ItemRenderType.EQUIPPED_FIRST_PERSON || type == ItemRenderType.INVENTORY || type == ItemRenderType.EQUIPPED ) * }
{ * int x = (int) p.posX;
EntityPlayer p = Minecraft.getMinecraft().thePlayer; * int y = (int) p.posY;
float rYaw = p.rotationYaw; * int z = (int) p.posZ;
* CompassResult cr = CompassManager.INSTANCE.getCompassDirection( 0, x, y, z );
if( type == ItemRenderType.EQUIPPED ) * for( int i = 0; i < 3; i++ )
{ * {
p = (EntityPlayer) obj[1]; * for( int j = 0; j < 3; j++ )
rYaw = p.renderYawOffset; * {
} * CompassManager.INSTANCE.getCompassDirection( 0, x + i - 1, y, z + j - 1 );
* }
int x = (int) p.posX; * }
int y = (int) p.posY; * if( cr.isValidResult() )
int z = (int) p.posZ; * {
CompassResult cr = CompassManager.INSTANCE.getCompassDirection( 0, x, y, z ); * if( cr.isSpin() )
* {
for( int i = 0; i < 3; i++ ) * now %= 100000;
{ * this.model.renderAll( ( now / 50000.0f ) * (float) Math.PI * 500.0f );
for( int j = 0; j < 3; j++ ) * }
{ * else
CompassManager.INSTANCE.getCompassDirection( 0, x + i - 1, y, z + j - 1 ); * {
} * if( type == ItemRenderType.EQUIPPED_FIRST_PERSON )
} * {
* <<<<<<< HEAD
if( cr.hasResult ) * float offRads = rYaw / 180.0f * (float) Math.PI;
{ * float adjustment = (float) Math.PI * 0.74f;
if( cr.spin ) * this.model.renderAll( (float) this.flipidiy( cr.rad + offRads + adjustment ) );
{ * }
now %= 100000; * else
this.model.renderAll( ( now / 50000.0f ) * (float) Math.PI * 500.0f ); * {
} * float offRads = rYaw / 180.0f * (float) Math.PI;
else * float adjustment = (float) Math.PI * -0.74f;
{ * this.model.renderAll( (float) this.flipidiy( cr.rad + offRads + adjustment ) );
if( type == ItemRenderType.EQUIPPED_FIRST_PERSON ) * =======
{ * final float offRads = rYaw / 180.0f * (float) Math.PI;
float offRads = rYaw / 180.0f * (float) Math.PI; * final float adjustment = (float) Math.PI * 0.74f;
float adjustment = (float) Math.PI * 0.74f; * this.model.renderAll( (float) this.flipidiy( cr.getRad() + offRads + adjustment ) );
this.model.renderAll( (float) this.flipidiy( cr.rad + offRads + adjustment ) ); * }
} * else
else * {
{ * final float offRads = rYaw / 180.0f * (float) Math.PI;
float offRads = rYaw / 180.0f * (float) Math.PI; * final float adjustment = (float) Math.PI * -0.74f;
float adjustment = (float) Math.PI * -0.74f; * this.model.renderAll( (float) this.flipidiy( cr.getRad() + offRads + adjustment ) );
this.model.renderAll( (float) this.flipidiy( cr.rad + offRads + adjustment ) ); * >>>>>>> 500fc47... Reduces visibility of internal fields/methods
} * }
} * }
} * }
else * else
{ * {
now %= 1000000; * now %= 1000000;
this.model.renderAll( ( now / 500000.0f ) * (float) Math.PI * 500.0f ); * this.model.renderAll( ( now / 500000.0f ) * (float) Math.PI * 500.0f );
} * }
} * }
else * else
{ * {
now %= 100000; * now %= 100000;
this.model.renderAll( ( now / 50000.0f ) * (float) Math.PI * 500.0f ); * this.model.renderAll( ( now / 50000.0f ) * (float) Math.PI * 500.0f );
} * }
* GL11.glDisable( GL12.GL_RESCALE_NORMAL );
GL11.glDisable( GL12.GL_RESCALE_NORMAL ); * GL11.glColor4f( 1.0F, 1.0F, 1.0F, 1.0F );
GL11.glColor4f( 1.0F, 1.0F, 1.0F, 1.0F ); */
*/
} }
@Override @Override
@@ -213,23 +211,23 @@ public class RenderBlockSkyCompass extends BaseBlockRender<BlockSkyCompass, Tile
if( skyCompass.getForward() == EnumFacing.UP || skyCompass.getForward() == EnumFacing.DOWN ) if( skyCompass.getForward() == EnumFacing.UP || skyCompass.getForward() == EnumFacing.DOWN )
{ {
final BlockPos compassPos = skyCompass.getPos(); final BlockPos compassPos = skyCompass.getPos();
cr = CompassManager.INSTANCE.getCompassDirection( 0, compassPos.getX(), compassPos.getY(), compassPos.getZ()); cr = CompassManager.INSTANCE.getCompassDirection( 0, compassPos.getX(), compassPos.getY(), compassPos.getZ() );
} }
else else
{ {
cr = new CompassResult( false, true, 0 ); cr = new CompassResult( false, true, 0 );
} }
if( cr.hasResult ) if( cr.isValidResult() )
{ {
if( cr.spin ) if( cr.isSpin() )
{ {
now %= 100000; now %= 100000;
this.model.renderAll( ( now / 50000.0f ) * (float) Math.PI * 500.0f ); this.model.renderAll( ( now / 50000.0f ) * (float) Math.PI * 500.0f );
} }
else else
{ {
this.model.renderAll( (float) ( skyCompass.getForward() == EnumFacing.DOWN ? this.flipidiy( cr.rad ) : cr.rad ) ); this.model.renderAll( (float) ( skyCompass.getForward() == EnumFacing.DOWN ? this.flipidiy( cr.getRad() ) : cr.getRad() ) );
} }
} }
else else
@@ -43,7 +43,7 @@ import appeng.util.Platform;
public class RenderBlockWireless extends BaseBlockRender<BlockWireless, TileWireless> public class RenderBlockWireless extends BaseBlockRender<BlockWireless, TileWireless>
{ {
BlockPos center; private BlockPos center;
private BlockWireless blk; private BlockWireless blk;
private boolean hasChan = false; private boolean hasChan = false;
private boolean hasPower = false; private boolean hasPower = false;
@@ -62,7 +62,7 @@ public class RenderBlockWireless extends BaseBlockRender<BlockWireless, TileWire
this.hasPower = false; this.hasPower = false;
final BlockRenderInfo ri = blk.getRendererInstance(); final BlockRenderInfo ri = blk.getRendererInstance();
renderer.renderAllFaces = true; renderer.setRenderAllFaces( true );
IAESprite r = CableBusTextures.PartMonitorSidesStatus.getIcon(); IAESprite r = CableBusTextures.PartMonitorSidesStatus.getIcon();
ri.setTemporaryRenderIcons( r, r, CableBusTextures.PartMonitorSides.getIcon(), CableBusTextures.PartMonitorSides.getIcon(), r, r ); ri.setTemporaryRenderIcons( r, r, CableBusTextures.PartMonitorSides.getIcon(), CableBusTextures.PartMonitorSides.getIcon(), r, r );
@@ -107,8 +107,8 @@ public class RenderBlockWireless extends BaseBlockRender<BlockWireless, TileWire
this.blk = blk; this.blk = blk;
if( tw != null ) if( tw != null )
{ {
this.hasChan = ( tw.clientFlags & ( TileWireless.POWERED_FLAG | TileWireless.CHANNEL_FLAG ) ) == ( TileWireless.POWERED_FLAG | TileWireless.CHANNEL_FLAG ); this.hasChan = ( tw.getClientFlags() & ( TileWireless.POWERED_FLAG | TileWireless.CHANNEL_FLAG ) ) == ( TileWireless.POWERED_FLAG | TileWireless.CHANNEL_FLAG );
this.hasPower = ( tw.clientFlags & TileWireless.POWERED_FLAG ) == TileWireless.POWERED_FLAG; this.hasPower = ( tw.getClientFlags() & TileWireless.POWERED_FLAG ) == TileWireless.POWERED_FLAG;
final BlockRenderInfo ri = blk.getRendererInstance(); final BlockRenderInfo ri = blk.getRendererInstance();
@@ -116,7 +116,7 @@ public class RenderBlockWireless extends BaseBlockRender<BlockWireless, TileWire
final EnumFacing fdz = tw.getForward(); final EnumFacing fdz = tw.getForward();
final EnumFacing fdx = Platform.crossProduct( fdz, fdy ).getOpposite(); final EnumFacing fdx = Platform.crossProduct( fdz, fdy ).getOpposite();
renderer.renderAllFaces = true; renderer.setRenderAllFaces( true );
IAESprite r = CableBusTextures.PartMonitorSidesStatus.getIcon(); IAESprite r = CableBusTextures.PartMonitorSidesStatus.getIcon();
ri.setTemporaryRenderIcons( r, r, CableBusTextures.PartMonitorSides.getIcon(), CableBusTextures.PartMonitorSides.getIcon(), r, r ); ri.setTemporaryRenderIcons( r, r, CableBusTextures.PartMonitorSides.getIcon(), CableBusTextures.PartMonitorSides.getIcon(), r, r );
@@ -202,7 +202,7 @@ public class RenderBlockWireless extends BaseBlockRender<BlockWireless, TileWire
} }
ri.setTemporaryRenderIcon( null ); ri.setTemporaryRenderIcon( null );
renderer.renderAllFaces = false; renderer.setRenderAllFaces( false );
} }
return true; return true;
@@ -216,34 +216,34 @@ public class RenderBlockWireless extends BaseBlockRender<BlockWireless, TileWire
switch( z ) switch( z )
{ {
case DOWN: case DOWN:
renderer.uvRotateNorth = 3; renderer.setUvRotateNorth( 3 );
renderer.uvRotateSouth = 3; renderer.setUvRotateSouth( 3 );
renderer.uvRotateEast = 3; renderer.setUvRotateEast( 3 );
renderer.uvRotateWest = 3; renderer.setUvRotateWest( 3 );
break; break;
case EAST: case EAST:
renderer.uvRotateTop = 1; renderer.setUvRotateTop( 1 );
renderer.uvRotateBottom = 2; renderer.setUvRotateBottom( 2 );
renderer.uvRotateEast = 2; renderer.setUvRotateEast( 2 );
renderer.uvRotateWest = 1; renderer.setUvRotateWest( 1 );
break; break;
case NORTH: case NORTH:
renderer.uvRotateTop = 0; renderer.setUvRotateTop( 0 );
renderer.uvRotateBottom = 0; renderer.setUvRotateBottom( 0 );
renderer.uvRotateNorth = 2; renderer.setUvRotateNorth( 2 );
renderer.uvRotateSouth = 1; renderer.setUvRotateSouth( 1 );
break; break;
case SOUTH: case SOUTH:
renderer.uvRotateTop = 3; renderer.setUvRotateTop( 3 );
renderer.uvRotateBottom = 3; renderer.setUvRotateBottom( 3 );
renderer.uvRotateNorth = 1; renderer.setUvRotateNorth( 1 );
renderer.uvRotateSouth = 2; renderer.setUvRotateSouth( 2 );
break; break;
case WEST: case WEST:
renderer.uvRotateTop = 2; renderer.setUvRotateTop( 2 );
renderer.uvRotateBottom = 1; renderer.setUvRotateBottom( 1 );
renderer.uvRotateEast = 1; renderer.setUvRotateEast( 1 );
renderer.uvRotateWest = 2; renderer.setUvRotateWest( 2 );
break; break;
default: default:
break; break;
@@ -47,10 +47,10 @@ public class RenderDrive extends BaseBlockRender<BlockDrive, TileDrive>
@Override @Override
public void renderInventory( final BlockDrive block, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj ) public void renderInventory( final BlockDrive block, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj )
{ {
renderer.overrideBlockTexture = ExtraBlockTextures.White.getIcon(); renderer.setOverrideBlockTexture( ExtraBlockTextures.White.getIcon() );
this.renderInvBlock( EnumSet.of( AEPartLocation.SOUTH ), block, is, 0x000000, renderer ); this.renderInvBlock( EnumSet.of( AEPartLocation.SOUTH ), block, is, 0x000000, renderer );
renderer.overrideBlockTexture = null; renderer.setOverrideBlockTexture( null );
super.renderInventory( block, is, renderer, type, obj ); super.renderInventory( block, is, renderer, type, obj );
} }
@@ -219,40 +219,40 @@ public class RenderDrive extends BaseBlockRender<BlockDrive, TileDrive>
switch( forward.getFrontOffsetX() + forward.getFrontOffsetY() * 2 + forward.getFrontOffsetZ() * 3 ) switch( forward.getFrontOffsetX() + forward.getFrontOffsetY() * 2 + forward.getFrontOffsetZ() * 3 )
{ {
case 1: case 1:
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMinZ, u1, v1 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMinZ(), u1, v1 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u2, v2 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u2, v2 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMinY, z + renderer.renderMaxZ, u3, v3 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMinY(), z + renderer.getRenderMaxZ(), u3, v3 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMinY, z + renderer.renderMinZ, u4, v4 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMinY(), z + renderer.getRenderMinZ(), u4, v4 );
break; break;
case -1: case -1:
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMinY, z + renderer.renderMinZ, u1, v1 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMinY(), z + renderer.getRenderMinZ(), u1, v1 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMinY, z + renderer.renderMaxZ, u2, v2 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMinY(), z + renderer.getRenderMaxZ(), u2, v2 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u3, v3 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u3, v3 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMinZ, u4, v4 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMinZ(), u4, v4 );
break; break;
case -2: case -2:
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMinZ, u1, v1 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMinZ(), u1, v1 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u2, v2 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u2, v2 );
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u3, v3 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u3, v3 );
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMaxY, z + renderer.renderMinZ, u4, v4 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMinZ(), u4, v4 );
break; break;
case 2: case 2:
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMaxY, z + renderer.renderMinZ, u1, v1 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMinZ(), u1, v1 );
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u2, v2 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u2, v2 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u3, v3 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u3, v3 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMinZ, u4, v4 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMinZ(), u4, v4 );
break; break;
case 3: case 3:
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMinY, z + renderer.renderMaxZ, u1, v1 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMinY(), z + renderer.getRenderMaxZ(), u1, v1 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u2, v2 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u2, v2 );
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u3, v3 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u3, v3 );
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMinY, z + renderer.renderMaxZ, u4, v4 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMinY(), z + renderer.getRenderMaxZ(), u4, v4 );
break; break;
case -3: case -3:
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMinY, z + renderer.renderMaxZ, u1, v1 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMinY(), z + renderer.getRenderMaxZ(), u1, v1 );
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u2, v2 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u2, v2 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u3, v3 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u3, v3 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMinY, z + renderer.renderMaxZ, u4, v4 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMinY(), z + renderer.getRenderMaxZ(), u4, v4 );
break; break;
} }
@@ -303,47 +303,47 @@ public class RenderDrive extends BaseBlockRender<BlockDrive, TileDrive>
switch( forward.getFrontOffsetX() + forward.getFrontOffsetY() * 2 + forward.getFrontOffsetZ() * 3 ) switch( forward.getFrontOffsetX() + forward.getFrontOffsetY() * 2 + forward.getFrontOffsetZ() * 3 )
{ {
case 1: case 1:
renderer.addVertexWithUV( forward, x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMinZ, u1, v1 ); renderer.addVertexWithUV( forward, x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMinZ(), u1, v1 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u2, v2 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u2, v2 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMinY, z + renderer.renderMaxZ, u3, v3 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMinY(), z + renderer.getRenderMaxZ(), u3, v3 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMinY, z + renderer.renderMinZ, u4, v4 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMinY(), z + renderer.getRenderMinZ(), u4, v4 );
break; break;
case -1: case -1:
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMinY, z + renderer.renderMinZ, u1, v1 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMinY(), z + renderer.getRenderMinZ(), u1, v1 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMinY, z + renderer.renderMaxZ, u2, v2 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMinY(), z + renderer.getRenderMaxZ(), u2, v2 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u3, v3 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u3, v3 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMinZ, u4, v4 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMinZ(), u4, v4 );
break; break;
case -2: case -2:
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMinZ, u1, v1 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMinZ(), u1, v1 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u2, v2 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u2, v2 );
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u3, v3 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u3, v3 );
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMaxY, z + renderer.renderMinZ, u4, v4 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMinZ(), u4, v4 );
break; break;
case 2: case 2:
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMaxY, z + renderer.renderMinZ, u1, v1 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMinZ(), u1, v1 );
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u2, v2 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u2, v2 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u3, v3 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u3, v3 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMinZ, u4, v4 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMinZ(), u4, v4 );
break; break;
case 3: case 3:
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMinY, z + renderer.renderMaxZ, u1, v1 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMinY(), z + renderer.getRenderMaxZ(), u1, v1 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u2, v2 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u2, v2 );
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u3, v3 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u3, v3 );
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMinY, z + renderer.renderMaxZ, u4, v4 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMinY(), z + renderer.getRenderMaxZ(), u4, v4 );
break; break;
case -3: case -3:
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMinY, z + renderer.renderMaxZ, u1, v1 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMinY(), z + renderer.getRenderMaxZ(), u1, v1 );
renderer.addVertexWithUV( forward,x + renderer.renderMinX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u2, v2 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMinX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u2, v2 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMaxY, z + renderer.renderMaxZ, u3, v3 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMaxY(), z + renderer.getRenderMaxZ(), u3, v3 );
renderer.addVertexWithUV( forward,x + renderer.renderMaxX, y + renderer.renderMinY, z + renderer.renderMaxZ, u4, v4 ); renderer.addVertexWithUV( forward,x + renderer.getRenderMaxX(), y + renderer.getRenderMinY(), z + renderer.getRenderMaxZ(), u4, v4 );
break; break;
} }
} }
} }
} }
renderer.overrideBlockTexture = null; renderer.setOverrideBlockTexture( null );
return result; return result;
} }
} }
@@ -53,13 +53,13 @@ public class RenderMEChest extends BaseBlockRender<BlockChest, TileChest>
public void renderInventory( final BlockChest block, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj ) public void renderInventory( final BlockChest block, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj )
{ {
renderer.setBrightness( 0 ); renderer.setBrightness( 0 );
renderer.overrideBlockTexture = ExtraBlockTextures.White.getIcon(); renderer.setOverrideBlockTexture( ExtraBlockTextures.White.getIcon() );
this.renderInvBlock( EnumSet.of( AEPartLocation.SOUTH ), block, is, 0x000000, renderer ); this.renderInvBlock( EnumSet.of( AEPartLocation.SOUTH ), block, is, 0x000000, renderer );
renderer.overrideBlockTexture = ExtraBlockTextures.MEChest.getIcon(); renderer.setOverrideBlockTexture( ExtraBlockTextures.MEChest.getIcon() );
this.renderInvBlock( EnumSet.of( AEPartLocation.UP ), block, is, this.adjustBrightness( AEColor.Transparent.whiteVariant, 0.7 ), renderer ); this.renderInvBlock( EnumSet.of( AEPartLocation.UP ), block, is, this.adjustBrightness( AEColor.Transparent.whiteVariant, 0.7 ), renderer );
renderer.overrideBlockTexture = null; renderer.setOverrideBlockTexture( null );
super.renderInventory( block, is, renderer, type, obj ); super.renderInventory( block, is, renderer, type, obj );
} }
@@ -179,7 +179,7 @@ public class RenderMEChest extends BaseBlockRender<BlockChest, TileChest>
this.renderFace( pos, imb, ico == null ? ExtraBlockTextures.MEChest.getIcon() : ico, renderer, up ); this.renderFace( pos, imb, ico == null ? ExtraBlockTextures.MEChest.getIcon() : ico, renderer, up );
} }
renderer.overrideBlockTexture = null; renderer.setOverrideBlockTexture( null );
this.postRenderInWorld( renderer ); this.postRenderInWorld( renderer );
return result; return result;
@@ -65,7 +65,7 @@ public class RenderQNB extends BaseBlockRender<BlockQuantumBase, TileQuantumBrid
return false; return false;
} }
renderer.renderAllFaces = true; renderer.setRenderAllFaces( true );
final IDefinitions definitions = AEApi.instance().definitions(); final IDefinitions definitions = AEApi.instance().definitions();
final IBlocks blocks = definitions.blocks(); final IBlocks blocks = definitions.blocks();
@@ -157,7 +157,7 @@ public class RenderQNB extends BaseBlockRender<BlockQuantumBase, TileQuantumBrid
} }
} }
renderer.renderAllFaces = false; renderer.setRenderAllFaces( false );
return true; return true;
} }
@@ -38,7 +38,7 @@ import appeng.tile.AEBaseTile;
public class RenderQuartzGlass extends BaseBlockRender<QuartzGlassBlock, AEBaseTile> public class RenderQuartzGlass extends BaseBlockRender<QuartzGlassBlock, AEBaseTile>
{ {
static byte[][][] offsets; private static byte[][][] offsets;
public RenderQuartzGlass() public RenderQuartzGlass()
{ {
@@ -60,9 +60,9 @@ public class RenderQuartzGlass extends BaseBlockRender<QuartzGlassBlock, AEBaseT
@Override @Override
public void renderInventory( final QuartzGlassBlock block, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj ) public void renderInventory( final QuartzGlassBlock block, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj )
{ {
renderer.overrideBlockTexture = ExtraBlockTextures.GlassFrame.getIcon(); renderer.setOverrideBlockTexture( ExtraBlockTextures.GlassFrame.getIcon() );
super.renderInventory( block, is, renderer, type, obj ); super.renderInventory( block, is, renderer, type, obj );
renderer.overrideBlockTexture = null; renderer.setOverrideBlockTexture( null );
super.renderInventory( block, is, renderer, type, obj ); super.renderInventory( block, is, renderer, type, obj );
} }
@@ -81,22 +81,22 @@ public class RenderQuartzGlass extends BaseBlockRender<QuartzGlassBlock, AEBaseT
switch( Math.abs( ( offsets[cx][cy][cz] + ( pos.getX()+pos.getY()+pos.getZ() ) ) % 4 ) ) switch( Math.abs( ( offsets[cx][cy][cz] + ( pos.getX()+pos.getY()+pos.getZ() ) ) % 4 ) )
{ {
case 0: case 0:
renderer.overrideBlockTexture = new OffsetIcon( renderer.getIcon( world.getBlockState( pos ) )[0], u / 2, v / 2 ); renderer.setOverrideBlockTexture( new OffsetIcon( renderer.getIcon( world.getBlockState( pos ) )[0], u / 2, v / 2 ) );
break; break;
case 1: case 1:
renderer.overrideBlockTexture = new OffsetIcon( ExtraBlockTextures.BlockQuartzGlassB.getIcon(), u / 2, v / 2 ); renderer.setOverrideBlockTexture( new OffsetIcon( ExtraBlockTextures.BlockQuartzGlassB.getIcon(), u / 2, v / 2 ) );
break; break;
case 2: case 2:
renderer.overrideBlockTexture = new OffsetIcon( ExtraBlockTextures.BlockQuartzGlassC.getIcon(), u, v ); renderer.setOverrideBlockTexture( new OffsetIcon( ExtraBlockTextures.BlockQuartzGlassC.getIcon(), u, v ) );
break; break;
case 3: case 3:
renderer.overrideBlockTexture = new OffsetIcon( ExtraBlockTextures.BlockQuartzGlassD.getIcon(), u, v ); renderer.setOverrideBlockTexture( new OffsetIcon( ExtraBlockTextures.BlockQuartzGlassD.getIcon(), u, v ) );
break; break;
} }
final boolean result = renderer.renderStandardBlock( imb, pos ); final boolean result = renderer.renderStandardBlock( imb, pos );
renderer.overrideBlockTexture = null; renderer.setOverrideBlockTexture( null );
this.renderEdge( imb, world, pos, renderer, AEPartLocation.UP, AEPartLocation.EAST ); this.renderEdge( imb, world, pos, renderer, AEPartLocation.UP, AEPartLocation.EAST );
this.renderEdge( imb, world, pos, renderer, AEPartLocation.UP, AEPartLocation.WEST ); this.renderEdge( imb, world, pos, renderer, AEPartLocation.UP, AEPartLocation.WEST );
this.renderEdge( imb, world, pos, renderer, AEPartLocation.UP, AEPartLocation.NORTH ); this.renderEdge( imb, world, pos, renderer, AEPartLocation.UP, AEPartLocation.NORTH );
@@ -68,7 +68,7 @@ public class RenderQuartzTorch extends BaseBlockRender<AEBaseBlock, AEBaseTile>
this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer ); this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer );
blk.getRendererInstance().setTemporaryRenderIcon( renderer.getIcon( Blocks.hopper.getDefaultState() )[0] ); blk.getRendererInstance().setTemporaryRenderIcon( renderer.getIcon( Blocks.hopper.getDefaultState() )[0] );
renderer.renderAllFaces = true; renderer.setRenderAllFaces( true );
final float top = 8.0f / 16.0f; final float top = 8.0f / 16.0f;
final float bottom = 7.0f / 16.0f; final float bottom = 7.0f / 16.0f;
@@ -87,7 +87,7 @@ public class RenderQuartzTorch extends BaseBlockRender<AEBaseBlock, AEBaseTile>
this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer ); this.renderInvBlock( EnumSet.allOf( AEPartLocation.class ), blk, is, 0xffffff, renderer );
renderer.renderAllFaces = false; renderer.setRenderAllFaces( false );
blk.getRendererInstance().setTemporaryRenderIcon( null ); blk.getRendererInstance().setTemporaryRenderIcon( null );
} }
@@ -96,7 +96,7 @@ public class RenderQuartzTorch extends BaseBlockRender<AEBaseBlock, AEBaseTile>
{ {
final IOrientable te = ( (IOrientableBlock) block ).getOrientable( world, pos ); final IOrientable te = ( (IOrientableBlock) block ).getOrientable( world, pos );
renderer.renderAllFaces = true; renderer.setRenderAllFaces( true );
float zOff = 0.0f; float zOff = 0.0f;
float yOff = 0.0f; float yOff = 0.0f;
float xOff = 0.0f; float xOff = 0.0f;
@@ -197,7 +197,7 @@ public class RenderQuartzTorch extends BaseBlockRender<AEBaseBlock, AEBaseTile>
} }
} }
renderer.renderAllFaces = false; renderer.setRenderAllFaces( false );
block.getRendererInstance().setTemporaryRenderIcon( null ); block.getRendererInstance().setTemporaryRenderIcon( null );
return out; return out;
@@ -45,9 +45,9 @@ public class RenderSpatialPylon extends BaseBlockRender<BlockSpatialPylon, TileS
@Override @Override
public void renderInventory( final BlockSpatialPylon block, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj ) public void renderInventory( final BlockSpatialPylon block, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj )
{ {
renderer.overrideBlockTexture = ExtraBlockTextures.BlockSpatialPylon_dim.getIcon(); renderer.setOverrideBlockTexture( ExtraBlockTextures.BlockSpatialPylon_dim.getIcon() );
super.renderInventory( block, is, renderer, type, obj ); super.renderInventory( block, is, renderer, type, obj );
renderer.overrideBlockTexture = null; renderer.setOverrideBlockTexture( null );
super.renderInventory( block, is, renderer, type, obj ); super.renderInventory( block, is, renderer, type, obj );
} }
@@ -68,24 +68,24 @@ public class RenderSpatialPylon extends BaseBlockRender<BlockSpatialPylon, TileS
ori = EnumFacing.EAST; ori = EnumFacing.EAST;
if( ( displayBits & TileSpatialPylon.DISPLAY_MIDDLE ) == TileSpatialPylon.DISPLAY_END_MAX ) if( ( displayBits & TileSpatialPylon.DISPLAY_MIDDLE ) == TileSpatialPylon.DISPLAY_END_MAX )
{ {
renderer.uvRotateEast = 1; renderer.setUvRotateEast( 1 );
renderer.uvRotateWest = 2; renderer.setUvRotateWest( 2 );
renderer.uvRotateTop = 2; renderer.setUvRotateTop( 2 );
renderer.uvRotateBottom = 1; renderer.setUvRotateBottom( 1 );
} }
else if( ( displayBits & TileSpatialPylon.DISPLAY_MIDDLE ) == TileSpatialPylon.DISPLAY_END_MIN ) else if( ( displayBits & TileSpatialPylon.DISPLAY_MIDDLE ) == TileSpatialPylon.DISPLAY_END_MIN )
{ {
renderer.uvRotateEast = 2; renderer.setUvRotateEast( 2 );
renderer.uvRotateWest = 1; renderer.setUvRotateWest( 1 );
renderer.uvRotateTop = 1; renderer.setUvRotateTop( 1 );
renderer.uvRotateBottom = 2; renderer.setUvRotateBottom( 2 );
} }
else else
{ {
renderer.uvRotateEast = 1; renderer.setUvRotateEast( 1 );
renderer.uvRotateWest = 1; renderer.setUvRotateWest( 1 );
renderer.uvRotateTop = 1; renderer.setUvRotateTop( 1 );
renderer.uvRotateBottom = 1; renderer.setUvRotateBottom( 1 );
} }
} }
@@ -94,10 +94,10 @@ public class RenderSpatialPylon extends BaseBlockRender<BlockSpatialPylon, TileS
ori = EnumFacing.UP; ori = EnumFacing.UP;
if( ( displayBits & TileSpatialPylon.DISPLAY_MIDDLE ) == TileSpatialPylon.DISPLAY_END_MAX ) if( ( displayBits & TileSpatialPylon.DISPLAY_MIDDLE ) == TileSpatialPylon.DISPLAY_END_MAX )
{ {
renderer.uvRotateNorth = 3; renderer.setUvRotateNorth( 3 );
renderer.uvRotateSouth = 3; renderer.setUvRotateSouth( 3 );
renderer.uvRotateEast = 3; renderer.setUvRotateEast( 3 );
renderer.uvRotateWest = 3; renderer.setUvRotateWest( 3 );
} }
} }
@@ -106,20 +106,20 @@ public class RenderSpatialPylon extends BaseBlockRender<BlockSpatialPylon, TileS
ori = EnumFacing.NORTH; ori = EnumFacing.NORTH;
if( ( displayBits & TileSpatialPylon.DISPLAY_MIDDLE ) == TileSpatialPylon.DISPLAY_END_MAX ) if( ( displayBits & TileSpatialPylon.DISPLAY_MIDDLE ) == TileSpatialPylon.DISPLAY_END_MAX )
{ {
renderer.uvRotateSouth = 1; renderer.setUvRotateSouth( 1 );
renderer.uvRotateNorth = 2; renderer.setUvRotateNorth( 2 );
} }
else if( ( displayBits & TileSpatialPylon.DISPLAY_MIDDLE ) == TileSpatialPylon.DISPLAY_END_MIN ) else if( ( displayBits & TileSpatialPylon.DISPLAY_MIDDLE ) == TileSpatialPylon.DISPLAY_END_MIN )
{ {
renderer.uvRotateNorth = 1; renderer.setUvRotateNorth( 1 );
renderer.uvRotateSouth = 2; renderer.setUvRotateSouth( 2 );
renderer.uvRotateTop = 3; renderer.setUvRotateTop( 3 );
renderer.uvRotateBottom = 3; renderer.setUvRotateBottom( 3 );
} }
else else
{ {
renderer.uvRotateNorth = 1; renderer.setUvRotateNorth( 1 );
renderer.uvRotateSouth = 2; renderer.setUvRotateSouth( 2 );
} }
} }
@@ -149,18 +149,18 @@ public class RenderSpatialPylon extends BaseBlockRender<BlockSpatialPylon, TileS
} }
bri.setTemporaryRenderIcon( null ); bri.setTemporaryRenderIcon( null );
renderer.uvRotateEast = renderer.uvRotateWest = renderer.uvRotateNorth = renderer.uvRotateSouth = renderer.uvRotateTop = renderer.uvRotateBottom = 0; renderer.setUvRotateEast( renderer.setUvRotateWest( renderer.setUvRotateNorth( renderer.setUvRotateSouth( renderer.setUvRotateTop( renderer.setUvRotateBottom( 0 ) ) ) ) ) );
return r; return r;
} }
renderer.overrideBlockTexture = renderer.getIcon( world.getBlockState( pos ) )[0];//imb.getIcon( 0, 0 ); renderer.setOverrideBlockTexture( renderer.getIcon( world.getBlockState( pos ) )[0] );//imb.getIcon( 0, 0 );
boolean result = renderer.renderStandardBlock( imb, pos ); boolean result = renderer.renderStandardBlock( imb, pos );
renderer.overrideBlockTexture = ExtraBlockTextures.BlockSpatialPylon_dim.getIcon(); renderer.setOverrideBlockTexture( ExtraBlockTextures.BlockSpatialPylon_dim.getIcon() );
result = renderer.renderStandardBlock( imb, pos ); result = renderer.renderStandardBlock( imb, pos );
renderer.overrideBlockTexture = null; renderer.setOverrideBlockTexture( null );
return result; return result;
} }
@@ -52,10 +52,10 @@ public class RenderTinyTNT extends BaseBlockRender<BlockTinyTNT, AEBaseTile>
public boolean renderInWorld( final BlockTinyTNT imb, final IBlockAccess world, final BlockPos pos, final ModelGenerator renderer ) public boolean renderInWorld( final BlockTinyTNT imb, final IBlockAccess world, final BlockPos pos, final ModelGenerator renderer )
{ {
renderer.setOverrideBlockTexture( new FullIcon( Minecraft.getMinecraft().getBlockRendererDispatcher().getBlockModelShapes().getTexture( Blocks.tnt.getDefaultState() )) ); renderer.setOverrideBlockTexture( new FullIcon( Minecraft.getMinecraft().getBlockRendererDispatcher().getBlockModelShapes().getTexture( Blocks.tnt.getDefaultState() )) );
renderer.renderAllFaces = true; renderer.setRenderAllFaces( true );
renderer.setRenderBounds( 0.25f, 0.0f, 0.25f, 0.75f, 0.5f, 0.75f ); renderer.setRenderBounds( 0.25f, 0.0f, 0.25f, 0.75f, 0.5f, 0.75f );
final boolean out = super.renderInWorld( imb, world, pos, renderer ); final boolean out = super.renderInWorld( imb, world, pos, renderer );
renderer.renderAllFaces = false; renderer.setRenderAllFaces( false );
return out; return out;
} }
} }
@@ -59,16 +59,16 @@ public class RendererCableBus extends BaseBlockRender<BlockCableBus, TileCableBu
renderer.setColorOpaque_F( 1, 1, 1 ); renderer.setColorOpaque_F( 1, 1, 1 );
renderer.setBrightness( 14 << 20 | 14 << 4 ); renderer.setBrightness( 14 << 20 | 14 << 4 );
BusRenderer.INSTANCE.renderer = renderer; // post data to this... BusRenderer.INSTANCE.setRenderer( renderer ); // post data to this...
BusRenderHelper.INSTANCE.setBounds( 0, 0, 0, 1, 1, 1 ); BusRenderHelper.INSTANCE.setBounds( 0, 0, 0, 1, 1, 1 );
BusRenderHelper.INSTANCE.setTexture( null ); BusRenderHelper.INSTANCE.setTexture( null );
BusRenderHelper.INSTANCE.setInvColor( 0xffffff ); BusRenderHelper.INSTANCE.setInvColor( 0xffffff );
renderer.blockAccess = ClientHelper.proxy.getWorld(); renderer.setBlockAccess( ClientHelper.proxy.getWorld() );
BusRenderHelper.INSTANCE.setOrientation( EnumFacing.EAST, EnumFacing.UP, EnumFacing.SOUTH ); BusRenderHelper.INSTANCE.setOrientation( EnumFacing.EAST, EnumFacing.UP, EnumFacing.SOUTH );
renderer.uvRotateBottom = renderer.uvRotateEast = renderer.uvRotateNorth = renderer.uvRotateSouth = renderer.uvRotateTop = renderer.uvRotateWest = 0; renderer.setUvRotateBottom( renderer.setUvRotateEast( renderer.setUvRotateNorth( renderer.setUvRotateSouth( renderer.setUvRotateTop( renderer.setUvRotateWest( 0 ) ) ) ) ) );
renderer.overrideBlockTexture = null; renderer.setOverrideBlockTexture( null );
if( item.getItem() instanceof IFacadeItem ) if( item.getItem() instanceof IFacadeItem )
{ {
@@ -94,7 +94,7 @@ public class RendererCableBus extends BaseBlockRender<BlockCableBus, TileCableBu
} }
} }
renderer.uvRotateBottom = renderer.uvRotateEast = renderer.uvRotateNorth = renderer.uvRotateSouth = renderer.uvRotateTop = renderer.uvRotateWest = 0; renderer.setUvRotateBottom( renderer.setUvRotateEast( renderer.setUvRotateNorth( renderer.setUvRotateSouth( renderer.setUvRotateTop( renderer.setUvRotateWest( 0 ) ) ) ) ) );
} }
public IPart getRenderer( final ItemStack is, final IPartItem c ) public IPart getRenderer( final ItemStack is, final IPartItem c )
@@ -124,12 +124,12 @@ public class RendererCableBus extends BaseBlockRender<BlockCableBus, TileCableBu
if( t instanceof TileCableBus ) if( t instanceof TileCableBus )
{ {
BusRenderer.INSTANCE.renderer = renderer; // post data to this... BusRenderer.INSTANCE.setRenderer( renderer ); // post data to this...
BusRenderer.INSTANCE.renderer.renderAllFaces = true; BusRenderer.INSTANCE.getRenderer().setRenderAllFaces( true );
BusRenderer.INSTANCE.renderer.blockAccess = renderer.blockAccess; BusRenderer.INSTANCE.getRenderer().setBlockAccess( renderer.getBlockAccess() );
BusRenderer.INSTANCE.renderer.overrideBlockTexture = renderer.overrideBlockTexture; BusRenderer.INSTANCE.getRenderer().setOverrideBlockTexture( renderer.getOverrideBlockTexture() );
( (TileCableBus) t ).cb.renderStatic(); ( (TileCableBus) t ).getCableBus().renderStatic();
BusRenderer.INSTANCE.renderer.renderAllFaces = false; BusRenderer.INSTANCE.getRenderer().setRenderAllFaces( false );
} }
return BusRenderHelper.INSTANCE.getItemsRendered() > 0; return BusRenderHelper.INSTANCE.getItemsRendered() > 0;
@@ -140,8 +140,8 @@ public class RendererCableBus extends BaseBlockRender<BlockCableBus, TileCableBu
{ {
if( cableBus != null ) if( cableBus != null )
{ {
BusRenderer.INSTANCE.renderer.overrideBlockTexture = null; BusRenderer.INSTANCE.getRenderer().setOverrideBlockTexture( null );
cableBus.cb.renderDynamic( x, y, z ); cableBus.getCableBus().renderDynamic( x, y, z );
} }
} }
} }
@@ -47,13 +47,13 @@ public class RendererSecurity extends BaseBlockRender<BlockSecurity, TileSecurit
@Override @Override
public void renderInventory( final BlockSecurity block, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj ) public void renderInventory( final BlockSecurity block, final ItemStack is, final ModelGenerator renderer, final ItemRenderType type, final Object[] obj )
{ {
renderer.overrideBlockTexture = ExtraBlockTextures.getMissing(); renderer.setOverrideBlockTexture( ExtraBlockTextures.getMissing() );
this.renderInvBlock( EnumSet.of( AEPartLocation.SOUTH ), block, is, 0x000000, renderer ); this.renderInvBlock( EnumSet.of( AEPartLocation.SOUTH ), block, is, 0x000000, renderer );
renderer.overrideBlockTexture = ExtraBlockTextures.MEChest.getIcon(); renderer.setOverrideBlockTexture( ExtraBlockTextures.MEChest.getIcon() );
this.renderInvBlock( EnumSet.of( AEPartLocation.UP ), block, is, this.adjustBrightness( AEColor.Transparent.whiteVariant, 0.7 ), renderer ); this.renderInvBlock( EnumSet.of( AEPartLocation.UP ), block, is, this.adjustBrightness( AEColor.Transparent.whiteVariant, 0.7 ), renderer );
renderer.overrideBlockTexture = null; renderer.setOverrideBlockTexture( null );
super.renderInventory( block, is, renderer, type, obj ); super.renderInventory( block, is, renderer, type, obj );
} }
@@ -93,7 +93,7 @@ public class RendererSecurity extends BaseBlockRender<BlockSecurity, TileSecurit
this.renderFace( pos, imb, ico, renderer, up ); this.renderFace( pos, imb, ico, renderer, up );
} }
renderer.overrideBlockTexture = null; renderer.setOverrideBlockTexture( null );
this.postRenderInWorld( renderer ); this.postRenderInWorld( renderer );
return result; return result;
@@ -32,10 +32,9 @@ import appeng.entity.EntityFloatingItem;
public class AssemblerFX extends EntityFX public class AssemblerFX extends EntityFX
{ {
final IAEItemStack item; private final EntityFloatingItem fi;
final EntityFloatingItem fi; private final float speed;
final float speed; private float time = 0;
float time = 0;
public AssemblerFX( final World w, final double x, final double y, final double z, final double r, final double g, final double b, final float speed, final IAEItemStack is ) public AssemblerFX( final World w, final double x, final double y, final double z, final double r, final double g, final double b, final float speed, final IAEItemStack is )
{ {
@@ -43,7 +42,6 @@ public class AssemblerFX extends EntityFX
this.motionX = 0; this.motionX = 0;
this.motionY = 0; this.motionY = 0;
this.motionZ = 0; this.motionZ = 0;
this.item = is;
this.speed = speed; this.speed = speed;
this.fi = new EntityFloatingItem( this, w, x, y, z, is.getItemStack() ); this.fi = new EntityFloatingItem( this, w, x, y, z, is.getItemStack() );
w.spawnEntityInWorld( this.fi ); w.spawnEntityInWorld( this.fi );
@@ -28,9 +28,9 @@ public class LightningArcFX extends LightningFX
{ {
private static final Random RANDOM_GENERATOR = new Random(); private static final Random RANDOM_GENERATOR = new Random();
final double rx; private final double rx;
final double ry; private final double ry;
final double rz; private final double rz;
public LightningArcFX( final World w, final double x, final double y, final double z, final double ex, final double ey, final double ez, final double r, final double g, final double b ) public LightningArcFX( final World w, final double x, final double y, final double z, final double ex, final double ey, final double ez, final double r, final double g, final double b )
{ {
@@ -47,17 +47,19 @@ public class LightningArcFX extends LightningFX
@Override @Override
protected void regen() protected void regen()
{ {
final double i = 1.0 / ( this.steps - 1 ); final double i = 1.0 / ( this.getSteps() - 1 );
final double lastDirectionX = this.rx * i; final double lastDirectionX = this.rx * i;
final double lastDirectionY = this.ry * i; final double lastDirectionY = this.ry * i;
final double lastDirectionZ = this.rz * i; final double lastDirectionZ = this.rz * i;
final double len = Math.sqrt( lastDirectionX * lastDirectionX + lastDirectionY * lastDirectionY + lastDirectionZ * lastDirectionZ ); final double len = Math.sqrt( lastDirectionX * lastDirectionX + lastDirectionY * lastDirectionY + lastDirectionZ * lastDirectionZ );
for( int s = 0; s < this.steps; s++ ) for( int s = 0; s < this.getSteps(); s++ )
{ {
this.Steps[s][0] = ( lastDirectionX + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * len * 1.2 ) / 2.0; final double[][] localSteps = this.getPrecomputedSteps();
this.Steps[s][1] = ( lastDirectionY + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * len * 1.2 ) / 2.0;
this.Steps[s][2] = ( lastDirectionZ + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * len * 1.2 ) / 2.0; localSteps[s][0] = ( lastDirectionX + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * len * 1.2 ) / 2.0;
localSteps[s][1] = ( lastDirectionY + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * len * 1.2 ) / 2.0;
localSteps[s][2] = ( lastDirectionZ + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * len * 1.2 ) / 2.0;
} }
} }
} }
@@ -34,12 +34,12 @@ public class LightningFX extends EntityFX
{ {
private static final Random RANDOM_GENERATOR = new Random(); private static final Random RANDOM_GENERATOR = new Random();
final int steps = this.getSteps(); private static final int STEPS = 5;
final double[][] Steps;
private final double[][] precomputedSteps;
private final double[] vertices = new double[3]; private final double[] vertices = new double[3];
private final double[] verticesWithUV = new double[3]; private final double[] verticesWithUV = new double[3];
float currentPoint = 0; private boolean hasData = false;
boolean hasData = false;
public LightningFX( final World w, final double x, final double y, final double z, final double r, final double g, final double b ) public LightningFX( final World w, final double x, final double y, final double z, final double r, final double g, final double b )
{ {
@@ -50,7 +50,7 @@ public class LightningFX extends EntityFX
protected LightningFX( final World w, final double x, final double y, final double z, final double r, final double g, final double b, final int maxAge ) protected LightningFX( final World w, final double x, final double y, final double z, final double r, final double g, final double b, final int maxAge )
{ {
super( w, x, y, z, r, g, b ); super( w, x, y, z, r, g, b );
this.Steps = new double[this.steps][3]; this.precomputedSteps = new double[LightningFX.STEPS][3];
this.motionX = 0; this.motionX = 0;
this.motionY = 0; this.motionY = 0;
this.motionZ = 0; this.motionZ = 0;
@@ -63,17 +63,17 @@ public class LightningFX extends EntityFX
double lastDirectionX = ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9; double lastDirectionX = ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9;
double lastDirectionY = ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9; double lastDirectionY = ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9;
double lastDirectionZ = ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9; double lastDirectionZ = ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9;
for( int s = 0; s < this.steps; s++ ) for( int s = 0; s < LightningFX.STEPS; s++ )
{ {
this.Steps[s][0] = lastDirectionX = ( lastDirectionX + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9 ) / 2.0; this.precomputedSteps[s][0] = lastDirectionX = ( lastDirectionX + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9 ) / 2.0;
this.Steps[s][1] = lastDirectionY = ( lastDirectionY + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9 ) / 2.0; this.precomputedSteps[s][1] = lastDirectionY = ( lastDirectionY + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9 ) / 2.0;
this.Steps[s][2] = lastDirectionZ = ( lastDirectionZ + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9 ) / 2.0; this.precomputedSteps[s][2] = lastDirectionZ = ( lastDirectionZ + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9 ) / 2.0;
} }
} }
private int getSteps() protected int getSteps()
{ {
return 5; return LightningFX.STEPS;
} }
@Override @Override
@@ -141,11 +141,11 @@ public class LightningFX extends EntityFX
double y = ( this.prevPosY + ( this.posY - this.prevPosY ) * l - interpPosY ) - offY; double y = ( this.prevPosY + ( this.posY - this.prevPosY ) * l - interpPosY ) - offY;
double z = ( this.prevPosZ + ( this.posZ - this.prevPosZ ) * l - interpPosZ ) - offZ; double z = ( this.prevPosZ + ( this.posZ - this.prevPosZ ) * l - interpPosZ ) - offZ;
for( int s = 0; s < this.steps; s++ ) for( int s = 0; s < LightningFX.STEPS; s++ )
{ {
final double xN = x + this.Steps[s][0]; final double xN = x + this.precomputedSteps[s][0];
final double yN = y + this.Steps[s][1]; final double yN = y + this.precomputedSteps[s][1];
final double zN = z + this.Steps[s][2]; final double zN = z + this.precomputedSteps[s][2];
final double xD = xN - x; final double xD = xN - x;
final double yD = yN - y; final double yD = yN - y;
@@ -170,7 +170,7 @@ public class LightningFX extends EntityFX
oz = ( xD * 0 ) - ( 1 * yD ); oz = ( xD * 0 ) - ( 1 * yD );
} }
final double ss = Math.sqrt( ox * ox + oy * oy + oz * oz ) / ( ( ( (double) this.steps - (double) s ) / this.steps ) * scale ); final double ss = Math.sqrt( ox * ox + oy * oy + oz * oz ) / ( ( ( (double) LightningFX.STEPS - (double) s ) / LightningFX.STEPS ) * scale );
ox /= ss; ox /= ss;
oy /= ss; oy /= ss;
oz /= ss; oz /= ss;
@@ -218,4 +218,9 @@ public class LightningFX extends EntityFX
this.verticesWithUV[x] = b[x]; this.verticesWithUV[x] = b[x];
} }
} }
protected double[][] getPrecomputedSteps()
{
return this.precomputedSteps;
}
} }
@@ -19,110 +19,109 @@
package appeng.client.render.items; package appeng.client.render.items;
import org.lwjgl.opengl.GL11; //import org.lwjgl.opengl.GL11;
//
import net.minecraft.client.renderer.ItemRenderer; //import net.minecraft.client.renderer.ItemRenderer;
import net.minecraft.client.renderer.Tessellator; //import net.minecraft.client.renderer.Tessellator;
import net.minecraft.item.ItemStack; //import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon; //import net.minecraftforge.client.IItemRenderer;
import net.minecraftforge.client.IItemRenderer; //
//import appeng.api.util.AEColor;
import appeng.api.util.AEColor; //import appeng.client.texture.ExtraItemTextures;
import appeng.client.texture.ExtraItemTextures; //import appeng.items.misc.ItemPaintBall;
import appeng.items.misc.ItemPaintBall; //
//
//public class PaintBallRender implements IItemRenderer
public class PaintBallRender implements IItemRenderer //{
{ //
// @Override
@Override // public boolean handleRenderType( final ItemStack item, final ItemRenderType type )
public boolean handleRenderType( final ItemStack item, final ItemRenderType type ) // {
{ // return true;
return true; // }
} //
// @Override
@Override // public boolean shouldUseRenderHelper( final ItemRenderType type, final ItemStack item, final ItemRendererHelper helper )
public boolean shouldUseRenderHelper( final ItemRenderType type, final ItemStack item, final ItemRendererHelper helper ) // {
{ // return helper == ItemRendererHelper.ENTITY_BOBBING || helper == ItemRendererHelper.ENTITY_ROTATION;
return helper == ItemRendererHelper.ENTITY_BOBBING || helper == ItemRendererHelper.ENTITY_ROTATION; // }
} //
// @Override
@Override // public void renderItem( final ItemRenderType type, final ItemStack item, final Object... data )
public void renderItem( final ItemRenderType type, final ItemStack item, final Object... data ) // {
{ // IIcon par2Icon = item.getIconIndex();
IIcon par2Icon = item.getIconIndex(); // if( item.getItemDamage() >= 20 )
if( item.getItemDamage() >= 20 ) // {
{ // par2Icon = ExtraItemTextures.ItemPaintBallShimmer.getIcon();
par2Icon = ExtraItemTextures.ItemPaintBallShimmer.getIcon(); // }
} //
// final float f4 = par2Icon.getMinU();
final float f4 = par2Icon.getMinU(); // final float f5 = par2Icon.getMaxU();
final float f5 = par2Icon.getMaxU(); // final float f6 = par2Icon.getMinV();
final float f6 = par2Icon.getMinV(); // final float f7 = par2Icon.getMaxV();
final float f7 = par2Icon.getMaxV(); //
// final ItemPaintBall ipb = (ItemPaintBall) item.getItem();
final ItemPaintBall ipb = (ItemPaintBall) item.getItem(); //
// final Tessellator tessellator = Tessellator.getInstance();
final Tessellator tessellator = Tessellator.instance; // GL11.glPushMatrix();
GL11.glPushMatrix(); // GL11.glPushAttrib( GL11.GL_ALL_ATTRIB_BITS );
GL11.glPushAttrib( GL11.GL_ALL_ATTRIB_BITS ); //
// final AEColor col = ipb.getColor( item );
final AEColor col = ipb.getColor( item ); //
// final int colorValue = item.getItemDamage() >= 20 ? col.mediumVariant : col.mediumVariant;
final int colorValue = item.getItemDamage() >= 20 ? col.mediumVariant : col.mediumVariant; // final int r = ( colorValue >> 16 ) & 0xff;
final int r = ( colorValue >> 16 ) & 0xff; // final int g = ( colorValue >> 8 ) & 0xff;
final int g = ( colorValue >> 8 ) & 0xff; // final int b = ( colorValue ) & 0xff;
final int b = ( colorValue ) & 0xff; //
// if( item.getItemDamage() >= 20 )
if( item.getItemDamage() >= 20 ) // {
{ // final float fail = 0.7f;
final float fail = 0.7f; // final int full = (int) ( 255 * 0.3 );
final int full = (int) ( 255 * 0.3 ); // GL11.glColor4ub( (byte) ( full + r * fail ), (byte) ( full + g * fail ), (byte) ( full + b * fail ), (byte) 255 );
GL11.glColor4ub( (byte) ( full + r * fail ), (byte) ( full + g * fail ), (byte) ( full + b * fail ), (byte) 255 ); // }
} // else
else // {
{ // GL11.glColor4ub( (byte) r, (byte) g, (byte) b, (byte) 255 );
GL11.glColor4ub( (byte) r, (byte) g, (byte) b, (byte) 255 ); // }
} //
// if( type == ItemRenderType.INVENTORY )
if( type == ItemRenderType.INVENTORY ) // {
{ // GL11.glScalef( 16F, 16F, 10F );
GL11.glScalef( 16F, 16F, 10F ); // GL11.glTranslatef( 0.0F, 1.0F, 0.0F );
GL11.glTranslatef( 0.0F, 1.0F, 0.0F ); // GL11.glRotatef( 180F, 1.0F, 0.0F, 0.0F );
GL11.glRotatef( 180F, 1.0F, 0.0F, 0.0F ); // GL11.glEnable( GL11.GL_ALPHA_TEST );
GL11.glEnable( GL11.GL_ALPHA_TEST ); //
// tessellator.startDrawingQuads();
tessellator.startDrawingQuads(); // tessellator.setNormal( 0.0F, 1.0F, 0.0F );
tessellator.setNormal( 0.0F, 1.0F, 0.0F ); // tessellator.addVertexWithUV( 0, 0, 0, f4, f7 );
tessellator.addVertexWithUV( 0, 0, 0, f4, f7 ); // tessellator.addVertexWithUV( 1, 0, 0, f5, f7 );
tessellator.addVertexWithUV( 1, 0, 0, f5, f7 ); // tessellator.addVertexWithUV( 1, 1, 0, f5, f6 );
tessellator.addVertexWithUV( 1, 1, 0, f5, f6 ); // tessellator.addVertexWithUV( 0, 1, 0, f4, f6 );
tessellator.addVertexWithUV( 0, 1, 0, f4, f6 ); // tessellator.draw();
tessellator.draw(); // }
} // else
else // {
{ // if( type == ItemRenderType.EQUIPPED_FIRST_PERSON )
if( type == ItemRenderType.EQUIPPED_FIRST_PERSON ) // {
{ // GL11.glTranslatef( 0.0F, 0.0F, 0.0F );
GL11.glTranslatef( 0.0F, 0.0F, 0.0F ); // }
} // else
else // {
{ // GL11.glTranslatef( -0.5F, -0.3F, 0.01F );
GL11.glTranslatef( -0.5F, -0.3F, 0.01F ); // }
} // final float f12 = 0.0625F;
final float f12 = 0.0625F; // ItemRenderer.renderItemIn2D( tessellator, f5, f6, f4, f7, par2Icon.getIconWidth(), par2Icon.getIconHeight(), f12 );
ItemRenderer.renderItemIn2D( tessellator, f5, f6, f4, f7, par2Icon.getIconWidth(), par2Icon.getIconHeight(), f12 ); //
// GL11.glDisable( GL11.GL_CULL_FACE );
GL11.glDisable( GL11.GL_CULL_FACE ); // GL11.glColor4f( 1, 1, 1, 1.0F );
GL11.glColor4f( 1, 1, 1, 1.0F ); // GL11.glScalef( 1F, 1.1F, 1F );
GL11.glScalef( 1F, 1.1F, 1F ); // GL11.glTranslatef( 0.0F, 1.07F, f12 / -2.0f );
GL11.glTranslatef( 0.0F, 1.07F, f12 / -2.0f ); // GL11.glRotatef( 180F, 1.0F, 0.0F, 0.0F );
GL11.glRotatef( 180F, 1.0F, 0.0F, 0.0F ); // }
} //
// GL11.glColor4f( 1, 1, 1, 1.0F );
GL11.glColor4f( 1, 1, 1, 1.0F ); //
// GL11.glPopAttrib();
GL11.glPopAttrib(); // GL11.glPopMatrix();
GL11.glPopMatrix(); // }
} //}
}
@@ -26,14 +26,14 @@ import net.minecraft.client.model.ModelRenderer;
public class ModelCompass extends ModelBase public class ModelCompass extends ModelBase
{ {
final ModelRenderer Ring1; private final ModelRenderer Ring1;
final ModelRenderer Ring2; private final ModelRenderer Ring2;
final ModelRenderer Ring3; private final ModelRenderer Ring3;
final ModelRenderer Ring4; private final ModelRenderer Ring4;
final ModelRenderer Middle; private final ModelRenderer Middle;
final ModelRenderer Base; private final ModelRenderer Base;
final ModelRenderer Pointer; private final ModelRenderer Pointer;
public ModelCompass() public ModelCompass()
{ {
@@ -88,7 +88,7 @@ public enum ExtraBlockTextures
BlockPaint2( "BlockPaint2" ), BlockPaint3( "BlockPaint3" ); BlockPaint2( "BlockPaint2" ), BlockPaint3( "BlockPaint3" );
private final String name; private final String name;
public IAESprite IIcon; private IAESprite IIcon;
ExtraBlockTextures( final String name ) ExtraBlockTextures( final String name )
{ {
@@ -35,7 +35,7 @@ public enum ExtraItemTextures
ToolColorApplicatorTip_Light( "ToolColorApplicatorTip_Light" ); ToolColorApplicatorTip_Light( "ToolColorApplicatorTip_Light" );
private final String name; private final String name;
public IAESprite IIcon; private IAESprite IIcon;
ExtraItemTextures( final String name ) ExtraItemTextures( final String name )
{ {
@@ -18,22 +18,18 @@
package appeng.client.texture; package appeng.client.texture;
import javax.annotation.Nonnull;
import net.minecraft.client.renderer.texture.TextureAtlasSprite; import net.minecraft.client.renderer.texture.TextureAtlasSprite;
public class FlippableIcon implements IAESprite public class FlippableIcon implements IAESprite
{ {
protected IAESprite original; private IAESprite original;
boolean flip_u; private boolean flip_u;
boolean flip_v; private boolean flip_v;
@Override
public TextureAtlasSprite getAtlas()
{
return this.original.getAtlas();
}
public FlippableIcon( final IAESprite o ) public FlippableIcon( final IAESprite o )
{ {
@@ -42,82 +38,88 @@ public class FlippableIcon implements IAESprite
this.flip_v = false; this.flip_v = false;
} }
@Override
public TextureAtlasSprite getAtlas()
{
return this.original.getAtlas();
}
@Override @Override
public int getIconWidth() public int getIconWidth()
{ {
return this.original.getIconWidth(); return this.getOriginal().getIconWidth();
} }
@Override @Override
public int getIconHeight() public int getIconHeight()
{ {
return this.original.getIconHeight(); return this.getOriginal().getIconHeight();
} }
@Override @Override
public float getMinU() public float getMinU()
{ {
if( this.flip_u ) if( this.isFlipU() )
{ {
return this.original.getMaxU(); return this.getOriginal().getMaxU();
} }
return this.original.getMinU(); return this.getOriginal().getMinU();
} }
@Override @Override
public float getMaxU() public float getMaxU()
{ {
if( this.flip_u ) if( this.isFlipU() )
{ {
return this.original.getMinU(); return this.getOriginal().getMinU();
} }
return this.original.getMaxU(); return this.getOriginal().getMaxU();
} }
@Override @Override
public float getInterpolatedU( final double px ) public float getInterpolatedU( final double px )
{ {
if( this.flip_u ) if( this.isFlipU() )
{ {
return this.original.getInterpolatedU( 16 - px ); return this.getOriginal().getInterpolatedU( 16 - px );
} }
return this.original.getInterpolatedU( px ); return this.getOriginal().getInterpolatedU( px );
} }
@Override @Override
public float getMinV() public float getMinV()
{ {
if( this.flip_v ) if( this.isFlipV() )
{ {
return this.original.getMaxV(); return this.getOriginal().getMaxV();
} }
return this.original.getMinV(); return this.getOriginal().getMinV();
} }
@Override @Override
public float getMaxV() public float getMaxV()
{ {
if( this.flip_v ) if( this.isFlipV() )
{ {
return this.original.getMinV(); return this.getOriginal().getMinV();
} }
return this.original.getMaxV(); return this.getOriginal().getMaxV();
} }
@Override @Override
public float getInterpolatedV( final double px ) public float getInterpolatedV( final double px )
{ {
if( this.flip_v ) if( this.isFlipV() )
{ {
return this.original.getInterpolatedV( 16 - px ); return this.getOriginal().getInterpolatedV( 16 - px );
} }
return this.original.getInterpolatedV( px ); return this.getOriginal().getInterpolatedV( px );
} }
@Override @Override
public String getIconName() public String getIconName()
{ {
return this.original.getIconName(); return this.getOriginal().getIconName();
} }
public IAESprite getOriginal() public IAESprite getOriginal()
@@ -127,14 +129,39 @@ public class FlippableIcon implements IAESprite
public void setFlip( final boolean u, final boolean v ) public void setFlip( final boolean u, final boolean v )
{ {
this.flip_u = u; this.setFlipU( u );
this.flip_v = v; this.setFlipV( v );
} }
public int setFlip( final int orientation ) public int setFlip( final int orientation )
{ {
this.flip_u = ( orientation & 8 ) == 8; this.setFlipU( ( orientation & 8 ) == 8 );
this.flip_v = ( orientation & 16 ) == 16; this.setFlipV( ( orientation & 16 ) == 16 );
return orientation & 7; return orientation & 7;
} }
boolean isFlipU()
{
return this.flip_u;
}
void setFlipU( final boolean flipU )
{
this.flip_u = flipU;
}
boolean isFlipV()
{
return this.flip_v;
}
void setFlipV( final boolean flipV )
{
this.flip_v = flipV;
}
public void setOriginal( @Nonnull final IAESprite original )
{
this.original = original;
}
} }

Some files were not shown because too many files have changed in this diff Show More