From 85ab159d53016e5cc3a3c63c3d6ff70a72e9b24b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sas=CC=8Ca=20Kocic=CC=81?= Date: Thu, 18 Jun 2020 13:08:24 +0200 Subject: [PATCH] version 1 --- src/CardGame.java | 7 ++++++- src/Pile.java | 6 +++--- src/Player.java | 18 +++++++++++++----- 3 files changed, 22 insertions(+), 9 deletions(-) diff --git a/src/CardGame.java b/src/CardGame.java index e5ae5f4..e5f9001 100644 --- a/src/CardGame.java +++ b/src/CardGame.java @@ -1,4 +1,8 @@ import java.util.ArrayList; +import java.util.Random; + +import static java.util.Collections.shuffle; +//import org-apache-commons-lang3.ArrayUtils; public class CardGame { public Player[] players; @@ -11,7 +15,7 @@ public class CardGame { */ public CardGame(int numberOfCards, int numberOfPlayers) { Pile deck = createDeck(numberOfCards); - deck.shuffle(); + shuffle(deck, new Random()); this.players = new Player[numberOfPlayers]; draws = new Card[numberOfPlayers]; int deckCount = deck.count(); @@ -65,6 +69,7 @@ public class CardGame { } System.out.printf("Player %d wins this round\n\n", maxIndex); players[maxIndex].discardPile.addAll(pot); + pot.clear(); } private boolean noWinner() { diff --git a/src/Pile.java b/src/Pile.java index d99a7cc..e42b692 100644 --- a/src/Pile.java +++ b/src/Pile.java @@ -7,9 +7,9 @@ public class Pile extends ArrayList { // return pile.isEmpty(); // } // - public void shuffle() { - } - +// public void shuffle() { +// } +// public void takeDiscarded() { } diff --git a/src/Player.java b/src/Player.java index 38b15b0..75b9335 100644 --- a/src/Player.java +++ b/src/Player.java @@ -1,3 +1,7 @@ +import java.util.Random; + +import static java.util.Collections.shuffle; + public class Player { String name; Pile drawPile; @@ -30,12 +34,16 @@ public class Player { if (getDiscardPile().isEmpty()) { throw new NoMoreCardsException(); } - discardPile.shuffle(); - drawPile.takeDiscarded(); + shuffle(discardPile, new Random()); + drawPile.addAll(discardPile); + discardPile.clear(); + } + if (drawPile.count() > 0) { + Card draw = drawPile.get(0); + drawPile.remove(0); + return draw; } - Card draw = drawPile.get(0); - drawPile.remove(0); - return draw; + return null; } public boolean broke() {