Пример #1
0
        private void ActivateTab(UpgradeTabName tabName)
        {
            useCashToggle.onValueChanged.RemoveAllListeners();
            useSecuritiesToggle.onValueChanged.RemoveAllListeners();
            useCoinsToggle.onValueChanged.RemoveAllListeners();
            shopToggle.onValueChanged.RemoveAllListeners();

            var tabLists = GetListObjects();

            foreach (var kvp in tabLists)
            {
                if (kvp.Key == tabName)
                {
                    kvp.Value.Activate();
                    if (tabName == UpgradeTabName.CoinsUpgrades)
                    {
                        coinList.Setup(new CoinListData(GetUpgradeViewData()?.CoinUpgradeId ?? 0, Services.StoreService.GetNotPurchasedCoinUpgradeDataList()));
                    }
                    if (tabName == UpgradeTabName.Shop)
                    {
                        shopObjects.GetComponent <StoreItemsList>()?.Setup(GetUpgradeViewData()?.StoreSection ?? StoreItemSection.CompanyCash);
                    }
                }
                else
                {
                    kvp.Value.Deactivate();
                }
            }

            var toggles = GetToggles();

            toggles[tabName].isOn = true;
            toggles[tabName].OnPointerClick(new PointerEventData(EventSystem.current));

            if (tabName == UpgradeTabName.CashUpgrades)
            {
                GameEvents.OnTutorialEvent(new TutorialEventData(TutorialEventName.CashUpgradesOpened));
            }
        }
Пример #2
0
        public override void Setup(ViewData data)
        {
            base.Setup(data);
            closeButton.SetListener(() => {
                Services.ViewService.Remove(ViewType.UpgradesView);
                Services.SoundService.PlayOneShot(SoundName.click);
            });

            UpgradeTabName tabName = UpgradeTabName.CashUpgrades;

            if (ViewData != null && ViewData.UserData != null)
            {
                try {
                    tabName = GetUpgradeViewData().TabName;
                }
                catch (System.Exception exception) {
                    Debug.LogException(exception);
                    tabName = UpgradeTabName.CashUpgrades;
                }
            }
            ActivateTab(tabName);
            SetToggleListeners();
        }