예제 #1
0
        void Start()
        {
            Grid.Reposition();
            DraggablePanel.ResetPosition();

            SetActive(false);
        }
예제 #2
0
    private void UpdateTaskItemInfos()
    {
        DailyTaskManager.Instance.GetTaskLogList().ApplyAllItem(p =>
        {
            if (!m_taskItemDict.Any(item => item.Key == p.LogUpdate.nTaskID))
            {
                var config = DailyTaskConfig._dataTable.SingleOrDefault(data => data._taskID == p.LogUpdate.nTaskID);
                if (config == null)
                {
                    TraceUtil.Log(SystemModel.Common, TraceLevel.Error, "[this DailyTaskConfig is null]");
                    return;
                }
                GameObject taskItem              = (GameObject)Instantiate(DailyTaskItemPrefab);
                taskItem.transform.parent        = Grid.transform;
                taskItem.transform.localPosition = Vector3.zero;
                taskItem.transform.localScale    = Vector3.one;
                DailyTaskItem itemBehaviour      = taskItem.GetComponent <DailyTaskItem>();
                itemBehaviour.Init(config, p.LogUpdate, p.LogContext);

                m_taskItemDict.Add(p.LogUpdate.nTaskID, itemBehaviour);
            }
            else
            {
                m_taskItemDict[p.LogUpdate.nTaskID].UpdateView(p.LogUpdate, p.LogContext);
            }
        });
        DraggablePanel.ResetPosition();
        Grid.Reposition();
        //更新任务数量
        var completeList = m_taskItemDict.Values.Where(p => p.Status == 2).ToArray();

        Label_Title_TaskNum.text = completeList.Length.ToString() + "/" + m_taskItemDict.Count.ToString();
    }
    void DoRepotionLater()
    {
        if (m_dragPanel != null)
        {
            m_dragPanel.ResetPosition();
//            m_dragPanel.MoveAbsolute(-vOffset);
        }
    }
예제 #4
0
 void ClearVipPrevillegeItems()
 {
     if (m_vipPrevillegeItemList != null)
     {
         foreach (GameObject obj in m_vipPrevillegeItemList)
         {
             DestroyImmediate(obj);
         }
     }
     m_vipPrevillegeItemList.Clear();
     m_vipPrevillegePanel.ResetPosition();
 }
예제 #5
0
        void InitMyItemList(List <ItemFielInfo> itemList)
        {
            MyItemList.Clear();
            Grid.ClearChild();
            m_UIDraggablePanel.ResetPosition();
            int lineNumber = (itemList.Count / 3) + (itemList.Count % 3 > 0?1:0);
            int itemIndex  = 0;

            for (int line = 0; line < lineNumber; line++)
            {
                for (int row = 0; row < 3; row++)
                {
                    if (itemList.Count > itemIndex)
                    {
                        SigleUpgradeItem upgradItem = Grid.InstantiateNGUIObj(SingleUpgradeItemPrefab).GetComponent <SigleUpgradeItem>();
                        upgradItem.transform.localPosition = new Vector3(-110 + 110 * row, 210 - 110 * line, 0);
                        upgradItem.Init(itemList[itemIndex], OnMyItemClick);
                        MyItemList.Add(upgradItem);
                        itemIndex++;
                    }
                }
            }
//			if(itemList.Count>0)
//			{
//				OnMyItemClick(itemList[0]);//默认选中第一个
//			}
        }
예제 #6
0
    public override void OnShow()
    {
        Util.DestroyAllChildrenImmediate(m_gdGrid.gameObject);
        Table.SCENE sceneTable;
        Dictionary <uint, Table.SCENE> .Enumerator e = SceneTableManager.Instance.dic.GetEnumerator();

        bool bEmpty = true;

        while (e.MoveNext())
        {
            sceneTable = e.Current.Value;
            GameObject go  = NGUITools.AddChild(m_gdGrid.gameObject, m_goPrefab);
            GameObject btn = Util.FindGo(go, "Button");
            UILabel    lb  = Util.FindCo <UILabel>(btn, "Label");

            lb.text = sceneTable.name;
            CustomData.Set(btn, sceneTable.id);
            UIEventListener.Get(btn).onClick += OnClickButton;

            bEmpty = false;
        }

        m_gdGrid.Reposition();

        if (!bEmpty)
        {
            m_dpDraggablePanel.ResetPosition();
        }

        //MainUIGuide.Instance.ProcessGuide(this);
    }
예제 #7
0
    void Reposition()
    {
        index = 0;
        int totalCount = (maxPerLine + 2) * rowCount;

        for (int i = 0; i < transform.childCount; i++)
        {
            transform.GetChild(i).gameObject.SetActive(false);
        }

        for (int i = 0; i < totalCount && i < Count; i++)
        {
            Transform child = null;
            if (i < transform.childCount)
            {
                child = transform.GetChild(i);
            }
            else
            {
                child = Instantiate(itemPrefab) as Transform;
            }
            child.gameObject.SetActive(true);
            child.parent = transform;
            Reposition(i, child);
        }

        draggablePanel.ResetPosition();
    }
