public void OpenUIPanel(UIPanel panelType, bool isMain) { if (isMain && !m_Property.IsMain()) { return; } CfgEternityProxy cfgEternityProxy = GameFacade.Instance.RetrieveProxy(ProxyName.CfgEternityProxy) as CfgEternityProxy; //设置输入模式 InputManager.Instance.SceneInputMap = cfgEternityProxy.IsSpace() ? HotKeyMapID.SHIP : HotKeyMapID.HUMAN; object msg = null; if (panelType == UIPanel.RevivePanel) { if (m_ExDataTable.TryGetValue(ExDataType.DeadUIData, out var obj)) { DieExMessage dieExMessage = (DieExMessage)obj; string killerName = "error_name"; if (dieExMessage.KillerId > 0) { killerName = TableUtil.GetNpcName((uint)dieExMessage.KillerId); } else { killerName = dieExMessage.KillerName; } bool isShowHallRelive = false; foreach (var item in dieExMessage.ReliveTypes) { if (item == (short)PlayerReliveType.relive_hall) { isShowHallRelive = true; break; } } m_ExDataTable.Remove(ExDataType.DeadUIData); msg = new ShowRelviePanelNotify() { IsShowHallRelive = isShowHallRelive, Countdown = dieExMessage.Cd, KillerName = killerName }; } } //Debug.LogError("msg:" + JsonUtility.ToJson(msg)); UIManager.Instance.OpenPanel(panelType, msg); //BehaviorManager.Instance.LogFormat(m_Agent, string.Format($"OpenUIPanel panelType:{panelType}")); }
public override void OnShow(object msg) { base.OnShow(msg); LoadViewPart(ASSET_ADDRESS, OwnerView.ListBox); if (m_TaskTrackingProxy == null) { m_TaskTrackingProxy = GameFacade.Instance.RetrieveProxy(ProxyName.TaskTrackingProxy) as TaskTrackingProxy; } reliveInfo = (ShowRelviePanelNotify)msg; m_CountdownEndTime = reliveInfo.Countdown / 1000.0f + Time.time; m_SelectionSended = false; m_Parent.m_KillerName.text = string.Format(TableUtil.GetLanguageString("revive_text_id_1002"), reliveInfo.KillerName); State.GetAction(UIAction.Common_Select).Callback += OnHotkeyCallback; OwnerView.PageBox.gameObject.SetActive(false); OwnerView.HotkeyBox.gameObject.SetActive(false); OwnerView.ListBox.gameObject.SetActive(false); State.GetAction(UIAction.Common_Select).Enabled = false; UIManager.Instance.OnUpdate += Update; }