1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| public class AbilityContainer { private readonly AbilitySystemComponent _owner; private readonly Dictionary<string, AbilitySpec> _abilities = new Dictionary<string, AbilitySpec>(); public Dictionary<string, AbilitySpec> AbilitySpecs() => _abilities; private readonly List<AbilitySpec> _cachedAbilities = new List<AbilitySpec>();
public AbilityContainer(AbilitySystemComponent owner); public void Tick();
public void GrantAbility(AbstractAbility ability); public void RemoveAbility(AbstractAbility ability);
public bool TryActivateAbility(GameplayTagSet gameplayTagSet, params object[] args); public bool TryActivateAbility(string abilityName, params object[] args); public void EndAbility(string abilityName); public void CancelAbility(string abilityName);
}
|