public void OnEntry()
    {
        if (MatchServerIP == "")
        {
            // Aucune IP n'a été transmise. On le signal sur la console puis on revient au menu principal.

            BloodAndBileEngine.Debugger.Log("IP du MatchServer invalide... retour au menu principal.", UnityEngine.Color.red);
            Client.ChangeState(new MainMenuState());
            return;
        }
        else
        {
            ClientConnectionsManager.AddConnection("MatchServer", MatchServerConnectionID);

            NetworkHandlers = new BloodAndBileEngine.Networking.HandlersManager();
            InputHandlers   = new BloodAndBileEngine.InputHandlersManager();

            // Handlers

            BloodAndBileEngine.Networking.NetworkSocket.RegisterOnDisconnectionCallback(OnConnectionLost);
            BloodAndBileEngine.Networking.NetworkSocket.RegisterOnConnectionEstablishedCallback(OnConnectionEstablished);
            NetworkHandlers.Add <BloodAndBileEngine.Networking.NetworkMessage>(20001, OnMatchStarted);
            NetworkHandlers.Add <BloodAndBileEngine.Networking.NetworkMessages.ConditionCheckResponseMessage>(60001, OnAuthentificationResponseReceived);

            ConnectToMatchServer(); // Lancement de la connexion au Match Server.
        }
    }
    public override void OnEntry()
    {
        base.OnEntry();
        NetworkHandlers = new BloodAndBileEngine.Networking.HandlersManager();
        NetworkHandlers.Add <StateUpdateMessage>(20000, OnStateUpdate);
        NetworkHandlers.Add <StateConstructionMessage>(20002, OnStateConstruction);

        BloodAndBileEngine.Networking.NetworkSocket.RegisterOnDisconnectionCallback(OnConnectionLost);
    }
 public void OnEntry()
 {
     NetworkHandlers = new BloodAndBileEngine.Networking.HandlersManager();
     InputHandlers   = new InputHandlersManager();
     BloodAndBileEngine.Networking.NetworkSocket.RegisterOnDisconnectionCallback(OnDisconnected);
     InputHandlers.Add("StartMatchmaking", StartMatchmaking);
     if (ClientConnectionsManager.GetConnectionIDFromName("MasterServer") == -1)
     {
         BloodAndBileEngine.Debugger.Log("Pas de connexion à un Master Server ! Retour au LoginState...", UnityEngine.Color.red);
         Client.ChangeState(new LoginState());
     }
 }
Exemple #4
0
    public void Activate()
    {
        if (Activated)
        {
            BloodAndBileEngine.Debugger.Log("Le module MasterServerConnectionModule est déjà activé !", UnityEngine.Color.red); return;
        }

        Activated = true;
        InputHandlers.Add("SetMasterServerInfos", SetMasterServerInfos);
        InputHandlers.Add("LoginToMasterServer", ConnectToMasterServer);

        NetworkHandlers = new BloodAndBileEngine.Networking.HandlersManager();
        NetworkHandlers.Add <BloodAndBileEngine.Networking.NetworkMessages.ConditionCheckResponseMessage>(60001, OnAuthentificationResponseReceived);

        BloodAndBileEngine.Networking.NetworkSocket.RegisterOnConnectionEstablishedCallback(OnConnectionEstablished);
        BloodAndBileEngine.Networking.NetworkSocket.RegisterOnDisconnectionCallback(OnConnectionLost);
    }
    public void OnEntry()
    {
        NetworkHandlers = new BloodAndBileEngine.Networking.HandlersManager();

        NetworkHandlers.Add <BloodAndBileEngine.Networking.NetworkMessages.IPListMessage>(40000, OnMatchServersListReceived);

        BloodAndBileEngine.Networking.NetworkSocket.RegisterOnDisconnectionCallback(OnConnectionLost);

        int masterServerCoID = ClientConnectionsManager.GetConnectionIDFromName("MasterServer");

        if (masterServerCoID > 0)
        {
            BloodAndBileEngine.Debugger.Log("Début de recherche d'un MatchServer...");
            SendMatchServersListRequest(masterServerCoID);
        }
        else
        {
            BloodAndBileEngine.Debugger.Log("Pas de connexion au Master Server... retour à l'écran Login.", UnityEngine.Color.red);
            Client.ChangeState(new LoginState());
        }
    }