Exemple #1
0
    private void _authenticationClient_OnIncomingDataReceived(RipsawClient.RipsawClient Client, RipsawClient.DataReader DataReader, ref byte[] BufferData)
    {
        string incomingMessage = "";

        while ((incomingMessage = DataReader.IncomingStringParse(ref BufferData)) != "")
        {
            XmlDocument xml = new XmlDocument();
            xml.LoadXml(incomingMessage);
            string messageType = xml.ChildNodes[0].ChildNodes[0].InnerText;
            Debug.Log(messageType);
            switch (messageType)
            {
            case "Warning":
                StatusTextChange(xml.ChildNodes[0].ChildNodes[1].InnerText);
                break;

            case "Login":

                _accountID   = Convert.ToInt64(xml.ChildNodes[0].ChildNodes[1].ChildNodes[0].InnerText);
                _accountGuid = new Guid(xml.ChildNodes[0].ChildNodes[1].ChildNodes[1].InnerText);

                _isLoggedIn        = true;
                _isLoggedInChanged = true;
                break;

            case "Register":
                StatusTextChange("Account registered...");
                break;
            }
        }
    }
Exemple #2
0
    private void _spinUpClient_OnIncomingDataReceived(RipsawClient.RipsawClient Client, RipsawClient.DataReader DataReader, ref byte[] BufferData)
    {
        string incomingMessage = "";

        while ((incomingMessage = DataReader.IncomingStringParse(ref BufferData)) != "")
        {
            XmlDocument xml = new XmlDocument();
            xml.LoadXml(incomingMessage);
            string messageType = xml.ChildNodes[0].ChildNodes[0].InnerText;
            Debug.Log(messageType);
            switch (messageType)
            {
            case "CardLoaded":     //this only comes for certain account types...

                break;

            case "CardAddedToAccount":

                break;

            case "ResourceList":
            case "SetList":
            case "RarityList":
            case "CardList":
            case "CardSaveUpdate":
                //cardCreatorForm.ParseMessage(xml);
                break;

            case "PackList":
            case "PackAdded":
            case "PackOpen":
                //packForm.ParseMessage(xml);
                break;

            case "CardListAccount":
            case "DeckSaveUpdate":
            case "DeckList":
            case "DeckLoad":
                //deckForm.ParseMessage(xml);
                break;

            case "Matchmaking":

                break;

            case "MatchMakingAccountAdded":
                Debug.Log("Account added into matchmaking...");
                break;

            case "MatchMakingAccountRemoved":
                //AddText("Account removed from matchmaking...");
                break;

            case "GameCreated":
                ////a game has been created, and we now have the ip and port of the game server we need to connect to...
                //AddText("Game Server ready for connection... " + xml.ChildNodes[0].ChildNodes[1].ChildNodes[0].InnerText + " : " + xml.ChildNodes[0].ChildNodes[1].ChildNodes[1].InnerText);
                _lobbyMenu.SetActive(false);
                long _gameID = Convert.ToInt64(xml.ChildNodes[0].ChildNodes[2].ChildNodes[0].InnerText);
                Debug.Log(_gameID);

                ////let's kill off any previous events if they had them
                _gameServerClient.OnIncomingDataReceived -= _gameServerClient_OnIncomingDataReceived;
                _gameServerClient.OnConnectionChanged    -= _gameServerClient_OnConnectionChanged;
                //_gameServerClient.Disconnect();

                ////add new events
                //_gameServerClient.OnIncomingDataReceived += _gameServerClient_OnIncomingDataReceived;
                //_gameServerClient.OnConnectionChanged += _gameServerClient_OnConnectionChanged;
                //_gameServerClient.Connect(xml.ChildNodes[0].ChildNodes[1].ChildNodes[0].InnerText, Convert.ToInt32(xml.ChildNodes[0].ChildNodes[1].ChildNodes[1].InnerText));

                break;
            }
        }
    }
Exemple #3
0
    private void _gameServerClient_OnIncomingDataReceived(RipsawClient.RipsawClient Client, RipsawClient.DataReader DataReader, ref byte[] BufferData)
    {
        string incomingMessage = "";

        while ((incomingMessage = DataReader.IncomingStringParse(ref BufferData)) != "")
        {
            XmlDocument xml = new XmlDocument();
            xml.LoadXml(incomingMessage);
            string messageType = xml.ChildNodes[0].ChildNodes[0].InnerText;
            Debug.Log(messageType);

            XmlNodeList nodeList;

            switch (messageType)
            {
            case "DeckList":
                nodeList = xml.ChildNodes[0].ChildNodes[2].ChildNodes;
                for (int i = 0; i < nodeList.Count; i++)
                {
                    //listBox1.Invoke((Action)delegate { listBox1.Items.Add(nodeList[i].ChildNodes[1].InnerText + " (" + nodeList[i].ChildNodes[0].InnerText + ")"); });
                }
                _deckList.SetActive(true);
                break;

            case "GameStart":

                break;
            }
        }
    }
Exemple #4
0
    private void _loadBalancerClient_OnIncomingDataReceived(RipsawClient.RipsawClient Client, RipsawClient.DataReader DataReader, ref byte[] BufferData)
    {
        string incomingMessage = "";

        while ((incomingMessage = DataReader.IncomingStringParse(ref BufferData)) != "")
        {
            XmlDocument xml = new XmlDocument();
            xml.LoadXml(incomingMessage);
            string messageType = xml.ChildNodes[0].ChildNodes[0].InnerText;
            Debug.Log(messageType);
            switch (messageType)
            {
            case "Warning":
                StatusTextChange(xml.ChildNodes[0].ChildNodes[1].InnerText);
                break;

            case "ServerList":

                //THIS CONTAINS ALL THE REGISTERED LOBBY/SPIN UP SERVERS --- FOR TESTING WE WILL JUST CONNECT TO THE FIRST ONE
                XmlNodeList nodes = xml.ChildNodes[0].ChildNodes[1].ChildNodes;
                for (int i = 0; i < nodes.Count; i++)
                {
                    string IP   = nodes[i].ChildNodes[0].InnerText;
                    int    port = Convert.ToInt32(nodes[i].ChildNodes[1].InnerText);

                    //let's connect to the first one here...
                    _spinUpClient.OnConnectionChanged    += _spinUpClient_OnConnectionChanged;;
                    _spinUpClient.OnIncomingDataReceived += _spinUpClient_OnIncomingDataReceived;;
                    _spinUpClient.Connect(IP, port);
                    break;
                }
                break;
            }
        }
    }