Exemple #1
0
 public static Player[] FindPlayers([NotNull] Player player, [NotNull] string name, bool raiseEvent)
 {
     if (player == null) throw new ArgumentNullException("player");
     if (name == null) throw new ArgumentNullException("name");
     if (name == "-")
     {
         if (player.LastUsedPlayerName != null)
         {
             name = player.LastUsedPlayerName;
         }
         else
         {
             return new Player[0];
         }
     }
     player.LastUsedPlayerName = name;
     List<Player> results = new List<Player>();
     Player[] tempList = Players;
     for (int i = 0; i < tempList.Length; i++)
     {
         if (tempList[i] == null || !player.CanSee(tempList[i])) continue;
         if (tempList[i].Name.Equals(name, StringComparison.OrdinalIgnoreCase))
         {
             results.Clear();
             results.Add(tempList[i]);
             break;
         }
         else if (tempList[i].Name.StartsWith(name, StringComparison.OrdinalIgnoreCase))
         {
             results.Add(tempList[i]);
         }
     }
     if (raiseEvent)
     {
         var h = SearchingForPlayer;
         if (h != null)
         {
             var e = new SearchingForPlayerEventArgs(player, name, results);
             h(null, e);
         }
     }
     if (results.Count == 1)
     {
         player.LastUsedPlayerName = results[0].Name;
     }
     return results.ToArray();
 }
Exemple #2
0
 public static Player[] FindPlayers([NotNull] string name, bool raiseEvent)
 {
     if (name == null) throw new ArgumentNullException("name");
     Player[] tempList = Players;
     List<Player> results = new List<Player>();
     for (int i = 0; i < tempList.Length; i++)
     {
         if (tempList[i] == null) continue;
         if (tempList[i].Name.Equals(name, StringComparison.OrdinalIgnoreCase))
         {
             results.Clear();
             results.Add(tempList[i]);
             break;
         }
         else if (tempList[i].Name.StartsWith(name, StringComparison.OrdinalIgnoreCase))
         {
             results.Add(tempList[i]);
         }
     }
     if (raiseEvent)
     {
         var h = SearchingForPlayer;
         if (h != null)
         {
             var e = new SearchingForPlayerEventArgs(null, name, results);
             h(null, e);
         }
     }
     return results.ToArray();
 }