/// <summary> /// 发送 /// </summary> private void SendTrapMsg() { if (m_need_send && m_session_conn_idx > 0) { //加入队列 CheckItem item = new CheckItem(); item.check_delay_time = MathUtils.RandRange(SHC_MIN_TIME, SHC_MAX_TIME); item.sh_check_sn = MathUtils.RandRange(0, int.MaxValue); item.check_send_time = Time.time; m_send_checks.Add(item); //发给客户端 gs2c.SpeedCheck msg = PacketPools.Get(gs2c.msg.SPEED_CHECK) as gs2c.SpeedCheck; msg.delay_time = item.check_delay_time; msg.check_sn = item.sh_check_sn; ClientSession session = ClientSessionManager.Instance.GetSession(m_session_conn_idx); if (session != null) { session.Send(msg); } m_need_send = false; ++m_total_times; } }
/// <summary> /// 防加速 /// </summary> private void OnSpeedCheck(PacketBase packet) { gs2c.SpeedCheck msg = packet as gs2c.SpeedCheck; SpeedCheckManager.Instance.OnRecvCheckGrap(msg.check_sn, msg.delay_time); }