Ejemplo n.º 1
0
        // ========================== MESSAGE HANDLERS - USER ============================

        // -------------------------------------------------------------------------------
        // OnClientMessageRequestUserLogin
        // @Client -> @Server
        // -------------------------------------------------------------------------------
        void OnClientMessageRequestUserLogin(NetworkConnection conn, ClientMessageRequestUserLogin msg)
        {
            ServerMessageResponseUserLogin message = new ServerMessageResponseUserLogin
            {
                success          = true,
                text             = "",
                causesDisconnect = false
            };

            if (DatabaseManager.singleton.TryUserLogin(msg.username, msg.password))
            {
                LoginUser(conn, msg.username);

                // TODO: Add increased maxPlayers from user data later
                message.maxPlayers = GameRulesTemplate.singleton.maxPlayersPerUser;
                message.LoadPlayerPreviews(DatabaseManager.singleton.GetPlayers(msg.username));
                message.text = systemText.userLoginSuccess;
            }
            else
            {
                message.text    = systemText.userLoginFailure;
                message.success = false;
            }

            conn.Send(message);
        }
        // ========================== MESSAGE HANDLERS - USER ============================

        // -------------------------------------------------------------------------------
        /// <summary>
        /// Event <c>OnServerMessageResponseUserLogin</c>.
        /// Triggered when the client receives a login response from the server.
        /// Checks for the response succes and either shows the player select or auto selects the players.
        /// Occurs on the client.
        /// </summary>
        /// <param name="conn"></param>
        /// <param name="msg"></param>
        void OnServerMessageResponseUserLogin(NetworkConnection conn, ServerMessageResponseUserLogin msg)
        {
            if (msg.success)
            {
                playerPreviews.Clear();
                playerPreviews.AddRange(msg.players);
                maxPlayers = msg.maxPlayers;

                // -- Check Auto select Player
                int playerIndex = playerPreviews.FindIndex(x => x.name == PortalManager.autoSelectPlayer);

                if (playerIndex != -1)
                {
                    // -- Skip Player Select
                    ClientScene.AddPlayer(NetworkClient.connection);
                    PortalManager.autoSelectPlayer = "";
                }
                else
                {
                    // -- Show Player Select
                    UIWindowLoginUser.singleton.Hide();
                    UIWindowPlayerSelect.singleton.Show();
                }
            }

            OnServerMessageResponse(conn, msg);
        }
Ejemplo n.º 3
0
        // ========================== MESSAGE HANDLERS - USER ============================

        // -------------------------------------------------------------------------------
        /// <summary>
        /// Event <c>OnServerMessageResponseUserLogin</c>.
        /// Triggered when the client receives a login response from the server.
        /// Checks for the response succes and either shows the player select or auto selects the players.
        /// Occurs on the client.
        /// </summary>
        /// <param name="conn"></param>
        /// <param name="msg"></param>
        void OnServerMessageResponseUserLogin(NetworkConnection conn, ServerMessageResponseUserLogin msg)
        {
            if (msg.success)
            {
                playerPreviews.Clear();
                playerPreviews.AddRange(msg.players);
                maxPlayers = msg.maxPlayers;

                // -- Show Player Select if there are players
                // -- Show Player Creation if there are no players
                if (msg.players.Length > 0)
                {
                    UIWindowPlayerSelect.singleton.Show();
                }
                else
                {
                    UIWindowPlayerCreate.singleton.Show();
                }

                UIWindowLoginUser.singleton.Hide();

                debug.LogFormat(this.name, nameof(OnServerMessageResponseUserLogin), conn.Id(), msg.players.Length.ToString()); //DEBUG
            }

            OnServerMessageResponse(conn, msg);
        }
Ejemplo n.º 4
0
        // ========================== MESSAGE HANDLERS - USER ============================

        // -------------------------------------------------------------------------------
        void OnServerMessageResponseUserLogin(NetworkConnection conn, ServerMessageResponseUserLogin msg)
        {
            if (msg.success)
            {
                playerPreviews.Clear();
                playerPreviews.AddRange(msg.players);
                maxPlayers = msg.maxPlayers;
                UIWindowLoginUser.singleton.Hide();
                UIWindowPlayerSelect.singleton.Show();
            }

            OnServerMessageResponse(conn, msg);
        }
Ejemplo n.º 5
0
        // ========================== MESSAGE HANDLERS - USER ============================

        // -------------------------------------------------------------------------------
        /// <summary>
        /// Event <c>OnServerMessageResponseUserLogin</c>.
        /// Triggered when the client receives a login response from the server.
        /// Checks for the response succes and either shows the player select or auto selects the players.
        /// Occurs on the client.
        /// </summary>
        /// <param name="conn"></param>
        /// <param name="msg"></param>
        void OnServerMessageResponseUserLogin(NetworkConnection conn, ServerMessageResponseUserLogin msg)
        {
            if (msg.success)
            {
                playerPreviews.Clear();
                playerPreviews.AddRange(msg.players);
                maxPlayers = msg.maxPlayers;

                // -- Show Player Select if there are players
                // -- Show Player Creation if there are no players
                if (msg.players.Length > 0)
                {
                    UIWindowPlayerSelect.singleton.Show();
                }
                else
                {
                    UIWindowPlayerCreate.singleton.Show();
                }

                UIWindowLoginUser.singleton.Hide();
            }

            OnServerMessageResponse(conn, msg);
        }