예제 #1
0
            private DamageAssignmentOrder DefaultScenario()
            {
                var damageAssignmentOrder = new DamageAssignmentOrder();

                var blockers = GetBlockersThatCanBeDealtLeathalDamageProducingTheGreatestScore();

                blockers = IncludeOtherBlockersAfter(blockers);

                for (var i = 0; i < blockers.Count; i++)
                {
                    damageAssignmentOrder.Assign(blockers[i], i);
                }

                return(damageAssignmentOrder);
            }
예제 #2
0
            private DamageAssignmentOrder DeathTouchScenario()
            {
                var damageAssignmentOrder = new DamageAssignmentOrder();

                var orderedByScore = D._attacker.Blockers
                                     .OrderByDescending(blocker => blocker.Score)
                                     .ToList();

                for (var i = 0; i < orderedByScore.Count; i++)
                {
                    damageAssignmentOrder.Assign(orderedByScore[i], i);
                }

                return(damageAssignmentOrder);
            }