Exemplo n.º 1
0
        public bool TryAttachAbility(
            AbilityHolder abilityHolder,
            int abilityIndex)
        {
            if (GetAbilityHolder(abilityIndex) != null)
            {
                return(false);
            }

            abilityHolder.AbilityIndex = abilityIndex;

            AbilityHolders.Add(abilityHolder);

            return(true);
        }
Exemplo n.º 2
0
        public bool TryDeattachAbility(int abilityIndex)
        {
            AbilityHolder abilityHolder = GetAbilityHolder(abilityIndex);

            if (abilityHolder == null)
            {
                return(false);
            }

            AbilityHolders.Remove(abilityHolder);

            UnityEngine.Object.Destroy(abilityHolder);

            return(true);
        }
Exemplo n.º 3
0
 private AbilityHolder GetAbilityHolder(int abilityIndex)
 {
     return(AbilityHolders.FirstOrDefault(val => val.AbilityIndex == abilityIndex));
 }