public static int Compare(object a, object b) { XPAsset xpA = a as XPAsset; XPAsset xpB = b as XPAsset; if (xpA == null || xpB == null) { return(0); } string[] sDisplayOrder = { "STR", "BOD", "RFL", "DEX", "INT", "WIL", "CHA", "EDG" }; int iAOrdinal = Array.IndexOf(sDisplayOrder, xpA.Name); int iBOrdinal = Array.IndexOf(sDisplayOrder, xpB.Name); if (iAOrdinal > -1 && iBOrdinal > -1) { return(iAOrdinal - iBOrdinal); } if (iAOrdinal > -1) { return(-1); } if (iBOrdinal > -1) { return(1); } return(xpA.Name.CompareTo(xpB.Name)); }
public static int Compare(object a, object b) { XPChange xpcA = a as XPChange; XPChange xpcB = b as XPChange; if (xpcA == null || xpcB == null) { return(0); } return(XPAsset.Compare(xpcA.XPAsset, xpcB.XPAsset)); }