Basic reformat, hit once, hope never again

This commit is contained in:
thatsIch
2015-04-03 08:54:31 +02:00
parent 4ff1631f89
commit d34c988c88
886 changed files with 31400 additions and 30990 deletions
@@ -64,7 +64,7 @@ public class ItemFacade extends AEBaseItem implements IFacadeItem, IAlphaPassIte
{
this.setFeature( EnumSet.of( AEFeature.Facades ) );
this.setHasSubtypes( true );
if ( Platform.isClient() )
if( Platform.isClient() )
MinecraftForgeClient.registerItemRenderer( this, BusRenderer.INSTANCE );
}
@@ -87,12 +87,12 @@ public class ItemFacade extends AEBaseItem implements IFacadeItem, IAlphaPassIte
try
{
ItemStack in = this.getTextureItem( is );
if ( in != null )
if( in != null )
{
return super.getItemStackDisplayName( is ) + " - " + in.getDisplayName();
}
}
catch ( Throwable ignored )
catch( Throwable ignored )
{
}
@@ -107,69 +107,12 @@ public class ItemFacade extends AEBaseItem implements IFacadeItem, IAlphaPassIte
list.addAll( this.subTypes );
}
@Override
public FacadePart createPartFromItemStack( ItemStack is, ForgeDirection side )
{
ItemStack in = this.getTextureItem( is );
if ( in != null )
return new FacadePart( is, side );
return null;
}
@Override
public ItemStack getTextureItem( ItemStack is )
{
Block blk = this.getBlock( is );
if ( blk != null )
return new ItemStack( blk, 1, this.getMeta( is ) );
return null;
}
@Override
public int getMeta( ItemStack is )
{
NBTTagCompound data = is.getTagCompound();
if ( data != null )
{
int[] blk = data.getIntArray( "x" );
if ( blk != null && blk.length == 2 )
return blk[1];
}
return 0;
}
@Override
public Block getBlock( ItemStack is )
{
NBTTagCompound data = is.getTagCompound();
if ( data != null )
{
if ( data.hasKey( "modid" ) && data.hasKey( "itemname" ) )
{
return GameRegistry.findBlock( data.getString( "modid" ), data.getString( "itemname" ) );
}
else
{
int[] blk = data.getIntArray( "x" );
if ( blk != null && blk.length == 2 )
return Block.getBlockById( blk[0] );
}
}
return Blocks.glass;
}
public List<ItemStack> getFacades()
{
this.calculateSubTypes();
return this.subTypes;
}
private void calculateSubTypes()
{
if ( this.subTypes == null )
if( this.subTypes == null )
{
this.subTypes = new ArrayList<ItemStack>();
for ( Object blk : Block.blockRegistry )
for( Object blk : Block.blockRegistry )
{
Block b = (Block) blk;
try
@@ -178,31 +121,31 @@ public class ItemFacade extends AEBaseItem implements IFacadeItem, IAlphaPassIte
List<ItemStack> tmpList = new ArrayList<ItemStack>();
b.getSubBlocks( item, b.getCreativeTabToDisplayOn(), tmpList );
for ( ItemStack l : tmpList )
for( ItemStack l : tmpList )
{
ItemStack facade = this.createFacadeForItem( l, false );
if ( facade != null )
if( facade != null )
this.subTypes.add( facade );
}
}
catch ( Throwable t )
catch( Throwable t )
{
// just absorb..
}
}
if ( FacadeConfig.instance.hasChanged() )
if( FacadeConfig.instance.hasChanged() )
FacadeConfig.instance.save();
}
}
public ItemStack createFacadeForItem( ItemStack l, boolean returnItem )
{
if ( l == null )
if( l == null )
return null;
Block b = Block.getBlockFromItem( l.getItem() );
if ( b == null || l.hasTagCompound() )
if( b == null || l.hasTagCompound() )
return null;
int metadata = l.getItem().getMetadata( l.getItemDamage() );
@@ -212,9 +155,9 @@ public class ItemFacade extends AEBaseItem implements IFacadeItem, IAlphaPassIte
boolean disableOre = b instanceof OreQuartz;
boolean defaultValue = ( b.isOpaqueCube() && !b.getTickRandomly() && !hasTile && !disableOre ) || enableGlass;
if ( FacadeConfig.instance.checkEnabled( b, metadata, defaultValue ) )
if( FacadeConfig.instance.checkEnabled( b, metadata, defaultValue ) )
{
if ( returnItem )
if( returnItem )
return l;
ItemStack is = new ItemStack( this );
@@ -232,17 +175,74 @@ public class ItemFacade extends AEBaseItem implements IFacadeItem, IAlphaPassIte
return null;
}
@Override
public FacadePart createPartFromItemStack( ItemStack is, ForgeDirection side )
{
ItemStack in = this.getTextureItem( is );
if( in != null )
return new FacadePart( is, side );
return null;
}
@Override
public ItemStack getTextureItem( ItemStack is )
{
Block blk = this.getBlock( is );
if( blk != null )
return new ItemStack( blk, 1, this.getMeta( is ) );
return null;
}
@Override
public int getMeta( ItemStack is )
{
NBTTagCompound data = is.getTagCompound();
if( data != null )
{
int[] blk = data.getIntArray( "x" );
if( blk != null && blk.length == 2 )
return blk[1];
}
return 0;
}
@Override
public Block getBlock( ItemStack is )
{
NBTTagCompound data = is.getTagCompound();
if( data != null )
{
if( data.hasKey( "modid" ) && data.hasKey( "itemname" ) )
{
return GameRegistry.findBlock( data.getString( "modid" ), data.getString( "itemname" ) );
}
else
{
int[] blk = data.getIntArray( "x" );
if( blk != null && blk.length == 2 )
return Block.getBlockById( blk[0] );
}
}
return Blocks.glass;
}
public List<ItemStack> getFacades()
{
this.calculateSubTypes();
return this.subTypes;
}
public ItemStack getCreativeTabIcon()
{
this.calculateSubTypes();
if ( this.subTypes.isEmpty() )
if( this.subTypes.isEmpty() )
return new ItemStack( Items.cake );
return this.subTypes.get( 0 );
}
public ItemStack createFromIDs( int[] ids )
{
for ( ItemStack facadeStack : AEApi.instance().definitions().items().facade().maybeStack( 1 ).asSet() )
for( ItemStack facadeStack : AEApi.instance().definitions().items().facade().maybeStack( 1 ).asSet() )
{
NBTTagCompound facadeTag = new NBTTagCompound();
facadeTag.setIntArray( "x", ids.clone() );
@@ -259,11 +259,11 @@ public class ItemFacade extends AEBaseItem implements IFacadeItem, IAlphaPassIte
{
ItemStack out = this.getTextureItem( is );
if ( out == null || out.getItem() == null )
if( out == null || out.getItem() == null )
return false;
Block blk = Block.getBlockFromItem( out.getItem() );
if ( blk != null && blk.canRenderInPass( 1 ) )
if( blk != null && blk.canRenderInPass( 1 ) )
return true;
return false;
@@ -18,6 +18,7 @@
package appeng.items.parts;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
@@ -27,7 +28,6 @@ import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import javax.annotation.Nullable;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -50,29 +50,20 @@ import appeng.api.util.AEColor;
import appeng.core.AEConfig;
import appeng.core.AELog;
import appeng.core.features.AEFeature;
import appeng.core.features.NameResolver;
import appeng.core.features.ItemStackSrc;
import appeng.core.features.NameResolver;
import appeng.core.localization.GuiText;
import appeng.items.AEBaseItem;
public class ItemMultiPart extends AEBaseItem implements IPartItem, IItemGroup
{
public static ItemMultiPart instance;
private final NameResolver nameResolver;
private static class PartTypeIst
{
private PartType part;
private int variant;
@SideOnly(Side.CLIENT)
private IIcon ico;
}
private final Map<Integer, PartTypeIst> dmgToPart = new HashMap<Integer, PartTypeIst>();
public static ItemMultiPart instance;
public ItemMultiPart( IPartHelper partHelper ) {
public ItemMultiPart( IPartHelper partHelper )
{
this.nameResolver = new NameResolver( this.getClass() );
this.setFeature( EnumSet.of( AEFeature.Core ) );
partHelper.setItemBusRenderer( this );
@@ -85,26 +76,26 @@ public class ItemMultiPart extends AEBaseItem implements IPartItem, IItemGroup
int varID = 0;
// verify
for (PartTypeIst p : this.dmgToPart.values())
for( PartTypeIst p : this.dmgToPart.values() )
{
if ( p.part == mat && p.variant == varID )
if( p.part == mat && p.variant == varID )
throw new RuntimeException( "Cannot create the same material twice..." );
}
boolean enabled = true;
for (AEFeature f : mat.getFeature())
for( AEFeature f : mat.getFeature() )
enabled = enabled && AEConfig.instance.isFeatureEnabled( f );
int newPartNum = mat.baseDamage + varID;
ItemStackSrc output = new ItemStackSrc( this, newPartNum );
if ( enabled )
if( enabled )
{
PartTypeIst pti = new PartTypeIst();
pti.part = mat;
pti.variant = varID;
if ( this.dmgToPart.get( newPartNum ) == null )
if( this.dmgToPart.get( newPartNum ) == null )
{
this.dmgToPart.put( newPartNum, pti );
return output;
@@ -118,7 +109,7 @@ public class ItemMultiPart extends AEBaseItem implements IPartItem, IItemGroup
return output;
}
public ItemStackSrc createPart(PartType mat, Enum variant)
public ItemStackSrc createPart( PartType mat, Enum variant )
{
try
{
@@ -126,7 +117,7 @@ public class ItemMultiPart extends AEBaseItem implements IPartItem, IItemGroup
ItemStack is = new ItemStack( this );
mat.getPart().getConstructor( ItemStack.class ).newInstance( is );
}
catch (Throwable e)
catch( Throwable e )
{
AELog.integration( e );
e.printStackTrace();
@@ -136,17 +127,17 @@ public class ItemMultiPart extends AEBaseItem implements IPartItem, IItemGroup
int varID = variant == null ? 0 : variant.ordinal();
// verify
for (PartTypeIst p : this.dmgToPart.values())
for( PartTypeIst p : this.dmgToPart.values() )
{
if ( p.part == mat && p.variant == varID )
if( p.part == mat && p.variant == varID )
throw new RuntimeException( "Cannot create the same material twice..." );
}
boolean enabled = true;
for (AEFeature f : mat.getFeature())
for( AEFeature f : mat.getFeature() )
enabled = enabled && AEConfig.instance.isFeatureEnabled( f );
if ( enabled )
if( enabled )
{
int newPartNum = mat.baseDamage + varID;
ItemStackSrc output = new ItemStackSrc( this, newPartNum );
@@ -155,7 +146,7 @@ public class ItemMultiPart extends AEBaseItem implements IPartItem, IItemGroup
pti.part = mat;
pti.variant = varID;
if ( this.dmgToPart.get( newPartNum ) == null )
if( this.dmgToPart.get( newPartNum ) == null )
{
this.dmgToPart.put( newPartNum, pti );
return output;
@@ -167,77 +158,101 @@ public class ItemMultiPart extends AEBaseItem implements IPartItem, IItemGroup
return null;
}
public int getDamageByType(PartType t)
public int getDamageByType( PartType t )
{
for (Entry<Integer, PartTypeIst> pt : this.dmgToPart.entrySet())
for( Entry<Integer, PartTypeIst> pt : this.dmgToPart.entrySet() )
{
if ( pt.getValue().part == t )
if( pt.getValue().part == t )
return pt.getKey();
}
return -1;
}
@Nullable
public PartType getTypeByStack(ItemStack is)
{
if ( is == null )
return null;
PartTypeIst pt = this.dmgToPart.get( is.getItemDamage() );
if ( pt != null )
return pt.part;
return null;
}
@Override
@SideOnly(Side.CLIENT)
@SideOnly( Side.CLIENT )
public int getSpriteNumber()
{
return 0;
}
@Override
public IIcon getIconFromDamage(int dmg)
public IIcon getIconFromDamage( int dmg )
{
return this.dmgToPart.get( dmg ).ico;
}
@Override
public String getUnlocalizedName(ItemStack is)
public boolean onItemUse( ItemStack is, EntityPlayer player, World w, int x, int y, int z, int side, float hitX, float hitY, float hitZ )
{
return AEApi.instance().partHelper().placeBus( is, x, y, z, side, player, w );
}
@Override
public String getUnlocalizedName( ItemStack is )
{
return "item.appliedenergistics2." + this.getName( is );
}
public String getName(ItemStack is)
public String getName( ItemStack is )
{
return this.nameResolver.getName( this.getTypeByStack( is ).name() );
}
@Nullable
public PartType getTypeByStack( ItemStack is )
{
if( is == null )
return null;
PartTypeIst pt = this.dmgToPart.get( is.getItemDamage() );
if( pt != null )
return pt.part;
return null;
}
@Override
public String getItemStackDisplayName(ItemStack is)
public String getItemStackDisplayName( ItemStack is )
{
PartType pt = this.getTypeByStack( is );
if ( pt == null )
if( pt == null )
return "Unnamed";
if ( pt.isCable() )
if( pt.isCable() )
{
final AEColor[] variants = AEColor.values();
return super.getItemStackDisplayName( is ) + " - " + variants[this.dmgToPart.get( is.getItemDamage() ).variant].toString();
}
if ( pt.getExtraName() != null )
if( pt.getExtraName() != null )
return super.getItemStackDisplayName( is ) + " - " + pt.getExtraName().getLocal();
return super.getItemStackDisplayName( is );
}
@Override
public void registerIcons(IIconRegister par1IconRegister)
public void getSubItems( Item number, CreativeTabs tab, List cList )
{
for (Entry<Integer, PartTypeIst> part : this.dmgToPart.entrySet())
List<Entry<Integer, PartTypeIst>> types = new ArrayList<Entry<Integer, PartTypeIst>>( this.dmgToPart.entrySet() );
Collections.sort( types, new Comparator<Entry<Integer, PartTypeIst>>()
{
@Override
public int compare( Entry<Integer, PartTypeIst> o1, Entry<Integer, PartTypeIst> o2 )
{
return o1.getValue().part.name().compareTo( o2.getValue().part.name() );
}
} );
for( Entry<Integer, PartTypeIst> part : types )
cList.add( new ItemStack( this, 1, part.getKey() ) );
}
@Override
public void registerIcons( IIconRegister par1IconRegister )
{
for( Entry<Integer, PartTypeIst> part : this.dmgToPart.entrySet() )
{
String tex = "appliedenergistics2:" + this.getName( new ItemStack( this, 1, part.getKey() ) );
part.getValue().ico = par1IconRegister.registerIcon( tex );
@@ -245,60 +260,35 @@ public class ItemMultiPart extends AEBaseItem implements IPartItem, IItemGroup
}
@Override
public boolean onItemUse(ItemStack is, EntityPlayer player, World w, int x, int y, int z, int side, float hitX, float hitY, float hitZ)
{
return AEApi.instance().partHelper().placeBus( is, x, y, z, side, player, w );
}
@Override
public IPart createPartFromItemStack(ItemStack is)
public IPart createPartFromItemStack( ItemStack is )
{
try
{
PartType t = this.getTypeByStack( is );
if ( t != null )
if( t != null )
{
if ( t.constructor == null )
if( t.constructor == null )
t.constructor = t.getPart().getConstructor( ItemStack.class );
return t.constructor.newInstance( is );
}
}
catch (Throwable e)
catch( Throwable e )
{
throw new RuntimeException( "Unable to construct IBusPart from IBusItem : " + this.getTypeByStack( is ).getPart().getName()
+ " ; Possibly didn't have correct constructor( ItemStack )", e );
throw new RuntimeException( "Unable to construct IBusPart from IBusItem : " + this.getTypeByStack( is ).getPart().getName() + " ; Possibly didn't have correct constructor( ItemStack )", e );
}
return null;
}
@Override
public void getSubItems(Item number, CreativeTabs tab, List cList)
public int variantOf( int itemDamage )
{
List<Entry<Integer, PartTypeIst>> types = new ArrayList<Entry<Integer, PartTypeIst>>( this.dmgToPart.entrySet() );
Collections.sort( types, new Comparator<Entry<Integer, PartTypeIst>>() {
@Override
public int compare(Entry<Integer, PartTypeIst> o1, Entry<Integer, PartTypeIst> o2)
{
return o1.getValue().part.name().compareTo( o2.getValue().part.name() );
}
} );
for (Entry<Integer, PartTypeIst> part : types)
cList.add( new ItemStack( this, 1, part.getKey() ) );
}
public int variantOf(int itemDamage)
{
if ( this.dmgToPart.containsKey( itemDamage ) )
if( this.dmgToPart.containsKey( itemDamage ) )
return this.dmgToPart.get( itemDamage ).variant;
return 0;
}
@Override
public String getUnlocalizedGroupName(Set<ItemStack> others, ItemStack is)
public String getUnlocalizedGroupName( Set<ItemStack> others, ItemStack is )
{
boolean importBus = false;
boolean exportBus = false;
@@ -306,36 +296,45 @@ public class ItemMultiPart extends AEBaseItem implements IPartItem, IItemGroup
PartType u = this.getTypeByStack( is );
for (ItemStack stack : others)
for( ItemStack stack : others )
{
if ( stack.getItem() == this )
if( stack.getItem() == this )
{
PartType pt = this.getTypeByStack( stack );
switch (pt)
switch( pt )
{
case ImportBus:
importBus = true;
if ( u == pt )
group = true;
break;
case ExportBus:
exportBus = true;
if ( u == pt )
group = true;
break;
default:
case ImportBus:
importBus = true;
if( u == pt )
group = true;
break;
case ExportBus:
exportBus = true;
if( u == pt )
group = true;
break;
default:
}
}
}
if ( group && importBus && exportBus )
if( group && importBus && exportBus )
return GuiText.IOBuses.getUnlocalized();
return null;
}
public ItemStack getStackFromTypeAndVariant(PartType mt, int variant)
public ItemStack getStackFromTypeAndVariant( PartType mt, int variant )
{
return new ItemStack( this, 1, mt.baseDamage + variant );
}
private static class PartTypeIst
{
private PartType part;
private int variant;
@SideOnly( Side.CLIENT )
private IIcon ico;
}
}
@@ -152,11 +152,10 @@ public enum PartType
InterfaceTerminal( 480, EnumSet.of( AEFeature.InterfaceTerminal ), PartInterfaceTerminal.class );
public final int baseDamage;
private final EnumSet<AEFeature> features;
private final Class<? extends IPart> myPart;
private final GuiText extraName;
public final int baseDamage;
public Constructor<? extends IPart> constructor;
PartType( int baseMetaValue, EnumSet<AEFeature> features, Class<? extends IPart> c )