Esempio n. 1
0
        /// <summary>
        ///     Retrieves a list of public games, which pass a provided filter.
        ///     (You can implement your own filtering by extending modules or "classes"
        ///     that implement <see cref="IGamesProvider" />)
        /// </summary>
        public void FindGames(Dictionary <string, string> filter, FindGamesCallback callback, ErrorCallback errorCallback)
        {
            if (!Client.IsConnected)
            {
                errorCallback.Invoke("Not connected");
                return;
            }

            Client.SendMessage((ushort)OpCodes.FindGames, filter.ToBytes(), (status, response) =>
            {
                if (status != ResponseStatus.Success)
                {
                    errorCallback.Invoke(response.AsString("Unknown error while requesting a list of games"));
                    return;
                }

                var games = response.DeserializeList <GameInfoPacket>().ToList();

                callback.Invoke(games);
            });
        }
        /// <summary>
        ///     Retrieves a list of public games, which pass a provided filter.
        ///     (You can implement your own filtering by extending modules or "classes"
        ///     that implement <see cref="IGamesProvider" />)
        /// </summary>
        public void FindGames(Dictionary <string, string> filter, FindGamesCallback callback, IClientSocket connection)
        {
            if (!connection.IsConnected)
            {
                Logs.Error("Not connected");
                callback.Invoke(new List <GameInfoPacket>());
                return;
            }

            connection.SendMessage((short)MsfOpCodes.FindGames, filter.ToBytes(), (status, response) => {
                if (status != ResponseStatus.Success)
                {
                    Logs.Error(response.AsString("Unknown error while requesting a list of games"));
                    callback.Invoke(new List <GameInfoPacket>());
                    return;
                }

                var games = response.DeserializeList(() => new GameInfoPacket()).ToList();

                callback.Invoke(games);
            });
        }
Esempio n. 3
0
 /// <summary>
 /// Retrieves a list of public games, which pass a provided filter.
 /// (You can implement your own filtering by extending modules or "classes"
 /// that implement <see cref="IGamesProvider"/>)
 /// </summary>
 public void FindGames(Dictionary <string, string> filter, FindGamesCallback callback)
 {
     FindGames(filter, callback, Connection);
 }
Esempio n. 4
0
 /// <summary>
 /// Retrieves a list of public games, which pass a provided filter.
 /// (You can implement your own filtering by extending modules or "classes"
 /// that implement <see cref="IGamesProvider"/>)
 /// </summary>
 public void FindGames(FindGamesCallback callback)
 {
     FindGames(new Dictionary <string, string> (), callback, Connection);
 }
 public void FindAppropriateMatch(Dictionary <string, string> settings, FindGamesCallback callback)
 {
     FindAppropriateMatch(settings, callback, Connection);
 }
 public void FindAppropriateMatch(FindGamesCallback callback)
 {
     FindAppropriateMatch(new Dictionary <string, string>(), callback, Connection);
 }
Esempio n. 7
0
 /// <summary>
 /// Retrieves a list of public games, which pass a provided filter.
 /// (You can implement your own filtering by extending modules or "classes"
 /// that implement <see cref="IGamesProvider"/>)
 /// </summary>
 public void FindGames(MstProperties filter, FindGamesCallback callback)
 {
     FindGames(filter, callback, Connection);
 }
Esempio n. 8
0
 /// <summary>
 /// Retrieves a list of all public games
 /// </summary>
 /// <param name="callback"></param>
 public void FindGames(FindGamesCallback callback)
 {
     FindGames(new MstProperties(), callback, Connection);
 }