Exemplo n.º 1
0
        private int SortBtn(MainTownButtonConfigData x, MainTownButtonConfigData y)
        {
            int XWh = ((int)x.ButtonArea) * 1000 + x.Button_Row * 100 + x.Button_ListSequence;
            int YWh = ((int)y.ButtonArea) * 1000 + y.Button_Row * 100 + y.Button_ListSequence;

            return(XWh - YWh);
        }
Exemplo n.º 2
0
        /// <summary>
        /// 初始化或点击展开
        /// </summary>
        /// <param name="item"></param>
        public void AddSysFuntionButton(MainTownButtonConfigData item)//MainUI.UIType BtnType, MainBtnArea btnPos, int BtnNum)//添加按钮,分别为按钮类型,按钮所在屏幕位置,按钮所在位置的号码
        {
            if (!MyBtnEneble)
            {
                return;
            }
            switch (item.ButtonArea)
            {
            case MainTownButtonArea.LeftUp:
                if (!SysButtonPanel_TopLeft.ContainsButton(item.ButtonFunc))
                {
                    SysButtonPanel_TopLeft.InsertBtn(item);
                    if (m_addSystemFunc != UIType.Empty)
                    {
                        SysButtonPanel_TopLeft.ShowEnableEffect(ButtonEnableEffect, m_addSystemFunc);
                        m_addSystemFunc = UIType.Empty;
                    }
                }
                break;

            case MainTownButtonArea.RightUp:
                if (!SysButtonPanel_TopRight.ContainsButton(item.ButtonFunc))
                {
                    SysButtonPanel_TopRight.InsertBtn(item);
                    if (m_addSystemFunc != UIType.Empty)
                    {
                        SysButtonPanel_TopRight.ShowEnableEffect(ButtonEnableEffect, m_addSystemFunc);
                        m_addSystemFunc = UIType.Empty;
                    }
                }
                break;

            case MainTownButtonArea.RightDown:
                if (!SysButtonPanel_BottomRight.ContainsButton(item.ButtonFunc))
                {
                    SysButtonPanel_BottomRight.InsertBtn(item);
                    if (m_addSystemFunc != UIType.Empty)
                    {
                        SysButtonPanel_BottomRight.ShowEnableEffect(ButtonEnableEffect, m_addSystemFunc);
                        m_addSystemFunc = UIType.Empty;
                    }
                }

                break;

            default:
                break;
            }
        }
Exemplo n.º 3
0
        public void InsertBtn(MainTownButtonConfigData item)//MainUI.UIType sysBtnType, MainBtnArea btnPos, int btnNum)//插入按钮,按钮位置,按钮序号,按钮序号从0开始
        {
            //print("原预添加位置:"+btnNum);
//            if (item._ButtonIndex > btnArray.Count)
//            {
//                item._ButtonIndex = btnArray.Count;
//            }
            //print("实际添加位置:" +btnNum);
            LocalSysButton localBtnController = CreatObjectToNGUI.InstantiateObj(item.ButtonPrefab, transform).GetComponent <LocalSysButton>();

            localBtnController.gameObject.RegisterBtnMappingId(item.ButtonFunc, BtnMapId_Sub.Empty);

            //new
            switch (item.ButtonArea)
            {
            case MainTownButtonArea.LeftUp:
                for (int i = 0; i < 10; i++)
                {
                    if (i == item.Button_Row - 1)
                    {
                        if (m_insertLeftUpIFirst[i])
                        {
                            m_insertLeftUpPos_x[i]  = CommonDefineManager.Instance.CommonDefine.TownstartPoint1.BaseOffset.x;
                            m_insertLeftUpIFirst[i] = false;

                            //m_insertLeftUpPos_y=CommonDefineManager.Instance.CommonDefine.TownstartPoint1.BaseOffset.y;
                        }
                        else
                        {
                            m_insertLeftUpPos_x[i] += (item.ButtonRadius + m_insertLeftUpRadio[i]) * CommonDefineManager.Instance.CommonDefine.TownstartPoint1.Direction.x;
                        }
                        m_insertLeftUpPos_y    = item.Button_RowIndex * CommonDefineManager.Instance.CommonDefine.TownstartPoint1.Direction.y;
                        m_insertLeftUpRadio[i] = item.ButtonRadius;
                        localBtnController.SetBtnAtrribute(item.ButtonFunc, new Vector3(m_insertLeftUpPos_x[i], m_insertLeftUpPos_y, 0), this.Showing, item.DefaultEnable == 1, item.ButtonSound);
                    }
                }

                break;

            case MainTownButtonArea.RightUp:
                for (int i = 0; i < 10; i++)
                {
                    if (i == item.Button_Row - 1)
                    {
                        if (m_insertRightUpFirst[i])
                        {
                            m_insertRightUpPos_x[i] = CommonDefineManager.Instance.CommonDefine.TownstartPoint2.BaseOffset.x;
                            m_insertRightUpFirst[i] = false;
                            // m_insertRightUpPos_y=CommonDefineManager.Instance.CommonDefine.TownstartPoint2.BaseOffset.y;
                        }
                        else
                        {
                            m_insertRightUpPos_x[i] += (item.ButtonRadius + m_insertRightUpRadio[i]) * CommonDefineManager.Instance.CommonDefine.TownstartPoint2.Direction.x;
                        }
                        m_insertRightUpPos_y    = item.Button_RowIndex * CommonDefineManager.Instance.CommonDefine.TownstartPoint2.Direction.y;
                        m_insertRightUpRadio[i] = item.ButtonRadius;
                        localBtnController.SetBtnAtrribute(item.ButtonFunc, new Vector3(m_insertRightUpPos_x[i], m_insertRightUpPos_y, 0), this.Showing, item.DefaultEnable == 1, item.ButtonSound);
                    }
                }
                break;

            case MainTownButtonArea.RightDown:

                for (int i = 0; i < 10; i++)
                {
                    if (i == item.Button_Row - 1)
                    {
                        if (m_insertRightDownFirst[i])
                        {
                            if (i == 0)
                            {
                                m_insertRightDownPos_x[i] = CommonDefineManager.Instance.CommonDefine.TownstartPoint3.BaseOffset.x;
                            }
                            else
                            {
                                m_insertRightDownPos_x[i] = 0;
                            }
                            m_insertRightDownFirst[i] = false;
                            // m_insertRightDownPos_y=CommonDefineManager.Instance.CommonDefine.TownstartPoint2.BaseOffset.y;
                        }
                        else
                        {
                            m_insertRightDownPos_x[i] += (item.ButtonRadius + m_insertRightDownRadio[i]) * CommonDefineManager.Instance.CommonDefine.TownstartPoint3.Direction.x;
                        }
                        m_insertRightDownPos_y    = item.Button_RowIndex * CommonDefineManager.Instance.CommonDefine.TownstartPoint3.Direction.y;
                        m_insertRightDownRadio[i] = item.ButtonRadius;
                        localBtnController.SetBtnAtrribute(item.ButtonFunc, new Vector3(m_insertRightDownPos_x[i], m_insertRightDownPos_y, 0), this.Showing, item.DefaultEnable == 1, item.ButtonSound);
                    }
                }
                break;

            default:
                break;
            }

            //localBtnController.SetBtnAtrribute(item.ButtonFunc, new Vector3(item.ButtonPositionOffset.x, item.ButtonPositionOffset.y, 0), this.Showing,item.DefaultEnable==1);
            //引导注入

            #region old
//            switch (item._ButtonArea)
//            {
//                case MainBtnArea.TopLeft:
//                   // m_insertBottomPos += -(item._ButtonRadius * 2);
//                    localBtnController.SetBtnAtrribute(item._ButtonFunc, new Vector3(item._ButtonIndex.x, item._ButtonIndex.y, 0), this.Showing);
//                    break;
//                case MainBtnArea.TopRight:
//                    m_insertRightPos += (item._ButtonRadius * 2);
//                    localBtnController.SetBtnAtrribute(item._ButtonFunc, new Vector3(0, m_insertRightPos, 0), this.Showing);
//                    break;
//                default:
//                    break;
//            }
            #endregion
            ///ssss
            btnArray.Add(localBtnController);
            //ResetBtnPosition();

            int guideID = 0;
            //TODO GuideBtnManager.Instance.RegGuideButton(localBtnController.gameObject, item._ButtonFunc, SubType.MainButton, out guideID);
            m_guideBtnID.Add(guideID);
        }
