static void Organize() { List <OnPlayerRankSetEvent> temp = new List <OnPlayerRankSetEvent>(); List <OnPlayerRankSetEvent> temp2 = events; OnPlayerRankSetEvent temp3 = null; int i = 0; int ii = temp2.Count; while (i < ii) { foreach (OnPlayerRankSetEvent p in temp2) { if (temp3 == null) { temp3 = p; } else if (temp3.priority < p.priority) { temp3 = p; } } temp.Add(temp3); temp2.Remove(temp3); temp3 = null; i++; } events = temp; }
//Move along...nothing to see here... internal static void because(Player p, Group newrank) { if (OnPlayerRankSet != null) { OnPlayerRankSet(p, newrank); } OnPlayerRankSetEvent.Call(p, newrank); }