Applied-Energistics-2-tiler.../util/ItemSorters.java
AlgorithmX2 eb15bd3a68 Added Energy Watcher API
Added Event to Recalculate Channel Requirements for a Node.
Level Emitter can now output redstone based on network energy levels.
Level Emitter's entry field can now hold longs ( text box supports up o trillions )
2014-02-21 00:10:38 -06:00

62 lines
1.3 KiB
Java

package appeng.util;
import java.util.Comparator;
import appeng.api.config.SortDir;
import appeng.api.storage.data.IAEItemStack;
public class ItemSorters
{
public static SortDir Direction = SortDir.ASCENDING;
public static int compareInt(int a, int b)
{
if ( a == b )
return 0;
if ( a < b )
return -1;
return 1;
}
public static int compareLong(long a, long b)
{
if ( a == b )
return 0;
if ( a < b )
return -1;
return 1;
}
public static int comparDouble(double a, double b)
{
if ( a == b )
return 0;
if ( a < b )
return -1;
return 1;
}
public static Comparator<IAEItemStack> ConfigBased_SortByName = new Comparator<IAEItemStack>() {
@Override
public int compare(IAEItemStack o1, IAEItemStack o2)
{
if ( Direction == SortDir.ASCENDING )
return Platform.getItemDisplayName( o1 ).compareToIgnoreCase( Platform.getItemDisplayName( o2 ) );
return Platform.getItemDisplayName( o2 ).compareToIgnoreCase( Platform.getItemDisplayName( o1 ) );
}
};
public static Comparator<IAEItemStack> ConfigBased_SortBySize = new Comparator<IAEItemStack>() {
@Override
public int compare(IAEItemStack o1, IAEItemStack o2)
{
if ( Direction == SortDir.ASCENDING )
return compareLong( o2.getStackSize(), o1.getStackSize() );
return compareLong( o1.getStackSize(), o2.getStackSize() );
}
};
}