/// <summary> 인벤토리 영웅 정렬 함수 </summary> public void SortHeroList(HeroSortingType sortingType = HeroSortingType.Auto, HeroSlotState state = HeroSlotState.Inventory, string _placeId = null) { if (coroutineSort != null) { return; } UIHeroInventory.Instance.currentSortType = sortingType; currentState = state; placeID = UIDeployHeroInfo.Instance.currentPlaceID; coroutineSort = StartCoroutine(SortHeroListA(sortingType, state)); }
IEnumerator SortHeroListA(HeroSortingType sortingType = HeroSortingType.Auto, HeroSlotState state = HeroSlotState.Inventory) { heroSortType = sortingType; switch (heroSortType) { case HeroSortingType.AcquiredTime: UIHeroInventory.heroSlotContainerList.Sort(SortDelegateAcquiredTime); break; case HeroSortingType.AcquiredTimeDesc: UIHeroInventory.heroSlotContainerList.Sort(SortDelegatAcquiredTimeDesc); break; case HeroSortingType.Name: UIHeroInventory.heroSlotContainerList.Sort(SortDelegateName); break; case HeroSortingType.NameDesc: UIHeroInventory.heroSlotContainerList.Sort(SortDelegateNameDesc); break; case HeroSortingType.Grade: UIHeroInventory.heroSlotContainerList.Sort(SortDelegateGrade); break; case HeroSortingType.GradeDesc: UIHeroInventory.heroSlotContainerList.Sort(SortDelegateGradeDesc); break; default: UIHeroInventory.heroSlotContainerList.Sort(SortDelegateAuto); break; } for (int i = 0; i < heroContainerList.Count; i++) { heroContainerList[i].transform.SetSiblingIndex(i); } //오브젝트 정렬 위해 한 프레임 기다려야 함 yield return(null); if (onSort != null) { onSort(); } coroutineSort = null; }
public void SlotDataInit(string _id, HeroSlotState _state) { id = _id; state = _state; //heroData.onChangedValue += OnChangedHeroParam; InitUI(); if (newChecker != null) { newChecker.SetActive(!heroData.isChecked); } }
IEnumerator ShowA(InventoryTabType tab, HeroSlotState state) { //인벤토리 열릴시 NewCheck해제 onCheckNewHeroEarned(); SizeControl(); //canvas.enabled = false; canvas.gameObject.SetActive(true); if (state == HeroSlotState.Battle) { objTitle.SetActive(false); //.isOn = true; scrollBattleHero.GetComponent <CanvasRenderer>().SetAlpha(0f); heroTypeButtonPanel.SetActive(false); } else if (state == HeroSlotState.Territory) { objTitle.SetActive(false); //toggleTown.Select(); heroTypeButtonPanel.SetActive(false); objListRoot.GetComponent <RectTransform>().sizeDelta = originalListSize; } else if (state == HeroSlotState.Training) { objTitle.SetActive(false); heroTypeButtonPanel.SetActive(true); } else { objTitle.SetActive(true); heroTypeButtonPanel.SetActive(true); objListRoot.GetComponent <RectTransform>().sizeDelta = originalListSize; } //if(state != HeroSlotState.Internal) // OnValueChangedToggleListType("Battle"); //else // OnValueChangedToggleListType("Town"); for (int i = 0; i < heroSlotContainerList.Count; i++) { heroSlotContainerList[i].state = state; } scrollBattleHero.gameObject.SetActive(tab == InventoryTabType.Battle); scrollTownHero.gameObject.SetActive(tab == InventoryTabType.Territory); if (onOpened != null) { onOpened(); } yield return(null); if (tab == InventoryTabType.Battle) { scrollBattleHero.normalizedPosition = new Vector2(scrollBattleHero.normalizedPosition.x, 1f); } else if (tab == InventoryTabType.Territory) { scrollTownHero.normalizedPosition = new Vector2(scrollTownHero.normalizedPosition.x, 1f); } if (isRegisteredSorting) { sortBehavior.SortHeroList(sortBehavior.heroSortType); isRegisteredSorting = false; } scrollBattleHero.GetComponent <CanvasRenderer>().SetAlpha(1f); scrollTownHero.GetComponent <CanvasRenderer>().SetAlpha(1f); canvas.enabled = true; coroutineShow = null; yield break; }
void Show(InventoryTabType tab = InventoryTabType.Battle, HeroSlotState state = HeroSlotState.Inventory) { currentHeroSlotState = state; sortToggle.isOn = false; SortingTypeButtonPanel.SetActive(sortToggle.isOn); //slotBG.offsetMin = new Vector2(slotBG.offsetMin.x, -0.25f); //slotBG.offsetMax = new Vector2(slotBG.offsetMax.x, 0); if (!sortToggle.gameObject.activeSelf) { sortToggle.gameObject.SetActive(true); } if (coroutineShow != null) { return; } if (state == HeroSlotState.Territory || state == HeroSlotState.Training) { sortBehavior.SortHeroList(HeroSortingType.Auto, state); } else { sortBehavior.SortHeroList(currentSortType, HeroSlotState.Inventory); } if (tab == InventoryTabType.Battle) { toggleTown.isOn = false; toggleBattle.isOn = true;// Select(); heroInventoryScrollViewContent.gameObject.SetActive(true); territoryheroInventoryScrollViewContent.gameObject.SetActive(false); UIHeroSlotContainer[] temp = heroInventoryScrollViewContent.GetComponentsInChildren <UIHeroSlotContainer>(); if (temp.Length > 0) { notHeroText.gameObject.SetActive(false); } else { notHeroText.gameObject.SetActive(true); } } else { toggleTown.isOn = true;//Select(); toggleBattle.isOn = false; heroInventoryScrollViewContent.gameObject.SetActive(false); territoryheroInventoryScrollViewContent.gameObject.SetActive(true); UIHeroSlotContainer[] temp = territoryheroInventoryScrollViewContent.GetComponentsInChildren <UIHeroSlotContainer>(); if (temp.Length > 0) { notHeroText.gameObject.SetActive(false); } else { notHeroText.gameObject.SetActive(true); } } coroutineShow = StartCoroutine(ShowA(tab, state)); }
public void ChangeState(HeroSlotState _state, IHeroSlotClickable _clickBehavior = null) { state = _state; clickBehavior = _clickBehavior; }