/// <summary> /// 指定用户下线操作,并为已绑定的ClientPeer清除登录的用户信息 /// </summary> /// 下线一般是由socket发起的,所以只传ClientPeer即可 public static void Logout(ClientPeer client) { MySqlCommand cmd = connection.CreateCommand(); cmd.CommandText = "update user_info set online=0 where id=@id"; cmd.Parameters.AddWithValue("id", client.userId); cmd.ExecuteNonQuery(); LoginStateManager.Logout(client);//注意logout之后会将userID重置 }
private void CheckVersion() { this.bDoCheck = true; if (GlobalSettings.CheckVersion) { LoginStateManager.LoginLog("检查版本..."); SendMsgManager.SendMsgParam param = new SendMsgManager.SendMsgParam(true, "正在获取版本信息...", false, 15f); bool flag = SendMsgManager.Instance.SendMsg(MobaMasterCode.UpgradeUrl, param, new object[0]); } else { this.OnCheckVersionFinish(); } }
/// <summary> /// 指定用户登录操作,并为ClientPeer写入登录的用户信息 /// </summary> /// <param name="username"></param> /// <param name="client"></param> public static void Login(string username, ClientPeer client) { MySqlCommand cmd = connection.CreateCommand(); cmd.CommandText = "select * from user_info where username=@name"; cmd.Parameters.AddWithValue("name", username); MySqlDataReader reader = cmd.ExecuteReader(); reader.Read(); if (reader.HasRows) { int id = reader.GetInt32("id"); reader.Close();//在进行任何数据库操作前,应关闭reader LoginStateManager.Login(id, username, client); SetOnline(username, true); } else { reader.Close(); } }
public override void OnEnter() { base.OnEnter(); CtrlManager.OpenWindow(WindowID.LoginView_New, null); LoginStateManager.LoginLog("等待登陆状态"); }
private void OnMsg_Connected_master(MobaMessage msg) { LoginStateManager.LoginLog("连接到服务器了"); base.DoAction(ELoginAction.eConnectMaster); base.Valid = false; }
private void ConnectMaster() { LoginStateManager.LoginLog("尝试连接服务器"); NetWorkHelper.Instance.ConnectToMasterServer(); }
public void OnDestroy() { LoginStateManager.m_instance = null; }
public void OnAwake() { LoginStateManager.m_instance = this; this._curState = null; this._nextState = null; }
private void OnCheckVersionFinish() { LoginStateManager.LoginLog("检查版本完成"); base.DoAction(ELoginAction.eCheckVersion); }