public virtual void SortStartBySub() { StartArray.Sort((p1, p2) => p1.SubText.CompareTo(p2.SubText)); for (int i = 0; i < StartArray.Count; i++) { StartArray[i].Index = i; } }
public virtual void RemoveStartItemByText(string strText) { int i = StartArray.FindIndex(x => x.Text.ToLower() == strText.ToLower()); if (i >= 0) { RemoveStartItemByIndex(i); } }
public virtual void RemoveStartItemByValue(string strValue) { int i = StartArray.FindIndex(x => x.Value.ToLower() == strValue.ToLower()); if (i >= 0) { RemoveStartItemByIndex(i); } }
// -- ADD ITEM TO STARTING LIST public virtual void AddStartItem(string strValue, string strText, Sprite sprIcon = null, string strSub = "") { int i = StartArray.FindIndex(x => x.Value.ToLower() == strValue.ToLower() || x.Text.ToLower() == strText.ToLower()); if (i >= 0) { // OVERWRITE EXISTING ITEM StartArray[i].Value = strValue; StartArray[i].Text = strText; StartArray[i].Icon = sprIcon; StartArray[i].SubText = strSub; StartArray[i].Index = i; } else { StartArray.Add(new StartingListItem(strValue, strText, sprIcon, strSub)); StartArray[StartArray.Count - 1].Index = StartArray.Count - 1; } }
// -- REMOVE ITEM FROM STARTING LIST public virtual void RemoveStartItemByIndex(int intIndex) { if (intIndex < 0 || intIndex >= StartArray.Count) { return; } for (int i = StartArray.Count - 1; i >= intIndex; i--) { if (i > intIndex) { // MOVE THE ITEM UP ONE SLOT StartArray[i].Index = i - 1; } else { // REMOVE THE ITEM StartArray.RemoveAt(i); } } }