示例#1
0
        private void ToPlayerAbilitySelectedState(Ability ability)
        {
            State = BattleGameStateType.AbilitySelected;

            SelectedAbility = ability;

            AbilitySelectedName.text = ability.Name.ToUpper();
            AbilitySelectedRoot.gameObject.SetActive(true);

            foreach (var actor in Actors)
            {
                if (SelectedAbility.IsValidTarget(actor))
                {
                    actor.SetValidTargetState(EnemyParty.Contains(actor));
                }
                else if (ability.User == actor)
                {
                    actor.SetSelectedState();
                }
                else
                {
                    actor.SetNormalState();
                }
            }
        }
示例#2
0
 public void OnActorDied(Actor actor)
 {
     if (EnemyParty.Contains(actor))
     {
         GameController.Instance.Scrap += (actor.ScrapReward * (100 + GameController.Instance.GameDifficulty.ScrapModifier) / 100);
     }
     else if (SelectedActor == actor)
     {
         SetSelection(null);
     }
 }
示例#3
0
 public PartyBattleLayout GetPartyBattleLayoutForPartyMember(PartyMember partyMember)
 {
     if (PlayerParty.Contains(partyMember))
     {
         return(PlayerPartyLayout);
     }
     if (EnemyParty.Contains(partyMember))
     {
         return(EnemyPartyLayout);
     }
     return(null);
 }
示例#4
0
 public Party GetPartyForPartyMember(PartyMember partyMember)
 {
     if (PlayerParty.Contains(partyMember))
     {
         return(PlayerParty);
     }
     if (EnemyParty.Contains(partyMember))
     {
         return(EnemyParty);
     }
     return(null);
 }