public int Attack(AttackBase attack, CharacterBase target, out string message) { int damage = attack.Action(this, target, out message); return(damage); }
abstract public int Action(CharacterBase source, CharacterBase target, out string message); //returns damage/healing done