Пример #1
0
    /// <summary>
    /// 点击事件
    /// </summary>
    /// <param name="eventType"></param>
    /// <param name="data"></param>
    /// <param name="param"></param>
    private void OnReliveGridEventDlg(UIEventType eventType, object data, object param)
    {
        if (eventType == UIEventType.Click)
        {
            UIReliveGrid grid = data as UIReliveGrid;
            if (grid == null)
            {
                return;
            }

            if (grid.m_info.reliveId == 1)
            {
                IMapSystem mapSys = ClientGlobal.Instance().GetMapSystem();
                if (mapSys == null)
                {
                    return;
                }
                uint uCurMapID = mapSys.GetMapID();

                table.MapDataBase mapDB = GameTableManager.Instance.GetTableItem <table.MapDataBase>(uCurMapID);
                if (mapDB == null)
                {
                    return;
                }

                uint rebackMapID = mapDB.rebackMapID;

                if (!KHttpDown.Instance().SceneFileExists(rebackMapID))
                {
                    // 复活点复活
                    DataManager.Manager <UIPanelManager>().ShowPanel(PanelID.DownloadPanel);
                    HideSelf();
                    return;
                }
            }


            GameCmd.stOKReliveUserCmd_C cmd = new GameCmd.stOKReliveUserCmd_C();
            cmd.byType       = grid.m_info.reliveId;
            cmd.dwUserTempID = ClientGlobal.Instance().MainPlayer.GetID();
            cmd.dwNpcID      = 0;
            NetService.Instance.Send(cmd);
        }
    }
Пример #2
0
    /// <summary>
    /// 初始化
    /// </summary>
    void InitUI()
    {
        m_trans_ReliveContent.gameObject.SetActive(true);

        List <ReLiveDataManager.ReLiveData> list = RLManager.ReliveDataList;

        if (list == null)
        {
            Engine.Utility.Log.Error("未收到复活数据!!!");
            return;
        }

        m_grid_Grid.transform.DestroyChildren();

        for (int i = 0; i < list.Count; i++)
        {
            GameObject go = Instantiate(m_btn_UIReliveGrid.gameObject) as GameObject;

            go.transform.parent        = m_grid_Grid.transform;
            go.transform.localScale    = Vector3.one;
            go.transform.localPosition = Vector3.zero;
            go.transform.localRotation = Quaternion.identity;
            go.SetActive(true);

            UIReliveGrid grid = go.GetComponent <UIReliveGrid>();
            if (grid == null)
            {
                grid = go.AddComponent <UIReliveGrid>();
            }
            grid.SetGridData(list[i]);
            grid.RegisterUIEventDelegate(OnReliveGridEventDlg);
        }

        m_sprite_bg.height = 140 + 80 * list.Count;

        m_grid_Grid.Reposition();
    }