public void DisConnect() { this._gateSession.DisConnect(); this._serverSession.DisConnect(); this._status = (this._status >= NetManagerStatus.NETMANAGER_STATUS_CONNECTED_GATE) ? NetManagerStatus.NETMANAGER_STATUS_CONNECTED_GATE : NetManagerStatus.NETMANAGER_STATUS_NULL; }
public void Init2() { string setIP; if (!string.IsNullOrEmpty(this.SetIP)) { setIP = this.SetIP; } else { setIP = this._ip; } this._serverSession.Init(setIP, this._port, this.LoginUtil.AccountID, this.LoginUtil.K, this.LoginUtil.AccountTime); this._status = NetManagerStatus.NETMANAGER_STATUS_CONNECTING_SERVER; foreach (PacketProcessInfo info in this._packets) { if (!info.IsProcessed()) { info.Reset(); } } this.ResetNetTime(); }
public void UpdateNetManager() { this.ProcessGateData(); this.ProcessServerData(); if ((this._packets.Count > 0) || (this._gateSession.GateSocket.Packet != null)) { if (this._status == NetManagerStatus.NETMANAGER_STATUS_NULL) { this.Init(this._gateSession.GateSocket.Packet == null); } else if (NetManagerStatus.NETMANAGER_STATUS_CONNECTING_GATE == this._status) { if (!this._gateSession.IsConnecting()) { this.Init(this._gateSession.GateSocket.Packet == null); } } else if (NetManagerStatus.NETMANAGER_STATUS_CONNECTED_GATE == this._status) { if (this._packets.Count > 0) { this.Init2(); } } else if (NetManagerStatus.NETMANAGER_STATUS_CONNECTING_SERVER == this._status) { if (!this._serverSession.IsConnecting()) { this.Init2(); } else if (this._serverSession.IsConnected()) { this._status = NetManagerStatus.NETMANAGER_STATUS_CONNECTED_SERVER; } } else if (NetManagerStatus.NETMANAGER_STATUS_CONNECTED_SERVER == this._status) { if (this._serverSession.IsConnected()) { PacketProcessInfo info = null; if (this._packets.Count > 0) { info = (PacketProcessInfo) this._packets[0]; if (!info.IsSend()) { this._sendTime = DateTime.Now; info.Send(); this._serverSession.ServerSocket.SendPacket(info.Packet); this.ResetNetTime(); } } } else { TimeSpan span = (TimeSpan) (DateTime.Now - this._sendTime); if ((span.TotalMinutes >= 1.0) && (this._packets.Count > 0)) { this._status = NetManagerStatus.NETMANAGER_STATUS_CONNECTED_GATE; } } } } }
public void Init(bool sendLoginInfo = true) { this.DisConnect(); this._gateSession.Init(this.LoginUtil.Account, this.LoginUtil.Password, this.LoginUtil.K, this.LoginUtil.AccountTime, this.SetIP); this._status = NetManagerStatus.NETMANAGER_STATUS_CONNECTING_GATE; if (sendLoginInfo && !this._isInitialisedMyTask) { this.SendGetLoginInfo(true); } this._serverSession.Authed = false; this.ResetNetTime(); }