public void DropConnection()
 {
     DropConnectionRequest dropReq = new DropConnectionRequest();
     dropReq.networkId = _networkID;
     dropReq.nodeId = _nodeID;
     matchMaker.DropConnection(dropReq, OnConnectionDrop);
 }
Пример #2
0
        // Start to drop a connection from a match
        internal Coroutine DropConnection(DropConnectionRequest req, BasicResponseDelegate callback)
        {
            if (callback == null)
            {
                Debug.Log("callback supplied is null, aborting DropConnection Request.");
                return(null);
            }

            Uri uri = new Uri(baseUri, "/json/reply/DropConnectionRequest");

            Debug.Log("MatchMakingClient DropConnection :" + uri);

            var data = new WWWForm();

            data.AddField("version", UnityEngine.Networking.Match.Request.currentVersion);
            data.AddField("projectId", Application.cloudProjectId);
            data.AddField("sourceId", Utility.GetSourceID().ToString());
            data.AddField("accessTokenString", Utility.GetAccessTokenForNetwork(req.networkId).GetByteString());
            data.AddField("domain", req.domain);

            data.AddField("networkId", req.networkId.ToString());
            data.AddField("nodeId", req.nodeId.ToString());

            data.headers["Accept"] = "application/json";

            var client = UnityWebRequest.Post(uri.ToString(), data);

            return(StartCoroutine(ProcessMatchResponse <DropConnectionResponse, BasicResponseDelegate>(client, OnDropConnection, callback)));
        }
Пример #3
0
        internal Coroutine DropConnection(DropConnectionRequest req, NetworkMatch.BasicResponseDelegate callback)
        {
            Coroutine result;

            if (callback == null)
            {
                UnityEngine.Debug.Log("callback supplied is null, aborting DropConnection Request.");
                result = null;
            }
            else
            {
                Uri uri = new Uri(this.baseUri, "/json/reply/DropConnectionRequest");
                UnityEngine.Debug.Log("MatchMakingClient DropConnection :" + uri);
                WWWForm wWWForm = new WWWForm();
                wWWForm.AddField("version", Request.currentVersion);
                wWWForm.AddField("projectId", Application.cloudProjectId);
                wWWForm.AddField("sourceId", Utility.GetSourceID().ToString());
                wWWForm.AddField("accessTokenString", Utility.GetAccessTokenForNetwork(req.networkId).GetByteString());
                wWWForm.AddField("domain", req.domain);
                wWWForm.AddField("networkId", req.networkId.ToString());
                wWWForm.AddField("nodeId", req.nodeId.ToString());
                wWWForm.headers["Accept"] = "application/json";
                WWW client = new WWW(uri.ToString(), wWWForm);
                result = base.StartCoroutine(this.ProcessMatchResponse <DropConnectionResponse, NetworkMatch.BasicResponseDelegate>(client, new NetworkMatch.InternalResponseDelegate <DropConnectionResponse, NetworkMatch.BasicResponseDelegate>(this.OnDropConnection), callback));
            }
            return(result);
        }
Пример #4
0
        public Coroutine DropConnection(NetworkID netId, NodeID dropNodeId, ResponseDelegate <BasicResponse> callback)
        {
            DropConnectionRequest req = new DropConnectionRequest {
                networkId = netId,
                nodeId    = dropNodeId
            };

            return(this.DropConnection(req, callback));
        }
Пример #5
0
 public void LeaveMatch()
 {
     if (this.matchCreated) {
         NetworkManager.singleton.matchMaker.DestroyMatch ((NetworkID)this.joinedMatchNetworkID, OnDestroyMatch);
     } else{
         DropConnectionRequest dropRequest = new DropConnectionRequest ();
         dropRequest.networkId = (NetworkID)this.joinedMatchNetworkID;
         dropRequest.nodeId = (NodeID)this.joinedMatchNodeId;
         NetworkManager.singleton.matchMaker.DropConnection (dropRequest, OnConnectionDrop);
     }
 }
Пример #6
0
        public Coroutine DropConnection(DropConnectionRequest req, NetworkMatch.ResponseDelegate <BasicResponse> callback)
        {
            Uri uri = new Uri(this.baseUri, "/json/reply/DropConnectionRequest");

            UnityEngine.Debug.Log((object)("MatchMakingClient DropConnection :" + (object)uri));
            WWWForm form = new WWWForm();

            form.AddField("projectId", Application.cloudProjectId);
            form.AddField("sourceId", Utility.GetSourceID().ToString());
            form.AddField("appId", Utility.GetAppID().ToString());
            form.AddField("accessTokenString", Utility.GetAccessTokenForNetwork(req.networkId).GetByteString());
            form.AddField("domain", 0);
            form.AddField("networkId", req.networkId.ToString());
            form.AddField("nodeId", req.nodeId.ToString());
            form.headers["Accept"] = "application/json";
            return(this.StartCoroutine(this.ProcessMatchResponse <BasicResponse>(new WWW(uri.ToString(), form), callback)));
        }
Пример #7
0
        public Coroutine DropConnection(DropConnectionRequest req, ResponseDelegate <BasicResponse> callback)
        {
            Uri uri = new Uri(baseUri, "/json/reply/DropConnectionRequest");

            Debug.Log("MatchMakingClient DropConnection :" + uri);
            WWWForm wWWForm = new WWWForm();

            wWWForm.AddField("projectId", Application.cloudProjectId);
            wWWForm.AddField("sourceId", Utility.GetSourceID().ToString());
            wWWForm.AddField("appId", Utility.GetAppID().ToString());
            wWWForm.AddField("accessTokenString", Utility.GetAccessTokenForNetwork(req.networkId).GetByteString());
            wWWForm.AddField("domain", 0);
            wWWForm.AddField("networkId", req.networkId.ToString());
            wWWForm.AddField("nodeId", req.nodeId.ToString());
            wWWForm.headers["Accept"] = "application/json";
            WWW client = new WWW(uri.ToString(), wWWForm);

            return(StartCoroutine(ProcessMatchResponse(client, callback)));
        }
Пример #8
0
	private void cleanUpMatchAndSwitchState(State state) {
		if (match != null) {
			OffAllUI();
			// if match is active, we only switch to new state on callbacks, otherwise, they may be cancelled.
			nextState = state;
			if (isMatchCreator) {
				Debug.Log ("isMatchCreator, DestroyMatch");
				networkLobbyManager.matchMaker.DestroyMatch ((NetworkID)networkId, OnDestroyMatch);
			} else{
				Debug.Log ("not isMatchCreator, DropConnection");
				DropConnectionRequest dropReq = new DropConnectionRequest ();
				dropReq.networkId = (NetworkID) networkId;
				dropReq.nodeId = (NodeID) nodeId;
				networkLobbyManager.matchMaker.DropConnection (dropReq, OnConnectionDrop);
			}
		} else {
			switchState(state);
		}
	}
Пример #9
0
 public void LeaveMatchMaking()
 {
     if (isServer)
     {
         var id = LobbyManager.instance.matchInfo.networkId;
         LobbyManager.instance.matchMaker.DestroyMatch(id, OnMatchDestroyed);
     }
     else
     {
         var request = new DropConnectionRequest();
         request.networkId = LobbyManager.instance.matchInfo.networkId;
         request.nodeId = LobbyManager.instance.matchInfo.nodeId;
         LobbyManager.instance.matchMaker.DropConnection(request, OnConnectionDropped);
     }
 }