예제 #8
0
    void OnInitialize()
    {
        UITextList uiTextList = _textListCollider.GetComponent <UITextList>();

        _textLabel.lineWidth = Mathf.FloorToInt(uiTextList.maxWidth);

        string versionNumString = string.Format(Localization.instance.Get("IDS_SETTING_ABOUT"), AppVersion.GetCurrentVersionString());
        string versionAppString = string.Format(Localization.instance.Get("IDS_SETTING_ABOUT2"), AppVersion.GetCurrentBuildString());

        _textLabel.text = versionNumString + "\n" + Localization.instance.Get("IDS_SETTING_CREDITS") + "\n" + versionAppString + "(" + FCDownloadManager.Instance.CurrentAssetBundleTag + ")";

        _textHeight              = _textLabel.relativeSize.y * _textLabel.transform.localScale.y;
        _textListCollider.size   = new Vector3(_textListCollider.size.x, _textHeight, _textListCollider.size.z);
        _textListCollider.center = new Vector3(_textListCollider.center.x, -_textHeight / 2.0f, _textListCollider.center.z);
        _springPanel             = _draggablePanel.gameObject.GetComponent <SpringPanel>();
        _textListPanelTrans      = _draggablePanel.gameObject.transform;

        _boardHeight2D = _draggablePanel.gameObject.GetComponent <UIPanel>().clipRange.w / 2.0f;

        _draggablePanel.ResetPosition();
        _draggablePanel.MoveRelative(new Vector3(0, -_boardHeight2D, 0));
        _isPressing = false;
        _isStarting = true;
        StartCoroutine("WaitAWhile");
    }
예제 #9
0
        void RefreshMsgList()
        {
            foreach (GameObject obj in objList)
            {
                DestroyImmediate(obj);
            }
            objList.Clear();

            foreach (string str in LogMsgList)
            {
                GameObject          msgObj = UI.CreatObjectToNGUI.InstantiateObj(m_SingleMessageItemPrefab, m_gridTransform);
                TreasureTreeMsgItem item   = msgObj.GetComponent <TreasureTreeMsgItem>();
                item.Setup(str);
                objList.Add(msgObj);
            }

            m_msgGrid.Reposition();
            m_msgListPanel.ResetPosition();
        }
예제 #10
0
 public void RepositionListScroll(float scrollValue)
 {
     if (draggablePanelScrollbar != null)
     {
         draggablePanelScrollbar.scrollValue = 0;
     }
     else if (draggablePanel != null)
     {
         draggablePanel.ResetPosition();
     }
 }
예제 #11
0
    /// <summary>
    /// Destroies all the query grid items.
    /// </summary>
    public void DestroyQueryItems()
    {
        m_QueryDraggablePanel.ResetPosition();

        Transform trans = m_MiddleContent.queryItemRoot.transform;

        for (int i = 0; i < trans.childCount;)
        {
            GameObject.Destroy(trans.GetChild(i).gameObject);
            trans.GetChild(i).parent = null;
        }
    }
예제 #12
0
    public void UpdateSrvList()
    {
        lb_SrvName.text = SDNetGlobal.serverName;
        int index = 0;

        for (; index < SDNetGlobal.m_lstSrvInfo.Count; ++index)
        {
            GameObject item  = null;
            Transform  trans = panel_srvList.transform.FindChild("item" + index.ToString());
            if (trans == null)
            {
                item = GameObject.Instantiate(item_template) as GameObject;
            }
            else
            {
                item = trans.gameObject;
            }
            item.transform.parent        = panel_srvList.transform;
            item.name                    = "item" + index.ToString();
            item.transform.localScale    = Vector3.one;
            item.transform.localRotation = Quaternion.identity;
            item.transform.localPosition = new Vector3(xposStart + index % 2 * xSpace, yposStart - index / 2 * ySpace, 0);
            item.SetActive(true);
            UILabel lb_name = item.transform.FindChild("name").GetComponent <UILabel>();
            lb_name.text = SDNetGlobal.m_lstSrvInfo[index].Attribute("ServerName");
            Transform status = item.transform.FindChild("Sprite_status");
            if (status != null)
            {
                UISprite sprite_staus = status.GetComponent <UISprite>();
                string   strStatus    = SDNetGlobal.m_lstSrvInfo[index].Attribute("ServerStatus");
                if (strStatus == "火爆")
                {
                    sprite_staus.spriteName = "r";
                }
                else if (strStatus == "正常")
                {
                    sprite_staus.spriteName = "x";
                }
                else
                {
                    sprite_staus.spriteName = "wh";
                }
            }
        }
        for (; index < panel_srvList.transform.childCount; ++index)
        {
            GameObject child = panel_srvList.transform.FindChild("item" + index.ToString()).gameObject;
            child.SetActive(false);
        }
        UIDraggablePanel panel = panel_srvList.GetComponent <UIDraggablePanel>();

        panel.ResetPosition();
    }
예제 #13
0
        IEnumerator RefershList(List <RankingEquipFightData> Datas)
        {
            draggablePanel.ResetPosition();
            WeaponRankingItemList.ApplyAllItem(p => p.gameObject.SetActive(false));
            if (Datas.Count > 0)
            {
                for (int i = 0; i < Datas.Count; i++)
                {
                    WeaponRankingItemList[i].InitItemData(Datas[i]);
                    WeaponRankingItemList[i].gameObject.SetActive(true);
                }
            }
            yield return(null);

            ItemTable.Reposition();
        }
