private void ExecuteAwardSwag() { if (!CanSwag) { MessageBox.Show("All swagged out"); SwagText = "All swagged out"; } else { if (_swagOMeterAwardEngine.CanSwag) { _swagOMeterAwardEngine.AwardSwag(); _awardedSwag = _swagOMeterAwardEngine.AwardedSwag; _winningAttendee = _swagOMeterAwardEngine.WinningAttendee; CanSwag = _swagOMeterAwardEngine.CanSwag; if (!CanSwag) { SwagText = "All Swagged Out!"; } ResetDisplayText(); ChangeResponseButtons(true); } } }
public static IWinner Create(SwagBase swag, AttendeeBase attendee) { var winner = new Winner { AwardedSwag = swag, WinningAttendee = attendee }; return(winner); }
private void ExecuteAttendeeNotPresent() { _swagOMeterAwardEngine.AttendeeNotPresent(); _awardedSwag = null; CheckCanSwag(); ResetDisplayText(); ChangeResponseButtons(false); }
private void ExecuteAttendeeDoesNotWantSwag() { _swagOMeterAwardEngine.AttendeeDoesNotWantSwag(); _winningAttendee = null; _awardedSwag = null; CheckCanSwag(); ResetDisplayText(); ChangeResponseButtons(false); }
public IWinner AwardSwag() { if (CanSwag) { var winner = GetWinner(); AwardedSwag = winner.AwardedSwag; WinningAttendee = winner.WinningAttendee; return(winner); } return(null); }
private bool IsAttendeeAndSwagComboValid(AttendeeBase attendeeToCheck, SwagBase swagToCheck) { var swagCanBeAwarded = !_badSwagCombinations.Any(bs => bs.AwardedSwag.Thing == swagToCheck.Thing && bs.WinningAttendee.Name == attendeeToCheck.Name); if (!swagCanBeAwarded) { _attendees.Add(attendeeToCheck); _swag.Add(swagToCheck); } return(swagCanBeAwarded); }
public void AttendeeDoesNotWantSwag() { var matchedWinner = GetMatchedWinner(); WinningAttendee = null; AwardedSwag = null; CreateBadSwagCombinations(matchedWinner); _swag.Add(matchedWinner.AwardedSwag); _attendees.Add(matchedWinner.WinningAttendee); _winners.Remove(matchedWinner); CheckCanSwag(); }
public void AttendeeNotPresent() { _swag.Add(AwardedSwag); AwardedSwag = null; var matchedWinner = GetMatchedWinner(); WinningAttendee = null; if (matchedWinner != null) { _winners.Remove(matchedWinner); } CheckCanSwag(); }
private SwagBase GetSwag() { var randomNumber = new Random(); SwagBase awardedSwag = null; var swagNotAwarded = true; while (swagNotAwarded) { int index = randomNumber.Next(0, _swag.Count); awardedSwag = _swag[index]; swagNotAwarded = false; } _swag.Remove(awardedSwag); CheckCanSwag(); return(awardedSwag); }
private IWinner GetWinner() { AttendeeBase winningAttendee = null; SwagBase swag = null; var swagAwarded = false; while (!swagAwarded) { winningAttendee = GetAttendee(); swag = GetSwag(); swagAwarded = IsAttendeeAndSwagComboValid(winningAttendee, swag); } var winner = Winner.Create(swag, winningAttendee); _winners.Add(winner); return(winner); }