Beispiel #1
0
        void Start()
        {
            heroGoldRewardInput.onValueChanged.AddListener((value) => {
                if (string.IsNullOrEmpty(value))
                {
                    value = "0";
                }
                int goldValue = int.Parse(value);
                QuestDetailsWindow.Instance.SelectedGoldRewards[m_HeroNumber] = goldValue;

                CheckPostButtonStatus();
            });

            heroGoldRewardInput.onDeselect.AddListener((value) => {
                if (string.IsNullOrEmpty(value))
                {
                    heroGoldRewardInput.text = "0";
                }
            });

            heroRewardItemDropdown.onValueChanged.AddListener((value) => {
                m_SelectedItemReward = value;
                GameItem item        = null;

                if (m_SelectedItemReward != 0)
                {
                    item = InventoryManager.OwnedItems[m_SelectedItemReward - 1];
                }

                heroRewardItemDropdown.GetComponent <GameItemPopupCaller>().associatedItem = item;

                QuestDetailsWindow.Instance.SelectedItemRewards[m_HeroNumber] = item;

                CheckPostButtonStatus();
            });

            heroSelectButton.onClick.AddListener(() => {
                AvailableHeroes.Clear();
                foreach (HeroInstance hero in HeroManager.GetAvailableHeroes())
                {
                    if (CurrentQuest.WouldHeroAccept(hero, m_HeroNumber) &&
                        !QuestDetailsWindow.Instance.HasHeroSelected(hero))
                    {
                        AvailableHeroes.Add(hero);
                    }
                }

                RightSideSwitch.Instance.ActivateObject(ReputationUI.Instance.gameObject, false);
                ReputationUI.Instance.SetAvailableHeroes(AvailableHeroes, SetSelectedHero);
            });
        }