예제 #14
0
        IEnumerator RefershList(List <RankingYaoNvFightData> YaonvData)
        {
            draggablePanel.ResetPosition();
            SirenRankingItemList.ApplyAllItem(p => p.gameObject.SetActive(false));
            if (YaonvData.Count > 0)
            {
                for (int i = 0; i < YaonvData.Count; i++)
                {
                    SirenRankingItemList[i].InitItemData(YaonvData[i]);
                    SirenRankingItemList[i].gameObject.SetActive(true);
                }
            }
            yield return(null);

            ItemTable.Reposition();
        }
예제 #15
0
    public void ChooseTattoo(TattooData td)
    {
        _selectedTD = td;

        float x = recipeGrid.cellHeight * (td.ord + td.level - 1);

        UIRecipeItem recipeItem = _recipeItemList.Find(delegate(UIRecipeItem rcp) { return(!rcp.IsSummaryLine && rcp.ttData.tattooID == td.tattooID); });

        this.SetFocus(recipeItem);

        //select it!
        UIDraggablePanel panel = recipeGrid.transform.parent.GetComponent <UIDraggablePanel>();

        panel.ResetPosition();

        panel.MoveRelative(x * Vector3.up);
    }
예제 #16
0
        public virtual void ClearAll()
        {
            //Debug.Log("Clear all in GUIEditor " + name);
            ClearItems();
            ClearBrowserObjects();
            ClearDividerObjects();

            UIDraggablePanel draggablePanel = null;

            if (UsesGrid && mGrid.gameObject.HasComponent <UIDraggablePanel>(out draggablePanel))
            {
                if (draggablePanel.verticalScrollBar != null)
                {
                    draggablePanel.verticalScrollBar.scrollValue = 0f;
                }
                draggablePanel.ResetPosition();
            }
        }
예제 #17
0
    IEnumerator RefershList(List <SPVPRankingData> datas)
    {
        PVPRankingItemList.ApplyAllItem(p => p.gameObject.SetActive(false));
        if (datas.Count > 0)
        {
            for (int i = 0; i < datas.Count; i++)
            {
                PVPRankingItemList[i].InitItemData(datas[i]);
                PVPRankingItemList[i].gameObject.SetActive(true);
            }
        }


        yield return(null);

        draggablePanel.ResetPosition();
        ItemTable.Reposition();
    }
예제 #18
0
    void UpdateStep()
    {
        DeleteAllChildren(stepPanel.transform);
        float clipSizeY = stepPanel.clipRange.w;

        float y         = clipSizeY / 2;
        float selectedY = 0f;

        for (int i = 0; i < tutorData.lessons[currentLessonIndex].steps.Count; i++)
        {
            TutorStepData step = tutorData.lessons[currentLessonIndex].steps[i];

            TutorStepItem item = CreateStepItem(stepPanel.transform);

            item.Text   = step.name.ToLocalizationString() + "\n" + step.description.ToLocalizationString();
            item.itemId = i;

            UIButtonMessage btnMsg = item.GetComponent <UIButtonMessage>();
            btnMsg.functionName = "OnStepClicked";
            btnMsg.target       = gameObject;

            y -= item.Size.y / 2;
            item.transform.localPosition = new Vector3(0f, y, 0f);

            if (i == currentStepIndex)
            {
                currentStepLabel.text = "STEP:" + (i + 1) + "/" + tutorData.lessons[currentLessonIndex].steps.Count;
                item.Selected();
                selectedY = y;
            }

            y -= (item.Size.y / 2 + 10);
        }

        UIDraggablePanel dragPanel = stepPanel.GetComponent <UIDraggablePanel>();

        dragPanel.ResetPosition();
        float relativeY = selectedY / (y + clipSizeY / 2 + 10);

        //dragPanel.SetDragAmount(0f, (84 - selectedY - 85) / (84-y-10-170), false);
        dragPanel.SetDragAmount(0f, relativeY, false);
    }
예제 #19
0
    public IEnumerator Init(List <TaskState> taskState)
    {
        if (m_taskListItemBehaviour != null && m_taskListItemBehaviour.Count > 0)
        {
            m_taskListItemBehaviour.Clear();
        }
        Layout.transform.ClearChild();
        yield return(null);

        m_taskListItemBehaviour = new List <TaskListItemBehaviour>();
        for (int i = 0; i < taskState.Count; i++)
        {
            var task              = taskState[i].TaskNewConfigData;
            var taskItem          = NGUITools.AddChild(Layout.gameObject, TaskListItemPrefab);
            var taskItemBehaviour = taskItem.GetComponent <TaskListItemBehaviour>();

            #region `    引导注入代码
            taskItem.RegisterBtnMappingId(taskState[i].dwTaskID, UIType.Task, BtnMapId_Sub.Task_TaskStateItem);
            #endregion

            taskItemBehaviour.Init(taskState[i]);
            m_taskListItemBehaviour.Add(taskItemBehaviour);
            taskItemBehaviour.ItemClickAct = (taskData, itemBehaviour) =>
            {
                SoundManager.Instance.PlaySoundEffect("Sound_Button_Task_Name");
                m_taskListItemBehaviour.ApplyAllItem(P => P.ItemFocusStatus(false));
                itemBehaviour.ItemFocusStatus(true);
                ItemSelectedAct(taskData);
            };
            if (i == 0)  //默认选中第一项
            {
                taskItemBehaviour.ItemSelected();
            }
        }
        yield return(null);

        DraggablePanel.ResetPosition();
        Layout.Reposition();
    }
