7 private readonly Identifier statIdentifier;
9 private readonly
float min;
15 if (statIdentifier.IsEmpty)
17 DebugConsole.ThrowError($
"No stat identifier defined for {this} in talent {characterTalent.DebugIdentifier}!",
30 DebugConsole.AddWarning($
"Error in {nameof(AbilityConditionHasPermanentStat.MatchesCharacter)}: character {character} has no CharacterInfo. Are you trying to use the condition on a non-player character?\n{Environment.StackTrace.CleanupStackTrace()}");
override bool MatchesCharacter(Character character)
AbilityConditionHasPermanentStat(CharacterTalent characterTalent, ContentXElement conditionElement)
CharacterTalent characterTalent
static Identifier HandlePlaceholders(PermanentStatPlaceholder placeholder, Identifier original)
static StatTypes ParseStatType(string statTypeString, string debugIdentifier)
float GetSavedStatValue(StatTypes statType)
string? GetAttributeString(string key, string? def)
float GetAttributeFloat(string key, float def)
ContentPackage? ContentPackage
Identifier GetAttributeIdentifier(string key, string def)
StatTypes
StatTypes are used to alter several traits of a character. They are mostly used by talents.