public void nextTrick() { if (currentTrick != null) //only the first trick should move past this { pastTricks.Add(currentTrick); foreach (Player p in seats) { p.updatedCardCount(currentTrick); } } currentTrick = new Trick(seats, trump); //Leader plays, then rotate around whole table Card played = seats[leader].leadCard(this); currentTrick.leadPlay(played, leader); for (int i = 1; i <= 3; i++) { played = seats[(leader + i) % 4].playCard(this); currentTrick.addPlay(played, ((leader + i) % 4)); } //update next leader as winner of trick int winner = currentTrick.winner(); leader = winner; //Update cumulative trick-winning total if (winner == 0 || winner == 2) { team02Tricks++; } else if (winner == 1 || winner == 3) { team13Tricks++; } else { Console.WriteLine("ERROR: Problem determining trick winner in Hand"); } }