Exemplo n.º 1
0
 private void PrepServerListRequest(Dictionary <string, string> filters, OnServerReceived onServerReceived, OnServerListReceived onServerListReceived, out string[] keys, out string[] values)
 {
     if ((int)this._serverListRequest != 0)
     {
         this.CancelCurrentServerListRequest();
     }
     this._serverList           = new Servers();
     this._serverFilters        = filters;
     this._onServerReceived     = onServerReceived;
     this._onServerListReceived = onServerListReceived;
     if (this._onServerReceivedFromSteam == null)
     {
         this._onServerReceivedFromSteam     = new OnMatchmakingServerReceivededFromSteam(this.OnServerReceived);
         this._onServerListReceivedFromSteam = new OnMatchmakingServerListReceivededFromSteam(this.OnServerListComplete);
     }
     if (this._serverFilters != null)
     {
         keys   = new string[this._serverFilters.Keys.Count];
         values = new string[this._serverFilters.Values.Count];
         this._serverFilters.Keys.CopyTo(keys, 0);
         this._serverFilters.Values.CopyTo(values, 0);
     }
     else
     {
         keys   = (string[])null;
         values = (string[])null;
     }
 }
Exemplo n.º 2
0
 public Servers RequestLANServerList(OnServerReceived onServerReceived, OnServerListReceived onServerListReceived)
 {
     string[] keys;
     string[] values;
     this.PrepServerListRequest((Dictionary <string, string>)null, onServerReceived, onServerListReceived, out keys, out values);
     this._serverListRequest = Matchmaking.SteamUnityAPI_SteamMatchmakingServers_RequestLANServerList(this._matchmakingServers, Matchmaking.SteamUnityAPI_SteamUtils_GetAppID(), Marshal.GetFunctionPointerForDelegate((Delegate)this._onServerReceivedFromSteam), Marshal.GetFunctionPointerForDelegate((Delegate)this._onServerListReceivedFromSteam));
     return(this._serverList);
 }
Exemplo n.º 3
0
        /// <summary>
        ///     收取消息后入队
        /// </summary>
        /// <param name="userToken"></param>
        /// <param name="msg"></param>
        protected void RaiseOnReceived(IUserToken userToken, Message msg)
        {
            msg.SendTick = DateTime.Now.Ticks;

            ProcessReceivedMsg(userToken, msg);

            OnServerReceived?.Invoke(userToken, msg);
        }
Exemplo n.º 4
0
        public Servers RequestFriendServerList(Dictionary <string, string> filters, OnServerReceived onServerReceived, OnServerListReceived onServerListReceived)
        {
            string[] keys;
            string[] values;
            this.PrepServerListRequest(filters, onServerReceived, onServerListReceived, out keys, out values);
            this._serverListRequest = this._serverFilters == null?Matchmaking.SteamUnityAPI_SteamMatchmakingServers_RequestFriendServerList(this._matchmakingServers, Matchmaking.SteamUnityAPI_SteamUtils_GetAppID(), (string[])null, (string[])null, 0U, Marshal.GetFunctionPointerForDelegate((Delegate)this._onServerReceivedFromSteam), Marshal.GetFunctionPointerForDelegate((Delegate)this._onServerListReceivedFromSteam)) : Matchmaking.SteamUnityAPI_SteamMatchmakingServers_RequestFriendServerList(this._matchmakingServers, Matchmaking.SteamUnityAPI_SteamUtils_GetAppID(), keys, values, (uint)this._serverFilters.Count, Marshal.GetFunctionPointerForDelegate((Delegate)this._onServerReceivedFromSteam), Marshal.GetFunctionPointerForDelegate((Delegate)this._onServerListReceivedFromSteam));

            return(this._serverList);
        }