public RaceLineup(IEnumerable<ISnail> snails, IRandom random, int raceLength, IPlayer player, DelegateCreateRace createRace) { this.snails = snails; this.random = random; this.raceLength = raceLength; this.player = player; this.createRace = createRace; finishedSnails = from snail in snails where snail.Position >= this.raceLength select snail; }
public static DelegateCreateRaceLineup DelegateCreateRaceLineup(IRandom random, int raceLength, DelegateCreateRace createRace) { return (snails, player) => { return new RaceLineup(snails, random, raceLength, player, createRace); }; }