diff --git a/items/materials/ItemMultiMaterial.java b/items/materials/ItemMultiMaterial.java index 761809066..24446bcd1 100644 --- a/items/materials/ItemMultiMaterial.java +++ b/items/materials/ItemMultiMaterial.java @@ -1,5 +1,6 @@ package appeng.items.materials; +import java.util.Arrays; import java.util.Collections; import java.util.Comparator; import java.util.EnumSet; @@ -298,11 +299,21 @@ public class ItemMultiMaterial extends AEBaseItem implements IStorageComponent, @Override public void getSubItems(Item par1, CreativeTabs par2CreativeTabs, List cList) { - for (MaterialType mat : MaterialType.values()) + List types = Arrays.asList( MaterialType.values() ); + Collections.sort( types, new Comparator() { + + @Override + public int compare(MaterialType o1, MaterialType o2) + { + return o1.name().compareTo( o2.name() ); + } + + } ); + + for (MaterialType mat : types) { if ( mat.damageValue >= 0 && mat.isRegistered() ) cList.add( new ItemStack( this, 1, mat.damageValue ) ); } } - } diff --git a/items/parts/ItemMultiPart.java b/items/parts/ItemMultiPart.java index fd031e90d..bae0975ae 100644 --- a/items/parts/ItemMultiPart.java +++ b/items/parts/ItemMultiPart.java @@ -1,5 +1,8 @@ package appeng.items.parts; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; import java.util.EnumSet; import java.util.HashMap; import java.util.List; @@ -61,7 +64,7 @@ public class ItemMultiPart extends AEBaseItem implements IPartItem, IItemGroup } catch (Throwable e) { - AELog.integration(e); + AELog.integration( e ); return null; // part not supported.. } @@ -200,7 +203,18 @@ public class ItemMultiPart extends AEBaseItem implements IPartItem, IItemGroup @Override public void getSubItems(Item number, CreativeTabs tab, List cList) { - for (Entry part : dmgToPart.entrySet()) + List> types = new ArrayList( dmgToPart.entrySet() ); + Collections.sort( types, new Comparator>() { + + @Override + public int compare(Entry o1, Entry o2) + { + return o1.getValue().part.name().compareTo( o2.getValue().part.name() ); + } + + } ); + + for (Entry part : types) cList.add( new ItemStack( this, 1, part.getKey() ) ); }