public void AddPlayer(Card card, Player player, TeeType teeType, int?roundHandicap) { if (!card.CardPlayers.Any(x => x.Player.Id.Equals(player.Id))) { AddPlayer(card, new CardPlayer(card, player, teeType) { RoundHandicap = roundHandicap }); } }
private int?GetRoundHandicap(Player player, TeeType teeType) { int?roundHandicap = null; // find slope handicap for player if (Card != null) { var slopeTee = Card.CourseData.Slopes.SingleOrDefault(x => x.Tee.Equals(teeType)); if (slopeTee != null) { var slope = slopeTee.Handicaps.SingleOrDefault(x => x.Low <= player.Handicap && x.High >= player.Handicap); if (slope != null) { roundHandicap = slope.Hcp; } } } return(roundHandicap); }
public void AddPlayer(Card card, Player player, TeeType teeType) { int?roundHandicap = GetRoundHandicap(player, teeType); AddPlayer(card, player, teeType, roundHandicap); }