コード例 #1
0
    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}"));
    }
コード例 #2
0
ファイル: UIReviveList.cs プロジェクト: mengtest/RewriteFrame
 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;
 }