30 lines
1.1 KiB
C#
30 lines
1.1 KiB
C#
#nullable enable
|
|
|
|
namespace Barotrauma.Abilities
|
|
{
|
|
internal sealed class CharacterAbilityGiveTalentPointsToAllies : CharacterAbility
|
|
{
|
|
private readonly int amount;
|
|
|
|
public CharacterAbilityGiveTalentPointsToAllies(CharacterAbilityGroup characterAbilityGroup, ContentXElement abilityElement) : base(characterAbilityGroup, abilityElement)
|
|
{
|
|
amount = abilityElement.GetAttributeInt("amount", 0);
|
|
if (amount == 0)
|
|
{
|
|
DebugConsole.ThrowError($"Error in talent {CharacterTalent.DebugIdentifier}, amount of talent points to give is 0.",
|
|
contentPackage: abilityElement.ContentPackage);
|
|
}
|
|
}
|
|
|
|
public override void InitializeAbility(bool addingFirstTime)
|
|
{
|
|
if (!addingFirstTime) { return; }
|
|
|
|
foreach (Character character in GameSession.GetSessionCrewCharacters(CharacterType.Both))
|
|
{
|
|
if (character.Info is null) { return; }
|
|
character.Info.AdditionalTalentPoints += amount;
|
|
}
|
|
}
|
|
}
|
|
} |