public void DecayBuffs(BattleCharacter character) { var characterBeforeBuffs = (BattleCharacter)character.Clone(); character.DecayBuffs(); ui.ShowBuffsChanges(characterBeforeBuffs, character); }
public void ApplyBuffTrigger <TriggerType>(BattleCharacter attacker) { foreach (var activeBuff in attacker.ActiveBuffs) { var attackerBeforeTarget = (BattleCharacter)attacker.Clone(); if (activeBuff.Trigger <TriggerType>()) { ui.ShowBuffTrigger(activeBuff.Buff, attackerBeforeTarget, attacker); } } }
public void AttackerPerformAction() { var defenderBeforeSkill = (BattleCharacter)Defender.Clone(); var usedSkill = Attacker.UseSkill(Defender); ui.ShowMessage($"{Attacker.Name} {usedSkill.GetFlavourText()} {Defender.Name}"); ui.ShowBuffsChanges(defenderBeforeSkill, Defender); ui.ShowStatDifferences(defenderBeforeSkill, Defender); }