public override sealed void Revoke(Character character) { UnbindCharacter(character); character.GetStat(Stat).RemoveModifier(this); }
protected override void BindCharacter(Character character) { this.boundStat = character.GetStat(this.sourceStat); this.boundStat.PropertyChanged += OnBoundStatPropertyChanged; }
public override sealed void Apply(Character character) { character.GetStat(Stat).AddModifier(this); BindCharacter(character); }