예제 #20
0
    private void SwitchTab(object obj)
    {
        if (currentTab == (AwardTab)obj)
        {
            return;
        }

        SoundManager.Instance.PlaySoundEffect("Sound_Button_PVG_ListAwardIntroductionChange");
        currentTab = (AwardTab)obj;
        // 更改按钮显示
        DailyAwardTab.spriteSwithList.ApplyAllItem(P => P.ChangeSprite(currentTab == AwardTab.Daily? 2: 1));
        SeasonAwardTab.spriteSwithList.ApplyAllItem(P => P.ChangeSprite(currentTab == AwardTab.Season? 2: 1));
        LevelDescriptionTab.spriteSwithList.ApplyAllItem(P => P.ChangeSprite(currentTab == AwardTab.LevelDescription? 2: 1));

        RightTableHeader.text = (currentTab == AwardTab.LevelDescription)? "晋升条件": "奖励";

        // 列表中item只创建一次
        if (awardSingleItemList != null && awardSingleItemList.Count == 0)
        {
            for (int index = 0, imax = PvpUiPanelManager.Instance.GroupConfigDatabase._dataTable.Length; index < imax; index++)
            {
                GameObject item = NGUITools.AddChild(Grid.gameObject, PVPAwardSingleItemPrefab);
                item.name = PVPAwardSingleItemPrefab.name + index.ToString().PadLeft(2, '0');
                PVPAwardSingleItem itemScript = item.GetComponent <PVPAwardSingleItem>();
                awardSingleItemList.Add(itemScript);
            }

            Grid.sorted = true;
            Grid.Reposition();
        }

        DraggablePanel.DisableSpring();
        DraggablePanel.ResetPosition();

        UpdateSingleItem();
    }
예제 #21
0
파일: ShipPanel.cs 프로젝트: HuvaaKoodia/4X
    public void UpdateHud()
    {
        if (!gameObject.activeSelf)
        {
            return;
        }

        //if (Menu.game_controller.HasSelectedShips())
        //	ship_actions_panel.gameObject.SetActive(false);

        int c = Contents.transform.childCount;

        items.Clear();
        for (int i = 0; i < c; i++)
        {
            Transform t = Contents.transform.GetChild(0);
            DestroyImmediate(t.gameObject);
        }

        int a          = 0;
        int selected_a = 0;

        foreach (var s in _node.Ships)
        {
            if (s.Faction.AI)
            {
                continue;
            }
            var si  = Instantiate(ShipItem_prefab, Vector3.zero, Quaternion.identity) as GameObject;
            var sid = si.GetComponent <ShipItem>();
            sid.ship_panel = this;
            sid.setShip(s);

            si.transform.parent        = Contents.transform;
            si.transform.localPosition = new Vector3(0, 0, -1);
            si.transform.localScale    = Vector3.one;
            a++;

            if (Menu.game_controller.IsSelected(s))
            {
                sid.Selected = true;
                selected_a++;
            }
            items.Add(sid);
        }

        Contents.GetComponent <UIGrid>().Reposition();

        if (a == 0)
        {
            gameObject.SetActive(false);
            return;
        }

        if (selected_a != selected_amount)
        {
            UpdateShipActions();
            selected_amount = selected_a;
        }

        if (_node.Ships.Count == 0)
        {
            drag_panel.ResetPosition();
        }
    }