Exemplo n.º 4
0
        /// <summary>
        /// 处理开放主按钮消息,播放开启特效
        /// </summary>
        /// <param name="obj"></param>
        void AddMainButton(object obj)
        {
            m_addSystemFunc = (UIType)obj;
            var buttonList = NewUIDataManager.Instance.TownMainButtonList;
            MainTownButtonConfigData enableItem = null;

            //找到要开放的功能按钮配置信息
            for (int i = 0; i < buttonList.Count; i++)
            {
                if (buttonList[i].ButtonFunc == m_addSystemFunc)
                {
                    enableItem = buttonList[i];
                }
            }

            if (enableItem == null)
            {
                TraceUtil.Log("要开启主按钮,配置表中无对应!");
                return;
            }
            //加入到已开放功能按钮配置信息列表
            if (!m_buttonList.Exists(P => P.ButtonFunc == enableItem.ButtonFunc))
            {
                m_buttonList.Add(enableItem);
            }
            else
            {
                TraceUtil.Log("此功能按钮已经开启!");
            }

            //SysButtonPanel_Bottom.ResetSystemPanel();
            //SysButtonPanel_Right.ResetSystemPanel();
            m_buttonList.Sort(SortBtn);
            switch (enableItem.ButtonArea)
            {
            case MainTownButtonArea.LeftUp:
                SysButtonPanel_TopLeft.RestPanel();
                break;

            case MainTownButtonArea.RightUp:
                SysButtonPanel_TopRight.RestPanel();
                break;

            case MainTownButtonArea.RightDown:
                SysButtonPanel_BottomRight.RestPanel();
                break;
            }


            if (m_buttonEnablePic != null)
            {
                Destroy(m_buttonEnablePic);
            }

            foreach (var item in m_buttonList)
            {
                //AddSysFuntionButton(item);
                if (item.ButtonFunc == m_addSystemFunc)
                {
                    TraceUtil.Log("开启新功能:" + m_addSystemFunc + "  " + Time.realtimeSinceStartup);
                    m_buttonEnablePic = CreatObjectToNGUI.Instantiate(ButtonEnablePic) as GameObject;
                    m_buttonEnablePic.transform.parent     = this.transform.parent;
                    m_buttonEnablePic.transform.localScale = Vector3.one;

                    m_buttonEnablePic.GetComponent <EnableFunctionPanel>().InitPanel(m_addSystemFunc, SysButton.transform, this);
                }
            }

            StartCoroutine(Creat());
        }