public void AssignAwardToPlayer(IWrittenByAttribute player, IBattleAttribute battle, IBonusPointsAttribute award) { if (HasBattle(battle)) { IBattleOutcome battleOutcome = GetBattleOutcome(battle); battleOutcome.AddAward(player, award); } else { IBattleOutcome battleOutcome = Factory.Get <IBattleOutcome>(); battleOutcome.Battle = battle; battleOutcome.AddAward(player, award); battles.Add(battleOutcome); } }