예제 #22
0
    IEnumerator CreatListItem()
    {
        // grid.transform.ClearChild();
        //  ContainerList.Clear();
        Init();
        ContainerList.ApplyAllItem(c => c.gameObject.SetActive(false));

        for (int i = 0; i < ItemDatas.Count; i++)
        {
            if (ItemDatas[i].LocalItemData._GoodsSubClass == 2)
            {
                continue;
            }
            if (ItemPrefab == null)
            {
                Debug.LogError("ItemPrefab=null");
                // return ;
            }
            GameObject go;
            if (ContainerList.Count > i)
            {
                go = ContainerList[i].gameObject;
                go.SetActive(true);
                ContainerList[i].Init(ItemDatas[i]);
            }
            else
            {
                go      = UI.CreatObjectToNGUI.InstantiateObj(ItemPrefab, grid.transform) as GameObject;
                go.name = ItemPrefab.name + i;
                ContainerItem scContainerItem = go.GetComponent <ContainerItem>();
                scContainerItem.SetSelcetCallBack(OnSelect);
                ContainerList.Add(scContainerItem);
                scContainerItem.Init(ItemDatas[i]);
            }
            bool isBtnMapMark = true;

            if (isBtnMapMark)
            {
                int index = i;
                if (i == 0)
                {
                    index = -1;
                }
                float        dragAmount = (index + 1) / (float)ItemDatas.Count;
                BtnMapId_Sub subType    = BtnMapId_Sub.EquipmentUpgrade_Stren_Weapon;
                bool         isSpecial  = false;
                switch (EquipmentUpgradeDataManger.Instance.CurrentType)
                {
                case UpgradeType.Strength:
                    subType = BtnMapId_Sub.EquipmentUpgrade_Stren_Weapon;
                    break;

                case UpgradeType.StarUp:
                    subType = BtnMapId_Sub.EquipmentUpgrade_Star_Weapon;
                    break;

                case UpgradeType.Upgrade:
                {
                    isSpecial = true;
                    subType   = BtnMapId_Sub.EquipmentUpgrade_Upgrade_Item;
                }
                break;
                }
                if (isSpecial)
                {
                    go.RegisterBtnMappingId(ItemDatas[i].LocalItemData._goodID, UIType.EquipmentUpgrade, subType, NoticeToDragSlerp, dragAmount);
                }
                else
                {
                    subType = subType + ItemDatas[i].LocalItemData._GoodsSubClass - 1;
                    go.RegisterBtnMappingId(UIType.EquipmentUpgrade, subType, NoticeToDragSlerp, dragAmount);
                }
            }
        }
        yield return(null);

        grid.sorted = true;
        grid.Reposition();
        Panel.ResetPosition();
        if (m_noticeToDragAmount != 0)
        {
            Panel.transform.localPosition = new Vector3(Panel.transform.localPosition.x, startMarkDragpanelPosY, Panel.transform.localPosition.z);
            StartCoroutine(DragAmountSlerp(m_noticeToDragAmount));
            m_noticeToDragAmount = 0;
        }
    }
    void OnTimerDone()
    {
        //	Debug.Log("ON TIMER!");

        //If this is set to true when timer is done.
        if (gamereviewtrigger)
        {
            //Lets play the game review music here... sure...
            AudioPlayer.GetPlayer().PlayAudioClip(GameReviewMusic);
        }

        if (curState == state.Present && !PPSButton.gameObject.activeSelf)
        {
            PPSButton.gameObject.SetActive(true);
            ScoreButtonIntro.Reset();
            ScoreButtonIntro.Play(true);

            Animal.gameObject.SetActive(true);

            if (IncommingPPS)
            {
                AudioPlayer.GetPlayer().PlaySound(IncommingPPS);
            }

            presented = true;

            //Set the game review and timer
            gamereviewtrigger = true;

            float t = AudioPlayer.GetPlayer().RemainingTime;
            ResetTimer(t);



            //Debug.LogError("Track change timer set :" + t.ToString());
        }

        //Close the curtains here.
        if (curState == state.GameOver)
        {
            curState = state.CloseCurtain;

            //Hide the hud.
            ActivityManager.Instance.ToggleHud(false);

            //Pull curtain
            ActivityManager.Instance.PullCurtain();

            //Pause the game
            ToyBox.GetPandora().TimePaused = true;

            ResetTimer(localDuration * 2.0f);
        }

        //This is when we finish displaying the game over sign.
        if (curState == state.CloseCurtain)
        {
            GameOverWindow.SetWindowAlpha(0.0f);
            GameOverWindow.ToggleWindowOff();

            PhasesCountWindow.ToggleWindowOn();
            //BG.ToggleWindowOn();

            curState = state.Count;
            //Set the tween animation for badges.
            BadgesGridTween.Reset();

            ResetTimer(localDuration);
        }


        if (curState == state.Scores)
        {
            switch (ScoresState)
            {
            //Present coins.
            case 0:
            {
                MoneyLabel.alpha = 1.0f;
                MoneyTween.Reset();
                MoneyTween.Play(true);

                AudioPlayer.GetPlayer().PlayMenuSFX(AudioPlayer.MenuSFX.CashRegister);
                break;
            }

            //Present score
            case 1:
            {
                ScoreLabel.alpha = 1.0f;
                PointsTween.Reset();
                PointsTween.Play(true);

                AudioPlayer.GetPlayer().PlayMenuSFX(AudioPlayer.MenuSFX.SlotSelect);
                break;
            }

            //Present Bonus
            case 2:
            {
                BonusLabel.alpha = 1.0f;
                BonusTween.Reset();
                BonusTween.Play(true);

                AudioPlayer.GetPlayer().PlayMenuSFX(AudioPlayer.MenuSFX.SlotSelect);
                break;
            }


            default:
            {
                break;
            }
            }


            ScoresState++;
            if (ScoresState > 3)
            {
                curState = state.Present;
                ResetTimer(localDuration);
                return;
            }


            //Resetting the timer after being displayed.
            ResetTimer();
            return;
        }


        if (curState == state.Count)
        {
            int index = 0;
            foreach (FUIPhaseResultObject badge in _resultList)
            {
                //If we hit a badge with null data then we are finished and change state.
                //Testing, should be a test if there is valid phase data.
                if (badge.PhaseData == null)
                {
                    curState = state.Scores;

                    //Play animation and sound effects.
                    BadgesGridTween.Play(true);
                    AudioPlayer.GetPlayer().PlayMenuSFX(AudioPlayer.MenuSFX.SlotPushed);

                    //Turn on windows here.
                    PhasesCountWindow.ToggleWindowOn();
                    BG.ToggleWindowOn();

                    ResetTimer();
                    return;
                }

                if (!badge.gameObject.activeSelf)
                {
                    //Repositioning on the start too aparently...
                    panel.ResetPosition();

                    //Else we will activate the current object, reset the timer, and return from the function.
                    badge.gameObject.SetActive(true);

                    //Repositioning
                    EndGameTable.Reposition();
                    panel.ResetPosition();

                    //Resetting the timer after being displayed.
                    ResetTimer();

                    if (IncommingPhase)
                    {
                        AudioPlayer.GetPlayer().PlaySound(IncommingPhase);
                    }

                    return;
                }

                index++;
            }
        }
    }
