static void RaiseRankChangedEvent([NotNull] PlayerInfo playerInfo, [NotNull] Player rankChanger, [NotNull] Rank oldRank, [CanBeNull] string reason, RankChangeType rankChangeType, bool announce) { var h = RankChanged; if (h != null) { h(null, new PlayerInfoRankChangedEventArgs(playerInfo, rankChanger, oldRank, reason, rankChangeType, announce)); } }
static bool RaiseRankChangingEvent([NotNull] PlayerInfo playerInfo, [NotNull] Player rankChanger, [NotNull] Rank newRank, [CanBeNull] string reason, RankChangeType rankChangeType, bool announce) { var h = RankChanging; if (h == null) { return(false); } var e = new PlayerInfoRankChangingEventArgs(playerInfo, rankChanger, newRank, reason, rankChangeType, announce); h(null, e); return(e.Cancel); }
public static int GetIndex(Rank rank) { return((rank == null) ? 0 : (rank.Index + 1)); }
public static IEnumerable <Player> RankedAtLeast(this IEnumerable <Player> source, Rank minRank) { if (source == null) { throw new ArgumentNullException("source"); } if (minRank == null) { throw new ArgumentNullException("minRank"); } foreach (Player player in source) { if (player.Info.Rank >= minRank) { yield return(player); } } }
public static IEnumerable <Player> NotRanked(this IEnumerable <Player> source, Rank rank) { if (source == null) { throw new ArgumentNullException("source"); } if (rank == null) { throw new ArgumentNullException("rank"); } foreach (Player player in source) { if (player.Info.Rank != rank) { yield return(player); } } }
public static IEnumerable <Player> Cant([NotNull] this IEnumerable <Player> source, Permission permission, [NotNull] Rank affectedRank) { if (source == null) { throw new ArgumentNullException("source"); } if (affectedRank == null) { throw new ArgumentNullException("affectedRank"); } foreach (Player player in source) { if (!player.Can(permission, affectedRank)) { yield return(player); } } }