void OnEnable()
 {
     characterCreation = GetComponentInParent <CharacterCreation>();
     if (characterCreation)
     {
         CharacterCreation.OnNewPoints += OnNewPointsAvailable;
     }
 }
        public void EmulateSelect(AbilityStat selector)
        {
            if (selector.Index < minIndex)
            {
                return;
            }
            bool shouldBeSelected = selector != null;
            int  culmulativeCost  = 0;

            for (int i = minIndex; i < visibleSelectors; i++)
            {
                if (!selectors[i].allowed)
                {
                    shouldBeSelected = false;
                }

                if (shouldBeSelected && !selectors[i].selected)
                {
                    selectors[i].selected = true;
                    culmulativeCost      += ability[i].cost;
                }
                else if (!shouldBeSelected)
                {
                    if (selectors[i].selected)
                    {
                        culmulativeCost -= ability[i].cost;
                    }
                    selectors[i].selected = false;
                }

                //All coming should be not selected
                if (selector == selectors[i])
                {
                    shouldBeSelected = false;
                }
            }
            if (characterCreation)
            {
                CharacterCreation.NewTransaction(culmulativeCost);
            }
        }
Example #3
0
 public void UpgradeCharacter()
 {
     CharacterCreation.UpgradePlayer();
 }