예제 #24
0
        private IEnumerator St_InitListItem()
        {
            //  ItemTable.transform.ClearChild();
            ItemList.ApplyAllItem(c => c.gameObject.SetActive(false));
            InitItemFileinfoList();
            if (ForgeRecipeDataList.Count > 0)
            {
//                if(ForgeRecipeDataList.Count>=4)
//                {

                for (int i = 0; i < ForgeRecipeDataList.Count; i++)
                {
                    if (ItemList.Count > i)
                    {
                        ItemList[i].gameObject.SetActive(true);
                        ItemList[i].InitItemData(ForgeRecipeDataList[i]);
                    }
                    else
                    {
                        Item_go      = NGUITools.AddChild(ItemTable.gameObject, FriendListItemPrefab);
                        Item_go.name = FriendListItemPrefab.name + i;
                        Item_go.RegisterBtnMappingId(ForgeRecipeDataList[i].ForgeID, UI.MainUI.UIType.Forging, BtnMapId_Sub.Forging_ForgingItem);
                        Item_go.AddComponent <UIDragPanelContents>();
                        ForgingListItem Sc_item = Item_go.GetComponent <ForgingListItem>();
                        Sc_item.InitItemData(ForgeRecipeDataList[i]);
                        Sc_item.OnClickCallBack = ItemSelectedEventHandle;
                        ItemList.Add(Sc_item);
                    }
                }
                if (ForgingPanelManager.GetInstance().CurrentForingType == CurrentListType)
                {
                    if (SelectedItem != null)
                    {
                        SelectedItem.BeSelected();
                    }
                    else
                    {
                        ItemList[0].BeSelected();
                    }
                }
                else
                {
                    ItemList[0].BeSelected();
                }
                CurrentListType = ForgingPanelManager.GetInstance().CurrentForingType;
                yield return(null);

                ItemTable.Reposition();
                m_dragPanelComp.ResetPosition();
                //  yield return null;
                //如果有引导箭头,不允许拖动
                if (HasGuideArrow)
                {
                    m_dragPanelComp.LockDraggable = true;
                }
                else
                {
                    m_dragPanelComp.LockDraggable = false;
                }
            }
            else
            {
            }
        }
