Ejemplo n.º 1
0
 private void _onConnectionClosed(Int32 _stream_id, PacketType _packet_type, DisconnectMsg _msg)
 {
     Utility.Log.Warning("与游戏服务器的连接已经断开");
     //TODO 链接断开,自动重连
     Entity.m_connect_in = 10f;
     FiniteStateMachine.ChangeStateTo(NetWorkStateType.Connecting);
 }
Ejemplo n.º 2
0
            //private void _onHeartbeatReceived( Int32 _stream_id, PacketType _packet_type, Msg_gc_Heartbeat _msg )
            //{
            //	Log.Debug( "收到心跳包回应!" );
            //	//// 抛弃
            //	//if( m_heartbeat_value != _msg.Value )
            //	//{
            //	//	Log.Debug( "抛弃心跳包回执!" );
            //	//	return;
            //	//}
            //	//m_heartbeat_value = 0;
            //	m_timer_heartbeat_timeout.Stop();

            //	//_startSyncTime();
            //	_onStartHeartbeatTimer( 20000 );
            //}

            private void _onHeartbeatTimeOut(Timer _timer, DateTime _date_time, long _interval)
            {
                Log.Info("心跳包超时! 连接断开");
                // TODO 断开连接或者自动重连
                Entity.Disconnect();
                Entity.m_connect_in = 3f;
                FiniteStateMachine.ChangeStateTo(NetWorkStateType.Connecting);
            }
Ejemplo n.º 3
0
 private void _onLoginFail(String _tip, params System.Object[] _args)
 {
     Log.Info("GameSrv 连接出错 自动重连!:{0}", _tip);
     m_time_out.Stop();
     Entity.m_connect_in = 10f;
     FiniteStateMachine.ChangeStateTo(NetWorkStateType.Connecting);
     //TODO 登录游戏服报错处理
 }
Ejemplo n.º 4
0
            public override void Update(float _dt)
            {
                m_timer -= _dt;
                if (!(m_timer < 0))
                {
                    Int32 tmp = (Int32)m_timer;
                    if (m_last_show != tmp && tmp != 0)
                    {
                        Log.Debug("将在{0}s后开始连接!", tmp);
                    }
                    m_last_show = tmp;
                    return;
                }

                Utility.Log.Info("开始尝试重新连接服务器");
                FiniteStateMachine.ChangeStateTo(NetWorkStateType.ConnectingToGameSrv);
            }
Ejemplo n.º 5
0
 private void _onGameSrvConnected(Int32 _stream_id, PacketType _packet_type, ConnectMsg _msg)
 {
     Log.Info("GameSrv Connected!");
     FiniteStateMachine.ChangeStateTo(NetWorkStateType.Connected);
 }