public void Update() { if (m_Machine != null) { m_Machine.Update(); } // 发送心跳包 if (Game.Instance.Connected)// 连上了服务器才发送心跳包 { float cur_time = Time.time; if (cur_time > m_NextHeartTime) { OnHeartTimeUpdate(); m_NextHeartTime = cur_time + m_HeartInterval; } // 需要给附连接也发送心跳包,以防止被服务器踢下线 if (NetClient.HasCrossClient && (NetClient.GetCrossClient().NetState == NetClient.ENetState.ES_Connected || Game.GetInstance().GetLocalPlayer() != null)) { if (cur_time > m_NextCrossHeartTime) { OnCrossHeartTimeUpdate(); m_NextCrossHeartTime = cur_time + m_HeartInterval; } } } }
public void Update() { if (!mIsInited) { return; } if (Input.GetKeyUp(KeyCode.Escape)) { Debug.Log("KeyCode.Escape pressed"); #if UNITY_IPHONE IBridge bridge = DBOSManager.getDBOSManager().getBridge(); if (bridge != null && bridge.isBridgeEnable()) { // 退出游戏的时候通知sdk SDKControler.getSDKControler().sendRoleInfo2SDK((int)SDKControler.RoleEvent.EXIT_GAME); bridge.checkBackBtnAction(); } #else var exit_game = true; if (xc.Const.Region == RegionType.KOREA) { if (UIManager.Instance.TryCloseAllWindow()) { exit_game = false; } } if (exit_game) { Debug.Log("KeyCode.Escape pressed exit_game = true"); IBridge bridge = DBOSManager.getDBOSManager().getBridge(); if (bridge != null && bridge.isBridgeEnable()) { // 退出游戏的时候通知sdk SDKControler.getSDKControler().sendRoleInfo2SDK((int)SDKControler.RoleEvent.EXIT_GAME); bridge.checkBackBtnAction(); } } #endif } m_GameMachine.Update(); UIManager.Instance.Update(); // 场景加载完成的检查 SceneLoadingUpdate(); TimerManager.GetInstance().Update(); DecimalTimerManager.GetInstance().Update(); EffectManager.GetInstance().Update(); TargetPathManager.Instance.Update(); TaskManager.Instance.Update(); InstanceManager.Instance.Update(); UINotice.Instance.Update(); TeamManager.Instance.Update(); MainmapManager.Instance.Update(); TimelineManager.Instance.Update(); ShadowManager.Instance.Update(); GuideManager.Instance.Update(); #if !UNITY_MOBILE_LOCAL VoiceManager.Instance.Update(); #endif NetReconnect.Instance.Update(); if (ChangeRoleManager.Instance.IsChangeRole) { ChangeRoleManager.Instance.Update(); } #if UNITY_EDITOR TestUnit.Instance.Update(); #endif Uranus.Runtime.UranusManager.Instance.Update(); MarryFireworkManager.Instance.Update(); NetworkManager.Instance.Update(); if (((int)GameMode & (int)EGameMode.GM_Net) == (int)EGameMode.GM_Net) { NetClient.GetBaseClient().Update(); if (NetClient.CrossToggle) { NetClient.GetCrossClient().Update(); } } // 协程更新 // 最好在其他模块都更新好,再更新协程 SafeCoroutine.CoroutineManager.Update(Time.deltaTime); }