예제 #25
0
    void RefreshItem(SelectType selType, int SortType)
    {
        selectType = selType;
        if (copyItem != null)
        {
            copyItem.SetActive(false);
            UIDraggablePanel panel = copyItem.transform.parent.GetComponent <UIDraggablePanel>();
            if (panel != null)
            {
                panel.ResetPosition();
            }

            if (selType == SelectType.ItemUp)
            {
                itemTable = sdGameItemMgr.Instance.GetEquipItemsInBag(false);
                if (sdGameItemMgr.Instance.upItem != null)
                {
                    itemTable.Remove(sdGameItemMgr.Instance.upItem);
                }
                ShowBtnPanel(true);
            }
            else if (selectType == SelectType.ItemUpChange)
            {
                itemTable = sdGameItemMgr.Instance.GetAllEquipItems();
                if (sdGameItemMgr.Instance.upItem != null)
                {
                    itemTable.Remove(sdGameItemMgr.Instance.upItem);
                }
                ShowBtnPanel(false);
            }
            else if (selectType == SelectType.ItemMake)
            {
                itemTable = sdGameItemMgr.Instance.GetAllFormulaItems();
                if (sdGameItemMgr.Instance.upItem != null)
                {
                    itemTable.Remove(sdGameItemMgr.Instance.upItem);
                }
                ShowBtnPanel(false);
            }
            else if (selectType == SelectType.GemOn)
            {
                itemTable = sdGameItemMgr.Instance.GetGemOnInBag();
                ShowBtnPanel(false);
            }
            else if (selectType == SelectType.ItemSell)
            {
                itemTable = sdGameItemMgr.Instance.GetEquipByQuilityInBag(sellType, false);
                ShowBtnPanel(true);
            }
            else if (selectType == SelectType.EquipSelect)
            {
                itemTable = sdGameItemMgr.Instance.GetBagItemByEquipPos(equipPos, true);
                ShowBtnPanel(false);
            }
            else
            {
                ShowBtnPanel(false);
                if (sdGameItemMgr.Instance.selGemList.Count == 0)
                {
                    itemTable = sdGameItemMgr.Instance.GetGemInBag(0);
                }
                else
                {
                    IEnumerator itr = sdGameItemMgr.Instance.selGemList.GetEnumerator();
                    if (itr.MoveNext())
                    {
                        KeyValuePair <string, int> key = (KeyValuePair <string, int>)itr.Current;
                        sdGameItem gem = sdGameItemMgr.Instance.getItem(ulong.Parse(key.Key));
                        if (gem != null)
                        {
                            itemTable = sdGameItemMgr.Instance.GetGemInBag(gem.level);
                        }
                    }

                    itr.Reset();
                    while (itr.MoveNext())
                    {
                        KeyValuePair <string, int> key = (KeyValuePair <string, int>)itr.Current;
                        int num = key.Value;
                        for (int i = 0; i < num; ++i)
                        {
                            foreach (sdGameItem gem in itemTable)
                            {
                                if (gem.instanceID.ToString() == key.Key)
                                {
                                    if (gem.count > 1)
                                    {
                                        gem.count--;
                                    }
                                    else
                                    {
                                        itemTable.Remove(gem);
                                    }

                                    break;
                                }
                            }
                        }
                    }
                }
            }

            Hashtable list = sdSlotMgr.Instance.GetIconList(PanelType.Panel_ItemSelect);
            if (itemTable.Count > list.Count)
            {
                if (copyItem == null)
                {
                    Debug.LogWarning("NoCopyItem");
                }
                //copyItem.SetActive(true);
                for (int i = list.Count; i < itemTable.Count; ++i)
                {
                    GameObject tempItem = GameObject.Instantiate(copyItem) as GameObject;
                    tempItem.transform.parent = copyItem.transform.parent;
                    Vector3 pos = copyItem.transform.localPosition;
                    if (i % 2 == 1)
                    {
                        pos.x = 260;
                    }
                    pos.y -= (i / 2) * 120;
                    tempItem.transform.localPosition = pos;
                    tempItem.transform.localScale    = copyItem.transform.localScale;
                    sdSlotIcon icon = tempItem.GetComponent <sdSlotIcon>();

                    if (icon != null)
                    {
                        icon.index = i;
                        list.Add(i, icon);
                    }
                    icon.gameObject.SetActive(false);
                }
            }
            else if (itemTable.Count < list.Count)
            {
                foreach (DictionaryEntry item in list)
                {
                    sdSlotIcon icon = item.Value as sdSlotIcon;

                    if (icon != null && icon.index >= itemTable.Count)
                    {
                        if (icon.index == 0)
                        {
                            copyItem.SetActive(false);
                        }
                        else
                        {
                            icon.gameObject.SetActive(false);
                        }
                    }
                }
            }

            if (panel != null)
            {
                panel.ResetPosition();
            }
            IDictionaryEnumerator iter = list.GetEnumerator();

            if (itemTable != null)
            {
                itemTable.Sort();

                if (selectType == SelectType.ItemUpChange)
                {
                    itemTable.Sort(OnSortEquiped);
                }
                else
                {
                    if (SortType == 0)
                    {
                        itemTable.Sort(OnSortQuility);
                    }
                    else if (SortType == 1)
                    {
                        itemTable.Sort(OnSortLevel);
                    }
                    else
                    {
                        itemTable.Sort(OnSortScore);
                    }
                }

                foreach (sdGameItem info in itemTable)
                {
                    if (!iter.MoveNext())
                    {
                        break;
                    }
                    //sdGameItem info = (sdGameItem)item.Value;
                    //if (info.bagIndex != (int)PanelType.Panel_Bag) continue;
                    //if (info.slotIndex != num) continue;
                    Hashtable  table = new Hashtable();
                    sdSlotIcon icon  = (sdSlotIcon)iter.Value;
                    table.Add("uuid", info.instanceID);
                    table.Add("ID", info.templateID);
                    table.Add("count", info.count);
                    bool isSelect = icon.isActiveAndEnabled && icon.isSelected;
                    icon.SetInfo(info.instanceID.ToString(), table);
                    if (selType == SelectType.ItemSell)
                    {
                        if (!icon.gameObject.active)
                        {
                            icon.SetSelect(true);
                        }
                    }
                    icon.gameObject.SetActive(true);
                    if (selType == SelectType.ItemSell)
                    {
                        if (isSelect)
                        {
                            icon.SetSelect(true);
                        }
                    }
                    if (selectType == SelectType.ItemUp)
                    {
                        icon.SetSelect(sdGameItemMgr.Instance.hasSelectItemUp(info.instanceID.ToString()));
                        if (icon.isSelected)
                        {
                            AddSelectItem(info.instanceID.ToString());
                        }
                    }
                }
            }
        }
    }
