コード例 #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);
        }
コード例 #2
0
        // ======================= PUBLIC METHODS - USER =================================

        // -------------------------------------------------------------------------------
        // RequestUserLogin
        // @Client
        // -------------------------------------------------------------------------------
        protected override bool RequestUserLogin(NetworkConnection conn, string userName, string password)
        {
            if (!base.RequestUserLogin(conn, userName, password))
            {
                return(false);
            }

            ClientMessageRequestUserLogin message = new ClientMessageRequestUserLogin
            {
                username = userName,
                password = Tools.GenerateHash(name, password)
            };

            conn.Send(message);

            return(true);
        }
        // ======================= PUBLIC METHODS - USER =================================

        // -------------------------------------------------------------------------------
        // RequestUserLogin
        // @Client
        // -------------------------------------------------------------------------------
        /// <summary>
        /// Protected override <c>RequestUserLogin</c> function that returns a boolean.
        /// Sends a user login request to the server.
        /// Checks whether the user login request is valid and can be sent to the server.
        /// Returns a boolean detailing whether the request was sent or not.
        /// </summary>
        /// <param name="conn"></param>
        /// <param name="userName"></param>
        /// <param name="password"></param>
        /// <returns> Returns a boolean detailing whether the request was sent to the server. </returns>
        protected override bool RequestUserLogin(NetworkConnection conn, string userName, string password)
        {
            if (!base.RequestUserLogin(conn, userName, password))
            {
                return(false);
            }

            ClientMessageRequestUserLogin message = new ClientMessageRequestUserLogin
            {
                username = userName,
                password = Tools.GenerateHash(name, password)
            };

            conn.Send(message);

            debug.LogFormat(this.name, nameof(RequestUserLogin), conn.Id(), userName);             //DEBUG

            return(true);
        }