Exemple #1
0
        private void btnLogin_Click(object sender, EventArgs e)
        {
            if (WebSocketManager.IsConnected() == false)
            {
                WebSocketManager.InitWebSocket();
                if (WebSocketManager.IsConnected() == false)
                {
                    string tips = string.Format("无法连接GM服务器,请确保服务器地址为{0},且处于开启状态", AppValues.GM_SERVER_URL);
                    MessageBox.Show(this, tips, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
            }

            string inputUsername = txtUsername.Text.Trim();
            string inputPassword = txtPassword.Text.Trim();

            if (string.IsNullOrEmpty(inputUsername))
            {
                MessageBox.Show("用户名不能为空", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (string.IsNullOrEmpty(inputPassword))
            {
                MessageBox.Show("密码不能为空", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            GmLoginRequest.Builder builder = GmLoginRequest.CreateBuilder();
            builder.SetUsername(inputUsername);
            MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
            string passwordMD5           = BitConverter.ToString(md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(inputPassword))).Replace("-", "").ToUpper();

            builder.SetPasswordMD5(passwordMD5);
            WebSocketManager.SendMessage(GmRpcNameEnum.GmRpcLogin, builder.Build().ToByteArray(), OnLoginCallback);
        }
Exemple #2
0
 private void btnRefreshServerState_Click(object sender, EventArgs e)
 {
     dgvLogicServerInfo.Rows.Clear();
     dgvBattleServerInfo.Rows.Clear();
     dgvGatewayInfo.Rows.Clear();
     GmGetAllServerStateRequest.Builder builder = GmGetAllServerStateRequest.CreateBuilder();
     WebSocketManager.SendMessage(GmRpcNameEnum.GmRpcGetAllServerState, builder.Build().ToByteArray(), OnGetAllServerStateCallback);
 }
Exemple #3
0
        private void btnGmServerCloseServer_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show(this, "确定要关闭GM服务器吗?", "警告", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) != DialogResult.OK)
            {
                return;
            }

            GmExecuteCmdRequest.Builder builder = GmExecuteCmdRequest.CreateBuilder();
            builder.SetServerType(RemoteServerTypeEnum.ServerTypeGm);
            builder.SetCmdType(GmCmdTypeEnum.GmCmdCloseServer);
            WebSocketManager.SendMessage(GmRpcNameEnum.GmRpcExecuteCmd, builder.Build().ToByteArray(), OnExecuteCmdCallback);
        }
Exemple #4
0
        private void btnBattleServerReloadTableConfig_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show(this, "确定要重载所有Battle服务器的表格吗?", "警告", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) != DialogResult.OK)
            {
                return;
            }

            GmExecuteCmdRequest.Builder builder = GmExecuteCmdRequest.CreateBuilder();
            builder.SetServerType(RemoteServerTypeEnum.ServerTypeBattle);
            builder.SetCmdType(GmCmdTypeEnum.GmCmdReloadTableConfig);
            WebSocketManager.SendMessage(GmRpcNameEnum.GmRpcExecuteCmd, builder.Build().ToByteArray(), OnExecuteCmdCallback);
        }
Exemple #5
0
        private void dgvLogicServerInfo_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex >= 0)
            {
                if (dgvLogicServerInfo.Columns[e.ColumnIndex].Name == "dgvcLogicServerReloadTableConfig" || dgvLogicServerInfo.Columns[e.ColumnIndex].Name == "dgvcLogicServerCloseServer")
                {
                    string idStr            = dgvLogicServerInfo.Rows[e.RowIndex].Cells[0].Value.ToString();
                    int    leftBracketIndex = idStr.IndexOf('(');
                    if (leftBracketIndex != -1)
                    {
                        idStr = idStr.Substring(0, leftBracketIndex);
                    }

                    int serverId = int.Parse(idStr);

                    GmExecuteCmdRequest.Builder builder = GmExecuteCmdRequest.CreateBuilder();
                    builder.SetServerType(RemoteServerTypeEnum.ServerTypeLogic);
                    builder.AddServerIds(serverId);

                    if (dgvLogicServerInfo.Columns[e.ColumnIndex].Name == "dgvcLogicServerReloadTableConfig")
                    {
                        string tips = string.Format("确定要重载id为{0}的Logic服务器表格吗?", serverId);
                        if (MessageBox.Show(this, tips, "警告", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) != DialogResult.OK)
                        {
                            return;
                        }

                        builder.SetCmdType(GmCmdTypeEnum.GmCmdReloadTableConfig);
                    }
                    else if (dgvLogicServerInfo.Columns[e.ColumnIndex].Name == "dgvcLogicServerCloseServer")
                    {
                        string tips = string.Format("确定要关闭id为{0}的Logic服务器吗?", serverId);
                        if (MessageBox.Show(this, tips, "警告", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) != DialogResult.OK)
                        {
                            return;
                        }

                        builder.SetCmdType(GmCmdTypeEnum.GmCmdCloseServer);
                    }

                    WebSocketManager.SendMessage(GmRpcNameEnum.GmRpcExecuteCmd, builder.Build().ToByteArray(), OnExecuteCmdCallback);
                }
            }
        }
Exemple #6
0
        private void dgvGatewayInfo_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex >= 0)
            {
                if (dgvGatewayInfo.Columns[e.ColumnIndex].Name == "dgvcGatewayCloseServer")
                {
                    string idStr    = dgvGatewayInfo.Rows[e.RowIndex].Cells[0].Value.ToString();
                    int    serverId = int.Parse(idStr);

                    string tips = string.Format("确定要关闭id为{0}的Gateway服务器吗?", serverId);
                    if (MessageBox.Show(this, tips, "警告", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) != DialogResult.OK)
                    {
                        return;
                    }

                    GmExecuteCmdRequest.Builder builder = GmExecuteCmdRequest.CreateBuilder();
                    builder.SetServerType(RemoteServerTypeEnum.ServerTypeGateway);
                    builder.AddServerIds(serverId);
                    builder.SetCmdType(GmCmdTypeEnum.GmCmdCloseServer);

                    WebSocketManager.SendMessage(GmRpcNameEnum.GmRpcExecuteCmd, builder.Build().ToByteArray(), OnExecuteCmdCallback);
                }
            }
        }
Exemple #7
0
 private void btnGetOnlineUserInfo_Click(object sender, EventArgs e)
 {
     GmGetOnlineUserInfoRequest.Builder builder = GmGetOnlineUserInfoRequest.CreateBuilder();
     WebSocketManager.SendMessage(GmRpcNameEnum.GmRpcGetOnlineUserInfo, builder.Build().ToByteArray(), OnGetOnlineUserInfoCallback);
 }