예제 #26
0
    public void Notify(int panelType)
    {
        if (armorBtn == null)
        {
            armorBtn = GameObject.Find("tab_armor");
        }

        if (weaponBtn == null)
        {
            weaponBtn = GameObject.Find("tab_weapon");
        }

        if (shipinBtn == null)
        {
            shipinBtn = GameObject.Find("tab_shipin");
        }


        if ((panelType & (int)PanelType.Panel_Bag) > 0)
        {
            if (copyItem != null && Instance.m_PanelList.Count != 0 && Instance.m_PanelList.ContainsKey(PanelType.Panel_Bag))
            {
                float bagScrollValue = 0f;

                UIDraggablePanel panel = copyItem.transform.parent.GetComponent <UIDraggablePanel>();
                if (panel != null)
                {
                    if (isFirst)
                    {
                        bagScrollValue = 0;
                        isFirst        = false;
                    }
                    else
                    {
                        bagScrollValue = panel.verticalScrollBar.value;
                    }

                    panel.ResetPosition();
                }

                Hashtable itemTable = sdGameItemMgr.Instance.GetAllItem(1, itemFilter);
                Hashtable list      = Instance.m_PanelList[PanelType.Panel_Bag];
                if (itemTable.Count > list.Count)
                {
                    if (copyItem == null)
                    {
                        Debug.LogWarning("NoCopyItem");
                    }
                    copyItem.SetActive(true);
                    for (int i = list.Count; i < itemTable.Count; ++i)
                    {
                        GameObject tempItem = GameObject.Instantiate(copyItem) as GameObject;
                        tempItem.transform.parent = copyItem.transform.parent;
                        Vector3 pos = copyItem.transform.localPosition;
                        pos.y -= i * 100;
                        tempItem.transform.localPosition = pos;
                        tempItem.transform.localScale    = copyItem.transform.localScale;
                        sdSlotIcon icon = tempItem.GetComponent <sdSlotIcon>();
                        if (icon != null)
                        {
                            icon.index = i;
                            RegisterSlot(icon);
                        }
                    }
                }
                else if (itemTable.Count < list.Count)
                {
                    foreach (DictionaryEntry item in list)
                    {
                        sdSlotIcon icon = item.Value as sdSlotIcon;

                        if (icon != null && icon.index >= itemTable.Count)
                        {
                            if (icon.index == 0)
                            {
                                copyItem.SetActive(false);
                            }
                            else
                            {
                                icon.gameObject.SetActive(false);
                            }
                        }
                    }
                }
                else
                {
                    copyItem.SetActive(true);
                }
                if (panel != null)
                {
                    panel.ResetPosition();
                }
                IDictionaryEnumerator iter = list.GetEnumerator();

                ArrayList itemList = new ArrayList(itemTable.Values);
                if (itemList != null)
                {
                    itemList.Sort();
                    bool needRepos = false;
                    if (itemLocation != HeaderProto.ERoleItemEquipSlot.RoleItemEquipSlot_Equip_Max)
                    {
                        needRepos = true;
                    }

                    foreach (sdGameItem info in itemList)
                    {
                        iter.MoveNext();
                        if (iter == null)
                        {
                            break;
                        }
                        //sdGameItem info = (sdGameItem)item.Value;
                        if (info.bagIndex != (int)PanelType.Panel_Bag)
                        {
                            continue;
                        }
                        //if (info.slotIndex != num) continue;
                        Hashtable  table = new Hashtable();
                        sdSlotIcon icon  = (sdSlotIcon)iter.Value;
                        table.Add("uuid", info.instanceID);
                        table.Add("ID", info.templateID);
                        table.Add("count", info.count);
                        icon.SetInfo(info.instanceID.ToString(), table);
                        icon.gameObject.SetActive(true);
                        if (needRepos && sdConfDataMgr.Instance().IsItemRightType(itemLocation, info.equipPos))
                        {
                            UIDraggablePanel drag = icon.transform.parent.GetComponent <UIDraggablePanel>();
                            if (drag != null)
                            {
                                //drag.disableDragIfFits = false;
                                drag.MoveRelative(-icon.transform.localPosition);
                                drag.UpdateScrollbars(true);
                                bagScrollValue = drag.verticalScrollBar.value;
                                needRepos      = false;
                                itemLocation   = HeaderProto.ERoleItemEquipSlot.RoleItemEquipSlot_Equip_Max;
                                //drag.disableDragIfFits = true;

                                sdRadioButton btn = null;
                                if (itemFilter == (int)ItemFilter.Weapon)
                                {
                                    btn = weaponBtn.GetComponent <sdRadioButton>();
                                }
                                else if (itemFilter == (int)ItemFilter.Armor)
                                {
                                    btn = armorBtn.GetComponent <sdRadioButton>();
                                }
                                else if (itemFilter == (int)ItemFilter.Shipin)
                                {
                                    btn = shipinBtn.GetComponent <sdRadioButton>();
                                }
                                if (btn != null)
                                {
                                    sdUICharacter.Instance.ActiceRadioBtn(btn);
                                    btn.Active(true);
                                }
                            }
                        }
                        else
                        {
                            if (itemFilter == lastFilter)
                            {
                                if (panel != null)
                                {
                                    panel.verticalScrollBar.value = bagScrollValue;
                                }
                            }
                        }
                    }
                }
                lastFilter = itemFilter;
            }
        }

        if ((panelType & (int)PanelType.Panel_Equip) > 0)
        {
            if (Instance.m_PanelList.Count > 0 && Instance.m_PanelList.ContainsKey(PanelType.Panel_Equip))
            {
                Hashtable             list      = Instance.m_PanelList[PanelType.Panel_Equip];
                IDictionaryEnumerator iter      = list.GetEnumerator();
                Hashtable             itemTable = sdGameItemMgr.Instance.GetAllItem(2, -1);
                if (itemTable != null)
                {
                    while (iter.MoveNext())
                    {
                        sdSlotIcon icon = (sdSlotIcon)iter.Value;
                        if (icon == null)
                        {
                            continue;
                        }
                        bool findFlag = false;
                        foreach (DictionaryEntry item in itemTable)
                        {
                            sdGameItem info = (sdGameItem)item.Value;
                            if (info.bagIndex != (int)PanelType.Panel_Equip)
                            {
                                continue;
                            }
                            Hashtable tempItem = sdConfDataMgr.Instance().GetItemById(info.templateID.ToString());
                            if (tempItem != null)
                            {
                                int itemPos = int.Parse(tempItem["Character"].ToString());
                                if (itemPos == icon.index)
                                {
                                    findFlag = true;
                                }
                            }

                            if (findFlag)
                            {
                                Hashtable table = new Hashtable();
                                table.Add("uuid", info.instanceID);
                                table.Add("ID", info.templateID);
                                table.Add("count", info.count);
                                icon.SetInfo(info.instanceID.ToString(), table);
                                break;
                            }
                        }

                        if (!findFlag)
                        {
                            icon.SetInfo("", null);
                        }
                    }
                }
            }
        }
    }
예제 #27
0
 void ResetGrid()
 {
     CreatSkillItemTransForm.ClearChild();
     UIDraggablePanel.ResetPosition();
 }