From ab8ee8fdaed21f27ac69657f2223cbb6a41b26a7 Mon Sep 17 00:00:00 2001 From: Zachary Date: Fri, 17 Nov 2017 15:54:43 -0500 Subject: [PATCH 01/44] console --- pom.xml | 12 +++++ .../io/zipcoder/casino/Console/Console.java | 44 +++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 src/main/java/io/zipcoder/casino/Console/Console.java diff --git a/pom.xml b/pom.xml index c6ec0cc8..6f0824b1 100644 --- a/pom.xml +++ b/pom.xml @@ -7,6 +7,18 @@ io.zipcoder casino 1.0-SNAPSHOT + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.7 + 1.7 + + + + diff --git a/src/main/java/io/zipcoder/casino/Console/Console.java b/src/main/java/io/zipcoder/casino/Console/Console.java new file mode 100644 index 00000000..22904c92 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Console/Console.java @@ -0,0 +1,44 @@ +package io.zipcoder.casino.Console; + + +import java.util.InputMismatchException; +import java.util.Scanner; + +public class Console { + + public static String getString(String prompt) { + Scanner input = new Scanner(System.in); + System.out.println(prompt); + String userinput = input.nextLine(); + return userinput; + } + + public static double getDouble(String prompt) { + + do { + try { + Scanner input = new Scanner(System.in); + System.out.println(prompt); + double userinput = input.nextDouble(); + return userinput; + } catch (IllegalArgumentException | InputMismatchException e) { + System.out.println("INVALID AMOUNT\n"); + continue; + } + } while (true); + } +} +// public static Currency getEnum(String prompt) { +// +// do { +// try { +// String userinput = getString(prompt).toUpperCase(); +// Currency enuminput = Currency.valueOf(userinput); +// return enuminput; +// } catch (IllegalArgumentException e) { +// System.out.println("INVALID CURRENCY\n"); +// continue; +// } +// } while (true); +// } +//} From 6cc68efc48438f7492451377c9e70e26907ee03a Mon Sep 17 00:00:00 2001 From: Zachary Stimmel Date: Fri, 17 Nov 2017 15:58:34 -0500 Subject: [PATCH 02/44] Delete Console.java --- .../io/zipcoder/casino/Console/Console.java | 44 ------------------- 1 file changed, 44 deletions(-) delete mode 100644 src/main/java/io/zipcoder/casino/Console/Console.java diff --git a/src/main/java/io/zipcoder/casino/Console/Console.java b/src/main/java/io/zipcoder/casino/Console/Console.java deleted file mode 100644 index 22904c92..00000000 --- a/src/main/java/io/zipcoder/casino/Console/Console.java +++ /dev/null @@ -1,44 +0,0 @@ -package io.zipcoder.casino.Console; - - -import java.util.InputMismatchException; -import java.util.Scanner; - -public class Console { - - public static String getString(String prompt) { - Scanner input = new Scanner(System.in); - System.out.println(prompt); - String userinput = input.nextLine(); - return userinput; - } - - public static double getDouble(String prompt) { - - do { - try { - Scanner input = new Scanner(System.in); - System.out.println(prompt); - double userinput = input.nextDouble(); - return userinput; - } catch (IllegalArgumentException | InputMismatchException e) { - System.out.println("INVALID AMOUNT\n"); - continue; - } - } while (true); - } -} -// public static Currency getEnum(String prompt) { -// -// do { -// try { -// String userinput = getString(prompt).toUpperCase(); -// Currency enuminput = Currency.valueOf(userinput); -// return enuminput; -// } catch (IllegalArgumentException e) { -// System.out.println("INVALID CURRENCY\n"); -// continue; -// } -// } while (true); -// } -//} From 8679416171fbc9b804cf7d08881c2d29bb5ba7ec Mon Sep 17 00:00:00 2001 From: Zachary Date: Fri, 17 Nov 2017 16:02:39 -0500 Subject: [PATCH 03/44] console --- .../io/zipcoder/casino/Console/Console.java | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/main/java/io/zipcoder/casino/Console/Console.java diff --git a/src/main/java/io/zipcoder/casino/Console/Console.java b/src/main/java/io/zipcoder/casino/Console/Console.java new file mode 100644 index 00000000..3662d2a3 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Console/Console.java @@ -0,0 +1,30 @@ +package io.zipcoder.casino.Console; + +import java.util.InputMismatchException; +import java.util.Scanner; + +public class Console { + + public static String getString(String prompt) { + Scanner input = new Scanner(System.in); + System.out.println(prompt); + String userinput = input.nextLine(); + return userinput; + } + + public static double getDouble(String prompt) { + + do { + try { + Scanner input = new Scanner(System.in); + System.out.println(prompt); + double userinput = input.nextDouble(); + return userinput; + } catch (IllegalArgumentException | InputMismatchException e) { + System.out.println("INVALID AMOUNT\n"); + continue; + } + } while (true); + } + +} From 162f8196527696078ef29cb80d08eb26dab913c5 Mon Sep 17 00:00:00 2001 From: Zachary Date: Fri, 17 Nov 2017 16:22:22 -0500 Subject: [PATCH 04/44] pushing --- src/main/java/io/zipcoder/casino/Casino.java | 5 +++++ src/main/java/io/zipcoder/casino/Craps.java | 4 ++++ src/main/java/io/zipcoder/casino/Interfaces/Gamble.java | 6 ++++++ src/main/java/io/zipcoder/casino/Interfaces/Game.java | 5 +++++ 4 files changed, 20 insertions(+) create mode 100644 src/main/java/io/zipcoder/casino/Craps.java create mode 100644 src/main/java/io/zipcoder/casino/Interfaces/Gamble.java create mode 100644 src/main/java/io/zipcoder/casino/Interfaces/Game.java diff --git a/src/main/java/io/zipcoder/casino/Casino.java b/src/main/java/io/zipcoder/casino/Casino.java index 74dfdd8c..3e322a45 100644 --- a/src/main/java/io/zipcoder/casino/Casino.java +++ b/src/main/java/io/zipcoder/casino/Casino.java @@ -2,4 +2,9 @@ public class Casino { + + public void startCasino(){ + + } + } diff --git a/src/main/java/io/zipcoder/casino/Craps.java b/src/main/java/io/zipcoder/casino/Craps.java new file mode 100644 index 00000000..918edc82 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Craps.java @@ -0,0 +1,4 @@ +package io.zipcoder.casino; + +public class Craps { +} diff --git a/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java b/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java new file mode 100644 index 00000000..06fb68a6 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java @@ -0,0 +1,6 @@ +package io.zipcoder.casino.Interfaces; + +public interface Gamble { + public void takeBet(double playerbet); + public void giveWin(); +} diff --git a/src/main/java/io/zipcoder/casino/Interfaces/Game.java b/src/main/java/io/zipcoder/casino/Interfaces/Game.java new file mode 100644 index 00000000..62490323 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Interfaces/Game.java @@ -0,0 +1,5 @@ +package io.zipcoder.casino.Interfaces; + +public interface Game { + public boolean play(); +} From de8f3ab7bdac9b0bf2e9108f8eb5389eea8e9950 Mon Sep 17 00:00:00 2001 From: wesley Date: Sat, 18 Nov 2017 13:34:07 -0500 Subject: [PATCH 05/44] carsds and player --- .../java/io/zipcoder/casino/Deck/Card.java | 49 +++++++++++++++++ .../java/io/zipcoder/casino/Deck/Deck.java | 54 +++++++++++++++++++ .../java/io/zipcoder/casino/Deck/Suit.java | 3 ++ .../io/zipcoder/casino/Player/Dealer.java | 10 ++++ .../io/zipcoder/casino/Player/Person.java | 11 ++++ .../io/zipcoder/casino/Player/Player.java | 40 ++++++++++++++ .../casino/PlayerTest/PlayerTest.java | 21 ++++++++ 7 files changed, 188 insertions(+) create mode 100644 src/main/java/io/zipcoder/casino/Deck/Card.java create mode 100644 src/main/java/io/zipcoder/casino/Deck/Deck.java create mode 100644 src/main/java/io/zipcoder/casino/Deck/Suit.java create mode 100644 src/main/java/io/zipcoder/casino/Player/Dealer.java create mode 100644 src/main/java/io/zipcoder/casino/Player/Person.java create mode 100644 src/main/java/io/zipcoder/casino/Player/Player.java create mode 100644 src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java diff --git a/src/main/java/io/zipcoder/casino/Deck/Card.java b/src/main/java/io/zipcoder/casino/Deck/Card.java new file mode 100644 index 00000000..d4560fe3 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Deck/Card.java @@ -0,0 +1,49 @@ +package io.zipcoder.casino.Deck; + + +public class Card +{ + private Suit suit; + public static String[] suitSymbols = {"♡", "♢", "♧", "♤"}; + public static String[] faceSymbols = {"A", "J", "Q", "K"}; + private Integer value; + private String topCardRepresentation; + private String bottomCardRepresentation; + private static String middleCardRepresentation="| |\n"; + + private Card(){ + } + + @Override + public String toString(){ + return topCardRepresentation+middleCardRepresentation+bottomCardRepresentation; + } + public String getTopCardRepresentation(){ + return topCardRepresentation; + } + + + public Card(Suit passedSuit, Integer passedValue){ + this(passedSuit, passedValue, "X"); + } + public Card(Suit passedSuit, Integer passedValue, String passedSuitRepresentation){ + this(passedSuit, passedValue, passedSuitRepresentation, "Y"); + } + public Card(Suit passedSuit, Integer passedValue, String passedSuitRepresentation, String passedFaceRepresentation){ + suit=passedSuit; + value=passedValue; + topCardRepresentation=" ----- \n"+ + "|"+String.format("%2s%-3s", passedFaceRepresentation, passedSuitRepresentation)+"|\n"; + bottomCardRepresentation="|"+String.format("%4s%s", passedFaceRepresentation, passedSuitRepresentation)+"|\n"+ + " ----- \n"; + } + + public Integer getValue(){ + return value; + } + + public Suit getSuit(){ + return suit; + } + +} diff --git a/src/main/java/io/zipcoder/casino/Deck/Deck.java b/src/main/java/io/zipcoder/casino/Deck/Deck.java new file mode 100644 index 00000000..3017d18d --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Deck/Deck.java @@ -0,0 +1,54 @@ +package io.zipcoder.casino.Deck; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; +import java.util.EnumSet; + +public class Deck { + + private ArrayList cards; + + public Deck(){ + populate(); + } + + public Card getCard(){ + if(cards.size() == 0) { + populate(); + shuffle(); + } + Card card = cards.get(0); + cards.remove(0); + return card; + } + + public ArrayList getAllCards(){ + return cards; + } + + + private void populate() { + cards = new ArrayList(); + for (Suit suit: Suit.values()) { + for (int value = 1; value <= 13; value++) + { + if (value < 11) + { + if (value==1) + cards.add(new Card(suit, value, Card.suitSymbols[suit.ordinal()], Card.faceSymbols[0])); + else + cards.add(new Card(suit, value, Card.suitSymbols[suit.ordinal()], ""+value)); + } + else + cards.add(new Card(suit, 10, Card.suitSymbols[suit.ordinal()], Card.faceSymbols[value - 10])); + + } + } + } + + public void shuffle(){ + Collections.shuffle(cards); + } + +} diff --git a/src/main/java/io/zipcoder/casino/Deck/Suit.java b/src/main/java/io/zipcoder/casino/Deck/Suit.java new file mode 100644 index 00000000..05e05a10 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Deck/Suit.java @@ -0,0 +1,3 @@ +package io.zipcoder.casino.Deck; + +public enum Suit {HEARTS, DIAMONDS, CLUBS, SPADES} diff --git a/src/main/java/io/zipcoder/casino/Player/Dealer.java b/src/main/java/io/zipcoder/casino/Player/Dealer.java new file mode 100644 index 00000000..f5fd294c --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Player/Dealer.java @@ -0,0 +1,10 @@ +package io.zipcoder.casino.Player; + +import java.util.ArrayList; + +public class Dealer extends Player { + private ArrayList hand = new ArrayList (); + public Dealer(String name, int age) { + super(name, age); + } +} diff --git a/src/main/java/io/zipcoder/casino/Player/Person.java b/src/main/java/io/zipcoder/casino/Player/Person.java new file mode 100644 index 00000000..b76ff4b2 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Player/Person.java @@ -0,0 +1,11 @@ +package io.zipcoder.casino.Player; + +abstract class Person { + private String name; + private int age; + + public Person(String name,int age){ + this.name = name; + this.age = age; + } +} diff --git a/src/main/java/io/zipcoder/casino/Player/Player.java b/src/main/java/io/zipcoder/casino/Player/Player.java new file mode 100644 index 00000000..c2f645ab --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Player/Player.java @@ -0,0 +1,40 @@ +package io.zipcoder.casino.Player; + +import io.zipcoder.casino.Deck.Card; + +import java.util.ArrayList; + +public class Player extends Person { + private double amount; + private ArrayList hand = new ArrayList(); + + public Player(String name, int age) { + super(name, age); + } + + public double getAmount() { + return amount; + } + + public void setAmount(double amount) { + this.amount = amount; + } + + public ArrayList getHand() { + return hand; + } + + public void addToCard(ArrayList hand) { + this.hand = hand; + } + + public void clearHand(){ + hand.clear(); + } + + public int getRoll(){ + int first = (int)(Math.random()*6+1); + int second = (int)(Math.random()*6+1); + return first+second; + } +} diff --git a/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java new file mode 100644 index 00000000..39280d83 --- /dev/null +++ b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java @@ -0,0 +1,21 @@ +package io.zipcoder.casino.PlayerTest; + +import io.zipcoder.casino.Player.Player; +import org.junit.Assert; +import org.junit.Test; + +public class PlayerTest { + + Player testPlayer = new Player("wes",21); + + @Test + public void getRollTest(){ + int lower = 2; + int upper = 12; + + for(int i= 0;i<1000;i++) { + int actual = testPlayer.getRoll(); + Assert.assertTrue(actual >= lower && actual <= upper); + } + } +} From a7c2887b3a924bd815fd10f377dfa3c1629ec4f6 Mon Sep 17 00:00:00 2001 From: Zachary Date: Mon, 20 Nov 2017 08:36:07 -0500 Subject: [PATCH 06/44] saving,craps --- .../io/zipcoder/casino/Console/Console.java | 2 + src/main/java/io/zipcoder/casino/Craps.java | 90 ++++++++++++++++++- .../io/zipcoder/casino/Interfaces/Gamble.java | 2 +- .../java/io/zipcoder/casino/CrapsTest.java | 18 ++++ 4 files changed, 110 insertions(+), 2 deletions(-) create mode 100644 src/test/java/io/zipcoder/casino/CrapsTest.java diff --git a/src/main/java/io/zipcoder/casino/Console/Console.java b/src/main/java/io/zipcoder/casino/Console/Console.java index 3662d2a3..c677fe23 100644 --- a/src/main/java/io/zipcoder/casino/Console/Console.java +++ b/src/main/java/io/zipcoder/casino/Console/Console.java @@ -27,4 +27,6 @@ public static double getDouble(String prompt) { } while (true); } + + } diff --git a/src/main/java/io/zipcoder/casino/Craps.java b/src/main/java/io/zipcoder/casino/Craps.java index 918edc82..aa60f31d 100644 --- a/src/main/java/io/zipcoder/casino/Craps.java +++ b/src/main/java/io/zipcoder/casino/Craps.java @@ -1,4 +1,92 @@ package io.zipcoder.casino; -public class Craps { +import io.zipcoder.casino.Console.Console; +import io.zipcoder.casino.Interfaces.Gamble; + + +import java.util.Scanner; +import java.util.logging.Logger; + +public class Craps implements Gamble{ + Logger logger = Logger.getGlobal(); + Scanner input = new Scanner(System.in); + + // public void start() { + public static void main(String[] args) { + double playerCash = 1000; + boolean play = true; + while (play == true) { + + System.out.println("Player cash: " + playerCash); + double bet; + + do { + bet = Console.getDouble("Place your bet: "); + } while (bet > playerCash); + + int rollONE = roll(); + int target = rollONE; + + if (rollONE == 7 || rollONE == 11) { + playerCash += bet * 2; + System.out.println("You win!"); + } else if (rollONE == 2 || rollONE == 3 || rollONE == 12) { + playerCash -= bet; + System.out.println("You lose!"); + } else { + System.out.println("Target is now " + rollONE); + int rollTWO = roll(); + while (rollTWO != 7) { + if (rollTWO == rollONE) { + System.out.println("You win!"); + playerCash += bet * 2; + break; + } else { + System.out.println("Target is " + rollONE); + } + rollTWO = roll(); + } + if (rollTWO == 7) { + System.out.println("You lose!"); + playerCash -= bet; + } + } + System.out.println("Press enter to play again"); + try { + System.in.read(); + + } catch (Exception e) { + play = false; + } + + } + } + + + // public int roll() { + public static int roll() { + System.out.println("Press Enter key to roll"); + //logger.info("Rolling..."); + try { + System.in.read(); + } catch (Exception e) { + e.printStackTrace(); + } + int dice1 = (int) (Math.random() * 6) + 1; + int dice2 = (int) (Math.random() * 6) + 1; + + int sum = dice1 + dice2; + + System.out.println("You rolled " + dice1 + " and " + dice2 + "\n"); + System.out.println("Rolled " + sum); + return sum; + } + + + @Override + public void takeBet(double playerbet) { + + } + + } diff --git a/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java b/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java index 06fb68a6..7ada9ca1 100644 --- a/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java +++ b/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java @@ -2,5 +2,5 @@ public interface Gamble { public void takeBet(double playerbet); - public void giveWin(); + } diff --git a/src/test/java/io/zipcoder/casino/CrapsTest.java b/src/test/java/io/zipcoder/casino/CrapsTest.java new file mode 100644 index 00000000..7b3d7146 --- /dev/null +++ b/src/test/java/io/zipcoder/casino/CrapsTest.java @@ -0,0 +1,18 @@ +package io.zipcoder.casino; + +import org.junit.Test; + +import static org.junit.Assert.*; + +public class CrapsTest { + + Craps test = new Craps(); + + + @Test + public void rollTest() { + + + } + +} \ No newline at end of file From 8fa47efdb5d75de12cf8be1e0b5130bc0b76f068 Mon Sep 17 00:00:00 2001 From: Zachary Date: Mon, 20 Nov 2017 08:57:10 -0500 Subject: [PATCH 07/44] saving,craps --- src/main/java/io/zipcoder/casino/Craps.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/io/zipcoder/casino/Craps.java b/src/main/java/io/zipcoder/casino/Craps.java index aa60f31d..1aa4ba12 100644 --- a/src/main/java/io/zipcoder/casino/Craps.java +++ b/src/main/java/io/zipcoder/casino/Craps.java @@ -13,7 +13,7 @@ public class Craps implements Gamble{ // public void start() { public static void main(String[] args) { - double playerCash = 1000; + double playerCash = player.balance; boolean play = true; while (play == true) { From b5c9dd96173fefe105c76f6897593d38bda264dc Mon Sep 17 00:00:00 2001 From: Zachary Date: Mon, 20 Nov 2017 09:25:55 -0500 Subject: [PATCH 08/44] player --- src/main/java/io/zipcoder/casino/Casino.java | 1 + src/main/java/io/zipcoder/casino/Craps.java | 10 ++++------ src/main/java/io/zipcoder/casino/Player.java | 5 +++++ src/test/java/io/zipcoder/casino/CrapsTest.java | 2 +- 4 files changed, 11 insertions(+), 7 deletions(-) create mode 100644 src/main/java/io/zipcoder/casino/Player.java diff --git a/src/main/java/io/zipcoder/casino/Casino.java b/src/main/java/io/zipcoder/casino/Casino.java index 3e322a45..2f01d91c 100644 --- a/src/main/java/io/zipcoder/casino/Casino.java +++ b/src/main/java/io/zipcoder/casino/Casino.java @@ -3,6 +3,7 @@ public class Casino { + Player casinoplayer = new Player(); public void startCasino(){ } diff --git a/src/main/java/io/zipcoder/casino/Craps.java b/src/main/java/io/zipcoder/casino/Craps.java index 1aa4ba12..d9315cf9 100644 --- a/src/main/java/io/zipcoder/casino/Craps.java +++ b/src/main/java/io/zipcoder/casino/Craps.java @@ -7,13 +7,12 @@ import java.util.Scanner; import java.util.logging.Logger; -public class Craps implements Gamble{ +public class Craps extends Casino implements Gamble { Logger logger = Logger.getGlobal(); Scanner input = new Scanner(System.in); - // public void start() { - public static void main(String[] args) { - double playerCash = player.balance; + public void start() { + double playerCash = casinoplayer.balance; boolean play = true; while (play == true) { @@ -63,8 +62,7 @@ public static void main(String[] args) { } - // public int roll() { - public static int roll() { + public int roll() { System.out.println("Press Enter key to roll"); //logger.info("Rolling..."); try { diff --git a/src/main/java/io/zipcoder/casino/Player.java b/src/main/java/io/zipcoder/casino/Player.java new file mode 100644 index 00000000..6109f8cf --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Player.java @@ -0,0 +1,5 @@ +package io.zipcoder.casino; + +public class Player { + double balance = 1000; +} diff --git a/src/test/java/io/zipcoder/casino/CrapsTest.java b/src/test/java/io/zipcoder/casino/CrapsTest.java index 7b3d7146..44c881d1 100644 --- a/src/test/java/io/zipcoder/casino/CrapsTest.java +++ b/src/test/java/io/zipcoder/casino/CrapsTest.java @@ -11,7 +11,7 @@ public class CrapsTest { @Test public void rollTest() { - + test.start(); } From a349d72c80fd68eeef4a0ceb80d69b4ecc638c9d Mon Sep 17 00:00:00 2001 From: graham Date: Mon, 20 Nov 2017 10:32:32 -0500 Subject: [PATCH 09/44] commit before pull --- src/main/java/io/zipcoder/casino/Player.java | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 src/main/java/io/zipcoder/casino/Player.java diff --git a/src/main/java/io/zipcoder/casino/Player.java b/src/main/java/io/zipcoder/casino/Player.java new file mode 100644 index 00000000..afbd0da0 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Player.java @@ -0,0 +1,4 @@ +package io.zipcoder.casino; + +public class Player { +} From c9330069b9ceb2a34f05a2c52895bbb22d943ab8 Mon Sep 17 00:00:00 2001 From: wesley Date: Mon, 20 Nov 2017 10:39:56 -0500 Subject: [PATCH 10/44] deck --- .../io/zipcoder/casino/Player/Dealer.java | 10 ----- .../io/zipcoder/casino/Player/Person.java | 11 ----- .../io/zipcoder/casino/Player/Player.java | 40 ------------------- 3 files changed, 61 deletions(-) delete mode 100644 src/main/java/io/zipcoder/casino/Player/Dealer.java delete mode 100644 src/main/java/io/zipcoder/casino/Player/Person.java delete mode 100644 src/main/java/io/zipcoder/casino/Player/Player.java diff --git a/src/main/java/io/zipcoder/casino/Player/Dealer.java b/src/main/java/io/zipcoder/casino/Player/Dealer.java deleted file mode 100644 index f5fd294c..00000000 --- a/src/main/java/io/zipcoder/casino/Player/Dealer.java +++ /dev/null @@ -1,10 +0,0 @@ -package io.zipcoder.casino.Player; - -import java.util.ArrayList; - -public class Dealer extends Player { - private ArrayList hand = new ArrayList (); - public Dealer(String name, int age) { - super(name, age); - } -} diff --git a/src/main/java/io/zipcoder/casino/Player/Person.java b/src/main/java/io/zipcoder/casino/Player/Person.java deleted file mode 100644 index b76ff4b2..00000000 --- a/src/main/java/io/zipcoder/casino/Player/Person.java +++ /dev/null @@ -1,11 +0,0 @@ -package io.zipcoder.casino.Player; - -abstract class Person { - private String name; - private int age; - - public Person(String name,int age){ - this.name = name; - this.age = age; - } -} diff --git a/src/main/java/io/zipcoder/casino/Player/Player.java b/src/main/java/io/zipcoder/casino/Player/Player.java deleted file mode 100644 index c2f645ab..00000000 --- a/src/main/java/io/zipcoder/casino/Player/Player.java +++ /dev/null @@ -1,40 +0,0 @@ -package io.zipcoder.casino.Player; - -import io.zipcoder.casino.Deck.Card; - -import java.util.ArrayList; - -public class Player extends Person { - private double amount; - private ArrayList hand = new ArrayList(); - - public Player(String name, int age) { - super(name, age); - } - - public double getAmount() { - return amount; - } - - public void setAmount(double amount) { - this.amount = amount; - } - - public ArrayList getHand() { - return hand; - } - - public void addToCard(ArrayList hand) { - this.hand = hand; - } - - public void clearHand(){ - hand.clear(); - } - - public int getRoll(){ - int first = (int)(Math.random()*6+1); - int second = (int)(Math.random()*6+1); - return first+second; - } -} From de8d1a6700b8265fbacc93dfe78451259b12062c Mon Sep 17 00:00:00 2001 From: graham Date: Mon, 20 Nov 2017 10:40:32 -0500 Subject: [PATCH 11/44] player class --- src/main/java/io/zipcoder/casino/Player.java | 48 ++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 src/main/java/io/zipcoder/casino/Player.java diff --git a/src/main/java/io/zipcoder/casino/Player.java b/src/main/java/io/zipcoder/casino/Player.java new file mode 100644 index 00000000..9dfcd93c --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Player.java @@ -0,0 +1,48 @@ +package io.zipcoder.casino; + +import java.util.ArrayList; + +public class Player { + public String name; + public double balance; + public double age; + public ArrayList playerHand = new ArrayList(); + + public Player(String name, double balance, double age){ + this.name = name; + this.balance = balance; + this.age = age; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public double getBalance() { + return balance; + } + + public void setBalance(double balance) { + this.balance = balance; + } + + public double getAge() { + return age; + } + + public void setAge(double age) { + this.age = age; + } + + public ArrayList getPlayerHand() { + return playerHand; + } + + public void setPlayerHand(ArrayList playerHand) { + this.playerHand = playerHand; + } +} From 7ad71dd6870edb80b7bffc87348af7ecc64ea40b Mon Sep 17 00:00:00 2001 From: graham Date: Mon, 20 Nov 2017 10:43:41 -0500 Subject: [PATCH 12/44] player fixed --- .../java/io/zipcoder/casino/Deck/Card.java | 49 +++++++++++++++++ .../java/io/zipcoder/casino/Deck/Deck.java | 54 +++++++++++++++++++ .../java/io/zipcoder/casino/Deck/Suit.java | 3 ++ src/main/java/io/zipcoder/casino/Player.java | 2 + .../casino/PlayerTest/PlayerTest.java | 21 ++++++++ 5 files changed, 129 insertions(+) create mode 100644 src/main/java/io/zipcoder/casino/Deck/Card.java create mode 100644 src/main/java/io/zipcoder/casino/Deck/Deck.java create mode 100644 src/main/java/io/zipcoder/casino/Deck/Suit.java create mode 100644 src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java diff --git a/src/main/java/io/zipcoder/casino/Deck/Card.java b/src/main/java/io/zipcoder/casino/Deck/Card.java new file mode 100644 index 00000000..d4560fe3 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Deck/Card.java @@ -0,0 +1,49 @@ +package io.zipcoder.casino.Deck; + + +public class Card +{ + private Suit suit; + public static String[] suitSymbols = {"♡", "♢", "♧", "♤"}; + public static String[] faceSymbols = {"A", "J", "Q", "K"}; + private Integer value; + private String topCardRepresentation; + private String bottomCardRepresentation; + private static String middleCardRepresentation="| |\n"; + + private Card(){ + } + + @Override + public String toString(){ + return topCardRepresentation+middleCardRepresentation+bottomCardRepresentation; + } + public String getTopCardRepresentation(){ + return topCardRepresentation; + } + + + public Card(Suit passedSuit, Integer passedValue){ + this(passedSuit, passedValue, "X"); + } + public Card(Suit passedSuit, Integer passedValue, String passedSuitRepresentation){ + this(passedSuit, passedValue, passedSuitRepresentation, "Y"); + } + public Card(Suit passedSuit, Integer passedValue, String passedSuitRepresentation, String passedFaceRepresentation){ + suit=passedSuit; + value=passedValue; + topCardRepresentation=" ----- \n"+ + "|"+String.format("%2s%-3s", passedFaceRepresentation, passedSuitRepresentation)+"|\n"; + bottomCardRepresentation="|"+String.format("%4s%s", passedFaceRepresentation, passedSuitRepresentation)+"|\n"+ + " ----- \n"; + } + + public Integer getValue(){ + return value; + } + + public Suit getSuit(){ + return suit; + } + +} diff --git a/src/main/java/io/zipcoder/casino/Deck/Deck.java b/src/main/java/io/zipcoder/casino/Deck/Deck.java new file mode 100644 index 00000000..3017d18d --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Deck/Deck.java @@ -0,0 +1,54 @@ +package io.zipcoder.casino.Deck; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; +import java.util.EnumSet; + +public class Deck { + + private ArrayList cards; + + public Deck(){ + populate(); + } + + public Card getCard(){ + if(cards.size() == 0) { + populate(); + shuffle(); + } + Card card = cards.get(0); + cards.remove(0); + return card; + } + + public ArrayList getAllCards(){ + return cards; + } + + + private void populate() { + cards = new ArrayList(); + for (Suit suit: Suit.values()) { + for (int value = 1; value <= 13; value++) + { + if (value < 11) + { + if (value==1) + cards.add(new Card(suit, value, Card.suitSymbols[suit.ordinal()], Card.faceSymbols[0])); + else + cards.add(new Card(suit, value, Card.suitSymbols[suit.ordinal()], ""+value)); + } + else + cards.add(new Card(suit, 10, Card.suitSymbols[suit.ordinal()], Card.faceSymbols[value - 10])); + + } + } + } + + public void shuffle(){ + Collections.shuffle(cards); + } + +} diff --git a/src/main/java/io/zipcoder/casino/Deck/Suit.java b/src/main/java/io/zipcoder/casino/Deck/Suit.java new file mode 100644 index 00000000..05e05a10 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Deck/Suit.java @@ -0,0 +1,3 @@ +package io.zipcoder.casino.Deck; + +public enum Suit {HEARTS, DIAMONDS, CLUBS, SPADES} diff --git a/src/main/java/io/zipcoder/casino/Player.java b/src/main/java/io/zipcoder/casino/Player.java index 9dfcd93c..e1126683 100644 --- a/src/main/java/io/zipcoder/casino/Player.java +++ b/src/main/java/io/zipcoder/casino/Player.java @@ -1,5 +1,7 @@ package io.zipcoder.casino; +import io.zipcoder.casino.Deck.Card; + import java.util.ArrayList; public class Player { diff --git a/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java new file mode 100644 index 00000000..39280d83 --- /dev/null +++ b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java @@ -0,0 +1,21 @@ +package io.zipcoder.casino.PlayerTest; + +import io.zipcoder.casino.Player.Player; +import org.junit.Assert; +import org.junit.Test; + +public class PlayerTest { + + Player testPlayer = new Player("wes",21); + + @Test + public void getRollTest(){ + int lower = 2; + int upper = 12; + + for(int i= 0;i<1000;i++) { + int actual = testPlayer.getRoll(); + Assert.assertTrue(actual >= lower && actual <= upper); + } + } +} From 573980d351d7106fd1a726b4196ce5d395263ae8 Mon Sep 17 00:00:00 2001 From: Zachary Date: Mon, 20 Nov 2017 10:59:30 -0500 Subject: [PATCH 13/44] saving --- src/main/java/io/zipcoder/casino/Casino.java | 1 + .../io/zipcoder/casino/Console/Console.java | 4 +- src/main/java/io/zipcoder/casino/Craps.java | 54 +++++++++---------- .../io/zipcoder/casino/Interfaces/Gamble.java | 2 +- 4 files changed, 29 insertions(+), 32 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/Casino.java b/src/main/java/io/zipcoder/casino/Casino.java index 2f01d91c..f9020939 100644 --- a/src/main/java/io/zipcoder/casino/Casino.java +++ b/src/main/java/io/zipcoder/casino/Casino.java @@ -8,4 +8,5 @@ public void startCasino(){ } + } diff --git a/src/main/java/io/zipcoder/casino/Console/Console.java b/src/main/java/io/zipcoder/casino/Console/Console.java index c677fe23..3f1f7edf 100644 --- a/src/main/java/io/zipcoder/casino/Console/Console.java +++ b/src/main/java/io/zipcoder/casino/Console/Console.java @@ -26,7 +26,9 @@ public static double getDouble(String prompt) { } } while (true); } - + public static void print(String prompt){ + System.out.println(prompt); + } } diff --git a/src/main/java/io/zipcoder/casino/Craps.java b/src/main/java/io/zipcoder/casino/Craps.java index d9315cf9..7acab8ad 100644 --- a/src/main/java/io/zipcoder/casino/Craps.java +++ b/src/main/java/io/zipcoder/casino/Craps.java @@ -14,76 +14,70 @@ public class Craps extends Casino implements Gamble { public void start() { double playerCash = casinoplayer.balance; boolean play = true; - while (play == true) { + while (play) { - System.out.println("Player cash: " + playerCash); + Console.print("Player cash: " + playerCash); double bet; do { bet = Console.getDouble("Place your bet: "); - } while (bet > playerCash); + } while (takeBet(bet)); int rollONE = roll(); int target = rollONE; if (rollONE == 7 || rollONE == 11) { - playerCash += bet * 2; - System.out.println("You win!"); + playerCash += bet; + Console.print("You win!"); } else if (rollONE == 2 || rollONE == 3 || rollONE == 12) { playerCash -= bet; - System.out.println("You lose!"); + Console.print("You lose!"); } else { - System.out.println("Target is now " + rollONE); + Console.print("Target is now " + rollONE); int rollTWO = roll(); while (rollTWO != 7) { if (rollTWO == rollONE) { - System.out.println("You win!"); - playerCash += bet * 2; + Console.print("You win!"); + playerCash += bet; break; } else { - System.out.println("Target is " + rollONE); + Console.print("Target is " + rollONE); } rollTWO = roll(); } if (rollTWO == 7) { - System.out.println("You lose!"); + Console.print("You lose!"); playerCash -= bet; } } - System.out.println("Press enter to play again"); - try { - System.in.read(); - - } catch (Exception e) { - play = false; - } - + play = playAgain(); } + } public int roll() { - System.out.println("Press Enter key to roll"); - //logger.info("Rolling..."); - try { - System.in.read(); - } catch (Exception e) { - e.printStackTrace(); - } + Console.print("Press Enter key to roll"); + input.nextLine(); int dice1 = (int) (Math.random() * 6) + 1; int dice2 = (int) (Math.random() * 6) + 1; int sum = dice1 + dice2; - System.out.println("You rolled " + dice1 + " and " + dice2 + "\n"); - System.out.println("Rolled " + sum); + Console.print("You rolled " + dice1 + " and " + dice2); + Console.print("Rolled " + sum); return sum; } + private boolean playAgain(){ + String userinput = Console.getString("Play again? Y/N"); + return !userinput.equalsIgnoreCase("N") && !userinput.equalsIgnoreCase("no"); + } + @Override - public void takeBet(double playerbet) { - + public boolean takeBet(double bet) { + return bet > casinoplayer.balance; } diff --git a/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java b/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java index 7ada9ca1..a134cba0 100644 --- a/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java +++ b/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java @@ -1,6 +1,6 @@ package io.zipcoder.casino.Interfaces; public interface Gamble { - public void takeBet(double playerbet); + public boolean takeBet(double playerbet); } From 936eb847a05b78d58fefe486a67e126aa9e3f225 Mon Sep 17 00:00:00 2001 From: wesley Date: Mon, 20 Nov 2017 11:07:04 -0500 Subject: [PATCH 14/44] cardgame class --- src/main/java/io/zipcoder/casino/CardGame.java | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 src/main/java/io/zipcoder/casino/CardGame.java diff --git a/src/main/java/io/zipcoder/casino/CardGame.java b/src/main/java/io/zipcoder/casino/CardGame.java new file mode 100644 index 00000000..74888918 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/CardGame.java @@ -0,0 +1,4 @@ +package io.zipcoder.casino; + +public class CardGame { +} From add8c8311416b380f551b64efbccd632b19c34d7 Mon Sep 17 00:00:00 2001 From: Zachary Date: Mon, 20 Nov 2017 11:25:16 -0500 Subject: [PATCH 15/44] craps --- src/main/java/io/zipcoder/casino/Craps.java | 29 +++++++++++++-------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/Craps.java b/src/main/java/io/zipcoder/casino/Craps.java index 7acab8ad..0d3d7c02 100644 --- a/src/main/java/io/zipcoder/casino/Craps.java +++ b/src/main/java/io/zipcoder/casino/Craps.java @@ -8,16 +8,15 @@ import java.util.logging.Logger; public class Craps extends Casino implements Gamble { - Logger logger = Logger.getGlobal(); Scanner input = new Scanner(System.in); + double playerCash = casinoplayer.balance; + double bet; - public void start() { - double playerCash = casinoplayer.balance; + void start() { boolean play = true; while (play) { Console.print("Player cash: " + playerCash); - double bet; do { bet = Console.getDouble("Place your bet: "); @@ -27,10 +26,10 @@ public void start() { int target = rollONE; if (rollONE == 7 || rollONE == 11) { - playerCash += bet; + playerWin(bet); Console.print("You win!"); } else if (rollONE == 2 || rollONE == 3 || rollONE == 12) { - playerCash -= bet; + playerLose(bet); Console.print("You lose!"); } else { Console.print("Target is now " + rollONE); @@ -38,7 +37,7 @@ public void start() { while (rollTWO != 7) { if (rollTWO == rollONE) { Console.print("You win!"); - playerCash += bet; + playerWin(bet); break; } else { Console.print("Target is " + rollONE); @@ -47,16 +46,16 @@ public void start() { } if (rollTWO == 7) { Console.print("You lose!"); - playerCash -= bet; + playerLose(bet); } } play = playAgain(); } - + casinoplayer.setBalance(playerCash); } - public int roll() { + public int roll() { Console.print("Press Enter key to roll"); input.nextLine(); int dice1 = (int) (Math.random() * 6) + 1; @@ -69,7 +68,7 @@ public int roll() { return sum; } - private boolean playAgain(){ + private boolean playAgain() { String userinput = Console.getString("Play again? Y/N"); return !userinput.equalsIgnoreCase("N") && !userinput.equalsIgnoreCase("no"); } @@ -80,5 +79,13 @@ public boolean takeBet(double bet) { return bet > casinoplayer.balance; } + public void playerLose(double bet) { + playerCash -= bet; + } + + public void playerWin(double bet) { + playerCash += bet; + } + } From 6713a66761bde21f2c8ebe86a9047ab5308610c8 Mon Sep 17 00:00:00 2001 From: graham Date: Mon, 20 Nov 2017 11:31:35 -0500 Subject: [PATCH 16/44] go fish started --- src/main/java/io/zipcoder/casino/GoFish.java | 45 ++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 src/main/java/io/zipcoder/casino/GoFish.java diff --git a/src/main/java/io/zipcoder/casino/GoFish.java b/src/main/java/io/zipcoder/casino/GoFish.java new file mode 100644 index 00000000..64cafdd3 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/GoFish.java @@ -0,0 +1,45 @@ +package io.zipcoder.casino; + +import io.zipcoder.casino.Console.Console; +import io.zipcoder.casino.Deck.Card; + +import java.util.ArrayList; + +public class GoFish { + + private int playerBookCount = 0; + private int dealerBookCount = 0; + + public GoFish(){} + + private boolean playerAsk(){ + return false; + } + + private boolean dealerAsk(){ + return false; + } + + private void searchHand(Card askCard, ArrayList hand){ + for(Card card:hand){ + if(card.fishValue = askCard.fishValue){ + return card; + } + } + + } + + private void compareBooks(){ + if(playerBooks > dealerBooks){ + System.out.println("You win!"); + } + else if(playerBooks < dealerBooks){ + System.out.println("You lose!"); + } + else{ + System.out.println("Tie!"); + } + } + + +} From 62eaadb4e4942901ca48d56a8bddda7fa5d78849 Mon Sep 17 00:00:00 2001 From: wesley Date: Mon, 20 Nov 2017 11:31:57 -0500 Subject: [PATCH 17/44] add to player --- .../java/io/zipcoder/casino/CardGame.java | 35 ++++++++++++++++++- src/main/java/io/zipcoder/casino/Player.java | 22 ++++++++++++ 2 files changed, 56 insertions(+), 1 deletion(-) diff --git a/src/main/java/io/zipcoder/casino/CardGame.java b/src/main/java/io/zipcoder/casino/CardGame.java index 74888918..349b0dbd 100644 --- a/src/main/java/io/zipcoder/casino/CardGame.java +++ b/src/main/java/io/zipcoder/casino/CardGame.java @@ -1,4 +1,37 @@ package io.zipcoder.casino; -public class CardGame { +import io.zipcoder.casino.Console.Console; +import io.zipcoder.casino.Deck.Card; +import io.zipcoder.casino.Deck.Deck; + +abstract class CardGame { + Deck deck = new Deck(); + + public void deal(Player player,Player dealer,int amount){ + clearHands(player,dealer); + for(int i =0;i getPlayerHand() { public void setPlayerHand(ArrayList playerHand) { this.playerHand = playerHand; } + + public void addCard(Card card){ + playerHand.add(card); + } + + public void clearHand(){ + playerHand.clear(); + } + + public String getStringDisplayHand(){ + String output = ""; + Card card; + for (int i=0; i Date: Mon, 20 Nov 2017 12:53:56 -0500 Subject: [PATCH 18/44] craps --- src/main/java/io/zipcoder/casino/Craps.java | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/Craps.java b/src/main/java/io/zipcoder/casino/Craps.java index 0d3d7c02..62ec6996 100644 --- a/src/main/java/io/zipcoder/casino/Craps.java +++ b/src/main/java/io/zipcoder/casino/Craps.java @@ -14,9 +14,9 @@ public class Craps extends Casino implements Gamble { void start() { boolean play = true; - while (play) { - Console.print("Player cash: " + playerCash); + while (play) { + Console.print("Player balance: " + playerCash); do { bet = Console.getDouble("Place your bet: "); @@ -27,16 +27,13 @@ void start() { if (rollONE == 7 || rollONE == 11) { playerWin(bet); - Console.print("You win!"); } else if (rollONE == 2 || rollONE == 3 || rollONE == 12) { playerLose(bet); - Console.print("You lose!"); } else { Console.print("Target is now " + rollONE); int rollTWO = roll(); while (rollTWO != 7) { if (rollTWO == rollONE) { - Console.print("You win!"); playerWin(bet); break; } else { @@ -45,7 +42,6 @@ void start() { rollTWO = roll(); } if (rollTWO == 7) { - Console.print("You lose!"); playerLose(bet); } } @@ -80,10 +76,12 @@ public boolean takeBet(double bet) { } public void playerLose(double bet) { + Console.print("Yon win!"); playerCash -= bet; } public void playerWin(double bet) { + Console.print("You lose!"); playerCash += bet; } From 6f699f1edf57204e13899249aa40e468d4e9abed Mon Sep 17 00:00:00 2001 From: graham Date: Mon, 20 Nov 2017 13:03:27 -0500 Subject: [PATCH 19/44] go fish start, casino extends --- .../java/io/zipcoder/casino/CardGame.java | 2 +- src/main/java/io/zipcoder/casino/GoFish.java | 20 ++++++++++++------- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/CardGame.java b/src/main/java/io/zipcoder/casino/CardGame.java index 349b0dbd..05b7ca87 100644 --- a/src/main/java/io/zipcoder/casino/CardGame.java +++ b/src/main/java/io/zipcoder/casino/CardGame.java @@ -4,7 +4,7 @@ import io.zipcoder.casino.Deck.Card; import io.zipcoder.casino.Deck.Deck; -abstract class CardGame { +abstract class CardGame extends Casino{ Deck deck = new Deck(); public void deal(Player player,Player dealer,int amount){ diff --git a/src/main/java/io/zipcoder/casino/GoFish.java b/src/main/java/io/zipcoder/casino/GoFish.java index 64cafdd3..484c0535 100644 --- a/src/main/java/io/zipcoder/casino/GoFish.java +++ b/src/main/java/io/zipcoder/casino/GoFish.java @@ -5,30 +5,36 @@ import java.util.ArrayList; -public class GoFish { +public class GoFish extends CardGame { private int playerBookCount = 0; private int dealerBookCount = 0; - public GoFish(){} - private boolean playerAsk(){ - return false; + public GoFish(){ + + } + + private void playerAsk(){ + } private boolean dealerAsk(){ return false; } - private void searchHand(Card askCard, ArrayList hand){ + private boolean isCardInHand(Card askCard, ArrayList hand){ for(Card card:hand){ if(card.fishValue = askCard.fishValue){ - return card; + return true; } } - + return false; } + private void removeCard(Card card, ArrayList hand){ + + } private void compareBooks(){ if(playerBooks > dealerBooks){ System.out.println("You win!"); From 436e106cb9152f3070403c7572977045d875a7ae Mon Sep 17 00:00:00 2001 From: wesley Date: Mon, 20 Nov 2017 13:48:15 -0500 Subject: [PATCH 20/44] go fish values --- src/main/java/io/zipcoder/casino/Blackjack.java | 4 ++++ src/main/java/io/zipcoder/casino/Deck/Card.java | 9 +++++++++ src/main/java/io/zipcoder/casino/Deck/Deck.java | 1 + src/main/java/io/zipcoder/casino/Main.java | 4 ++++ 4 files changed, 18 insertions(+) create mode 100644 src/main/java/io/zipcoder/casino/Blackjack.java create mode 100644 src/main/java/io/zipcoder/casino/Main.java diff --git a/src/main/java/io/zipcoder/casino/Blackjack.java b/src/main/java/io/zipcoder/casino/Blackjack.java new file mode 100644 index 00000000..2a0ae98e --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Blackjack.java @@ -0,0 +1,4 @@ +package io.zipcoder.casino; + +public class Blackjack { +} diff --git a/src/main/java/io/zipcoder/casino/Deck/Card.java b/src/main/java/io/zipcoder/casino/Deck/Card.java index d4560fe3..e42eed5e 100644 --- a/src/main/java/io/zipcoder/casino/Deck/Card.java +++ b/src/main/java/io/zipcoder/casino/Deck/Card.java @@ -7,6 +7,7 @@ public class Card public static String[] suitSymbols = {"♡", "♢", "♧", "♤"}; public static String[] faceSymbols = {"A", "J", "Q", "K"}; private Integer value; + private Integer goFishValue; private String topCardRepresentation; private String bottomCardRepresentation; private static String middleCardRepresentation="| |\n"; @@ -38,6 +39,14 @@ public Card(Suit passedSuit, Integer passedValue, String passedSuitRepresentatio " ----- \n"; } + public Integer getGoFishValue() { + return goFishValue; + } + + public void setGoFishValue(Integer goFishValue) { + this.goFishValue = goFishValue; + } + public Integer getValue(){ return value; } diff --git a/src/main/java/io/zipcoder/casino/Deck/Deck.java b/src/main/java/io/zipcoder/casino/Deck/Deck.java index 3017d18d..4f52474d 100644 --- a/src/main/java/io/zipcoder/casino/Deck/Deck.java +++ b/src/main/java/io/zipcoder/casino/Deck/Deck.java @@ -43,6 +43,7 @@ private void populate() { else cards.add(new Card(suit, 10, Card.suitSymbols[suit.ordinal()], Card.faceSymbols[value - 10])); + cards.get(cards.size()-1).setGoFishValue(value); } } } diff --git a/src/main/java/io/zipcoder/casino/Main.java b/src/main/java/io/zipcoder/casino/Main.java new file mode 100644 index 00000000..68aabb4a --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Main.java @@ -0,0 +1,4 @@ +package io.zipcoder.casino; + +public class Main { +} From c733fa367f0c30db5bba357eef05ef177ac37d60 Mon Sep 17 00:00:00 2001 From: graham Date: Mon, 20 Nov 2017 13:50:11 -0500 Subject: [PATCH 21/44] shit --- src/main/java/io/zipcoder/casino/GoFish.java | 57 ++++++++++++-------- 1 file changed, 36 insertions(+), 21 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/GoFish.java b/src/main/java/io/zipcoder/casino/GoFish.java index 484c0535..36443224 100644 --- a/src/main/java/io/zipcoder/casino/GoFish.java +++ b/src/main/java/io/zipcoder/casino/GoFish.java @@ -9,10 +9,19 @@ public class GoFish extends CardGame { private int playerBookCount = 0; private int dealerBookCount = 0; - + Player dealer = new Player("Dealer", 0,6); public GoFish(){ + } + + public void goFishStart(){ + deal(casinoplayer, dealer, 7); + Console.print(casinoplayer.getStringDisplayHand()); + getCard("Give me all your: "); + + + } private void playerAsk(){ @@ -23,28 +32,34 @@ private boolean dealerAsk(){ return false; } - private boolean isCardInHand(Card askCard, ArrayList hand){ - for(Card card:hand){ - if(card.fishValue = askCard.fishValue){ - return true; - } - } - return false; - } +// private boolean isCardInHand(Card askCard, ArrayList hand){ +// for(Card card:hand){ +// if(card.fishValue = askCard.fishValue){ +// return true; +// } +// } +// return false; +// } - private void removeCard(Card card, ArrayList hand){ +// private Card getCard(String prompt){ +// Console.print(prompt); +// +// +// } - } - private void compareBooks(){ - if(playerBooks > dealerBooks){ - System.out.println("You win!"); - } - else if(playerBooks < dealerBooks){ - System.out.println("You lose!"); - } - else{ - System.out.println("Tie!"); - } +// private void removeCard(Card card, ArrayList hand){ +// +// } +// private void compareBooks(){ +// if(playerBooks > dealerBooks){ +// System.out.println("You win!"); +// } +// else if(playerBooks < dealerBooks){ +// System.out.println("You lose!"); +// } +// else{ +// System.out.println("Tie!"); +// } } From 931aed66da5e12454e24e07bc47e9299f6a4d530 Mon Sep 17 00:00:00 2001 From: Zachary Date: Mon, 20 Nov 2017 14:01:51 -0500 Subject: [PATCH 22/44] craps test --- src/main/java/io/zipcoder/casino/Craps.java | 24 ++++++++------ .../java/io/zipcoder/casino/CrapsTest.java | 33 ++++++++++++++++--- 2 files changed, 43 insertions(+), 14 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/Craps.java b/src/main/java/io/zipcoder/casino/Craps.java index 62ec6996..c75b261f 100644 --- a/src/main/java/io/zipcoder/casino/Craps.java +++ b/src/main/java/io/zipcoder/casino/Craps.java @@ -9,14 +9,20 @@ public class Craps extends Casino implements Gamble { Scanner input = new Scanner(System.in); - double playerCash = casinoplayer.balance; + Player crapsplayer; + //double playerCash = crapsplayer.balance; null pointer double bet; + + public Craps(Player player) { + this.crapsplayer = player; + } + void start() { boolean play = true; while (play) { - Console.print("Player balance: " + playerCash); + Console.print("Player balance: " + crapsplayer.balance); do { bet = Console.getDouble("Place your bet: "); @@ -47,7 +53,7 @@ void start() { } play = playAgain(); } - casinoplayer.setBalance(playerCash); + crapsplayer.setBalance(crapsplayer.balance); } @@ -69,20 +75,18 @@ private boolean playAgain() { return !userinput.equalsIgnoreCase("N") && !userinput.equalsIgnoreCase("no"); } - - @Override public boolean takeBet(double bet) { - return bet > casinoplayer.balance; + return bet > crapsplayer.balance; } public void playerLose(double bet) { - Console.print("Yon win!"); - playerCash -= bet; + Console.print("You lose!"); + crapsplayer.balance -= bet; } public void playerWin(double bet) { - Console.print("You lose!"); - playerCash += bet; + Console.print("You win!"); + crapsplayer.balance += bet; } diff --git a/src/test/java/io/zipcoder/casino/CrapsTest.java b/src/test/java/io/zipcoder/casino/CrapsTest.java index 44c881d1..b10298f8 100644 --- a/src/test/java/io/zipcoder/casino/CrapsTest.java +++ b/src/test/java/io/zipcoder/casino/CrapsTest.java @@ -1,18 +1,43 @@ package io.zipcoder.casino; +import org.junit.Assert; import org.junit.Test; import static org.junit.Assert.*; public class CrapsTest { - Craps test = new Craps(); + Player player = new Player("Zach",5000,23); + Craps test = new Craps(player); + @Test + public void winTest() { + double expected = 6000; + + test.playerWin(1000); + double actual = player.balance; + + Assert.assertEquals(expected, actual, 0); + } @Test - public void rollTest() { - test.start(); + public void loseTest() { + double expected = 4000; + + test.playerLose(1000); + double actual = player.balance; + Assert.assertEquals(expected, actual, 0); } -} \ No newline at end of file + @Test + public void takeBetTest(){ + boolean expected = false; + + boolean actual = test.takeBet(2500); + + Assert.assertEquals(expected,actual); + } +} + + From 39505d2b9051a6d820f2fd7f944a6bfb95261ad1 Mon Sep 17 00:00:00 2001 From: Zachary Date: Mon, 20 Nov 2017 14:31:10 -0500 Subject: [PATCH 23/44] saving --- src/main/java/io/zipcoder/casino/Casino.java | 2 +- src/main/java/io/zipcoder/casino/Craps.java | 3 +-- src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java | 5 +++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/Casino.java b/src/main/java/io/zipcoder/casino/Casino.java index f9020939..428a932c 100644 --- a/src/main/java/io/zipcoder/casino/Casino.java +++ b/src/main/java/io/zipcoder/casino/Casino.java @@ -3,9 +3,9 @@ public class Casino { - Player casinoplayer = new Player(); public void startCasino(){ + } diff --git a/src/main/java/io/zipcoder/casino/Craps.java b/src/main/java/io/zipcoder/casino/Craps.java index c75b261f..bac8006e 100644 --- a/src/main/java/io/zipcoder/casino/Craps.java +++ b/src/main/java/io/zipcoder/casino/Craps.java @@ -2,6 +2,7 @@ import io.zipcoder.casino.Console.Console; import io.zipcoder.casino.Interfaces.Gamble; +import io.zipcoder.casino.Interfaces.Game; import java.util.Scanner; @@ -88,6 +89,4 @@ public void playerWin(double bet) { Console.print("You win!"); crapsplayer.balance += bet; } - - } diff --git a/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java index 39280d83..f61cd814 100644 --- a/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java +++ b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java @@ -1,12 +1,13 @@ package io.zipcoder.casino.PlayerTest; -import io.zipcoder.casino.Player.Player; + +import io.zipcoder.casino.Player; import org.junit.Assert; import org.junit.Test; public class PlayerTest { - Player testPlayer = new Player("wes",21); + Player testPlayer = new Player("wes",5000,21); @Test public void getRollTest(){ From 4f006ffbb99e90a56ce58459235019256fd2ecc1 Mon Sep 17 00:00:00 2001 From: Zachary Date: Mon, 20 Nov 2017 14:43:03 -0500 Subject: [PATCH 24/44] saving --- src/main/java/io/zipcoder/casino/Craps.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/Craps.java b/src/main/java/io/zipcoder/casino/Craps.java index bac8006e..db648542 100644 --- a/src/main/java/io/zipcoder/casino/Craps.java +++ b/src/main/java/io/zipcoder/casino/Craps.java @@ -4,11 +4,9 @@ import io.zipcoder.casino.Interfaces.Gamble; import io.zipcoder.casino.Interfaces.Game; - import java.util.Scanner; -import java.util.logging.Logger; -public class Craps extends Casino implements Gamble { +public class Craps extends Casino implements Gamble,Game { Scanner input = new Scanner(System.in); Player crapsplayer; //double playerCash = crapsplayer.balance; null pointer @@ -19,7 +17,7 @@ public Craps(Player player) { this.crapsplayer = player; } - void start() { + public boolean play() { boolean play = true; while (play) { @@ -55,6 +53,7 @@ void start() { play = playAgain(); } crapsplayer.setBalance(crapsplayer.balance); + return false; } From 032bc12b47fd243adcb9668163b9d4c59b3cdf6c Mon Sep 17 00:00:00 2001 From: wesley Date: Mon, 20 Nov 2017 14:45:03 -0500 Subject: [PATCH 25/44] blackjack --- .../java/io/zipcoder/casino/Blackjack.java | 116 +++++++++++++++++- .../io/zipcoder/casino/BlackjackDealer.java | 12 ++ .../io/zipcoder/casino/BlackjackPlayer.java | 32 +++++ .../java/io/zipcoder/casino/CardGame.java | 8 +- .../java/io/zipcoder/casino/CardPlayer.java | 41 +++++++ src/main/java/io/zipcoder/casino/Casino.java | 11 +- .../io/zipcoder/casino/Console/Console.java | 12 ++ src/main/java/io/zipcoder/casino/Main.java | 3 + src/main/java/io/zipcoder/casino/Player.java | 30 +---- .../casino/PlayerTest/PlayerTest.java | 42 +++---- 10 files changed, 251 insertions(+), 56 deletions(-) create mode 100644 src/main/java/io/zipcoder/casino/BlackjackDealer.java create mode 100644 src/main/java/io/zipcoder/casino/BlackjackPlayer.java create mode 100644 src/main/java/io/zipcoder/casino/CardPlayer.java diff --git a/src/main/java/io/zipcoder/casino/Blackjack.java b/src/main/java/io/zipcoder/casino/Blackjack.java index 2a0ae98e..476e0cb5 100644 --- a/src/main/java/io/zipcoder/casino/Blackjack.java +++ b/src/main/java/io/zipcoder/casino/Blackjack.java @@ -1,4 +1,118 @@ package io.zipcoder.casino; -public class Blackjack { +import io.zipcoder.casino.Console.Console; + +public class Blackjack extends CardGame{ + BlackjackPlayer player; + BlackjackDealer dealer; + private double pot = 0; + + public BlackjackPlayer getPlayer() { + return player; + } + public BlackjackDealer getDealer() { + return dealer; + } + + public Blackjack(Player player){ + this.player = new BlackjackPlayer(player); + Player dealer = new Player("Dealer",0,0); + this.dealer = new BlackjackDealer(dealer); + } + + public void start(){ + Console.print("Welcome to BlackJack"); + play(); + } + + public void play(){ + clearPot(); + getBet(); + deal(player,dealer,2); + askForHitOrStay(); + dealerPlay(); + checkWin(); + if(playAgain()){ + play(); + }else{ + //gameOptions(); + } + } + + public boolean playAgain(){ + String input = Console.getValidString("Would you like to play again?","yes","no"); + return "yes".equalsIgnoreCase(input); + } + + public void checkWin(){ + if(playerWins()){ + Console.print("Player wins\n"); + casinoplayer.addToBalance(pot*2); + }else{ + Console.print("Dealer wins\n"); + } + Console.print("Dealer had\n"+dealer.getStringDisplayHand()); + Console.print("Score of "+dealer.getScore()); + } + + public void askForHitOrStay(){ + Console.print("Dealer is showing\n"+dealer.getHand().get(0).toString()); + String hitOrStay; + do{ + printHand(player); + Console.print("Score of "+player.getScore() + "\n"); + hitOrStay = Console.getValidString("Would you like to hit or stay?","hit","stay"); + if("hit".equalsIgnoreCase(hitOrStay)){ + player.addCard(deck.getCard()); + }else { + return; + } + }while(true); + } + + public void dealerPlay(){ + while(dealer.hitDealer()){ + dealer.addCard(deck.getCard()); + } + } + + public void getBet(){ + Console.print("You current balance is "+casinoplayer.getBalance()); + double bet; + while(true){ + bet = Console.getDouble("How much would you like bet?"); + if(validBet(bet)){ + addToPot(bet); + break; + } + Console.print("Invalid bet"); + } + casinoplayer.addToBalance(-1*bet); + addToPot(bet); + } + + public boolean validBet(double bet){ + return casinoplayer.getBalance() >= bet; + } + + public void addToPot(double amount) { + pot += amount; + } + + public double getPot() { + return pot; + } + + public void clearPot(){ + pot = 0; + } + + public boolean playerWins(){ + if((player.getScore() == 21 && dealer.getScore() != 21) || + (player.getScore() < 21 && dealer.getScore() < player.getScore()) || + (player.getScore() < 21 && dealer.getScore() > 21)) { + return true; + } + return false; + } } diff --git a/src/main/java/io/zipcoder/casino/BlackjackDealer.java b/src/main/java/io/zipcoder/casino/BlackjackDealer.java new file mode 100644 index 00000000..f7787ca9 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/BlackjackDealer.java @@ -0,0 +1,12 @@ +package io.zipcoder.casino; + +public class BlackjackDealer extends BlackjackPlayer{ + + public BlackjackDealer(Player person) { + super(person); + } + + public boolean hitDealer(){ + return getScore() < 17; + } +} diff --git a/src/main/java/io/zipcoder/casino/BlackjackPlayer.java b/src/main/java/io/zipcoder/casino/BlackjackPlayer.java new file mode 100644 index 00000000..11a7e9c0 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/BlackjackPlayer.java @@ -0,0 +1,32 @@ +package io.zipcoder.casino; + +import io.zipcoder.casino.Deck.Card; + +public class BlackjackPlayer extends CardPlayer{ + + public BlackjackPlayer(Player person) { + super(); + } + + public int getScore() { + int sum = 0; + for(Card card: hand) { + sum += card.getValue(); + } + + if(isAceInHand() && sum <= 11) { + sum += 10; + } + return sum; + } + + private boolean isAceInHand() { + for(Card card: hand) { + if(card.getValue() == 1) { + return true; + } + } + return false; + } + +} diff --git a/src/main/java/io/zipcoder/casino/CardGame.java b/src/main/java/io/zipcoder/casino/CardGame.java index 05b7ca87..3eacf3bd 100644 --- a/src/main/java/io/zipcoder/casino/CardGame.java +++ b/src/main/java/io/zipcoder/casino/CardGame.java @@ -7,7 +7,7 @@ abstract class CardGame extends Casino{ Deck deck = new Deck(); - public void deal(Player player,Player dealer,int amount){ + public void deal(CardPlayer player,CardPlayer dealer,int amount){ clearHands(player,dealer); for(int i =0;i hand; + + public CardPlayer() { + super("cardPlayer",0,0); + hand = new ArrayList<>(); + } + + public ArrayList getHand() { + return hand; + } + + public void addCard(Card card) { + hand.add(card); + } + + public void clearHand(){ + hand.clear(); + } + + public String getStringDisplayHand(){ + String output = ""; + Card card; + for (int i=0; i getPlayerHand() { - return playerHand; - } - - public void setPlayerHand(ArrayList playerHand) { - this.playerHand = playerHand; - } - - public void addCard(Card card){ - playerHand.add(card); - } - - public void clearHand(){ - playerHand.clear(); - } - - public String getStringDisplayHand(){ - String output = ""; - Card card; - for (int i=0; i= lower && actual <= upper); - } - } -} +//package io.zipcoder.casino.PlayerTest; +// +//import io.zipcoder.casino.Player.Player; +//import org.junit.Assert; +//import org.junit.Test; +// +//public class PlayerTest { +// +// Player testPlayer = new Player("wes",21); +// +// @Test +// public void getRollTest(){ +// int lower = 2; +// int upper = 12; +// +// for(int i= 0;i<1000;i++) { +// int actual = testPlayer.getRoll(); +// Assert.assertTrue(actual >= lower && actual <= upper); +// } +// } +//} From bf54c80ea57854b21acd47e639cb9f0989eada2d Mon Sep 17 00:00:00 2001 From: wesley Date: Mon, 20 Nov 2017 14:47:06 -0500 Subject: [PATCH 26/44] take out comments --- .../casino/PlayerTest/PlayerTest.java | 42 +++++++++---------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java index 99fa572c..39280d83 100644 --- a/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java +++ b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java @@ -1,21 +1,21 @@ -//package io.zipcoder.casino.PlayerTest; -// -//import io.zipcoder.casino.Player.Player; -//import org.junit.Assert; -//import org.junit.Test; -// -//public class PlayerTest { -// -// Player testPlayer = new Player("wes",21); -// -// @Test -// public void getRollTest(){ -// int lower = 2; -// int upper = 12; -// -// for(int i= 0;i<1000;i++) { -// int actual = testPlayer.getRoll(); -// Assert.assertTrue(actual >= lower && actual <= upper); -// } -// } -//} +package io.zipcoder.casino.PlayerTest; + +import io.zipcoder.casino.Player.Player; +import org.junit.Assert; +import org.junit.Test; + +public class PlayerTest { + + Player testPlayer = new Player("wes",21); + + @Test + public void getRollTest(){ + int lower = 2; + int upper = 12; + + for(int i= 0;i<1000;i++) { + int actual = testPlayer.getRoll(); + Assert.assertTrue(actual >= lower && actual <= upper); + } + } +} From 44fb0ee1c4f2eee863856d5c338facf085d8d8fe Mon Sep 17 00:00:00 2001 From: graham Date: Mon, 20 Nov 2017 14:52:28 -0500 Subject: [PATCH 27/44] commit to pull abstracts --- src/main/java/io/zipcoder/casino/GoFish.java | 102 ++++++++++++------ .../java/io/zipcoder/casino/GoFishTest.java | 10 ++ 2 files changed, 77 insertions(+), 35 deletions(-) create mode 100644 src/test/java/io/zipcoder/casino/GoFishTest.java diff --git a/src/main/java/io/zipcoder/casino/GoFish.java b/src/main/java/io/zipcoder/casino/GoFish.java index 36443224..304340ac 100644 --- a/src/main/java/io/zipcoder/casino/GoFish.java +++ b/src/main/java/io/zipcoder/casino/GoFish.java @@ -4,62 +4,94 @@ import io.zipcoder.casino.Deck.Card; import java.util.ArrayList; +import java.util.Scanner; public class GoFish extends CardGame { private int playerBookCount = 0; private int dealerBookCount = 0; - Player dealer = new Player("Dealer", 0,6); + Player dealer = new Player("Dealer", 0, 6); - public GoFish(){ + public GoFish() { } - public void goFishStart(){ + public void goFishStart() { deal(casinoplayer, dealer, 7); - Console.print(casinoplayer.getStringDisplayHand()); - getCard("Give me all your: "); + playerTurn(); + } + private void playerTurn() { + boolean playing = true; + while (playing) { + Console.print(casinoplayer.getStringDisplayHand()); + Card askCard = getCard("Give me all your: "); + if (isCardInHand(askCard, dealer.getPlayerHand())) { + dealer.getPlayerHand().remove(askCard); + casinoplayer.addCard(askCard); + } else { + Console.print("GO FISH!"); + giveCard(casinoplayer); + playing = false; + } + } } - private void playerAsk(){ + private boolean dealerAsk() { + return false; } - private boolean dealerAsk(){ + private boolean isCardInHand(Card askCard, ArrayList hand) { + for (Card card : hand) { + if (card.getValue().equals(askCard.getValue())) { + return true; + } + } return false; } -// private boolean isCardInHand(Card askCard, ArrayList hand){ -// for(Card card:hand){ -// if(card.fishValue = askCard.fishValue){ -// return true; -// } -// } -// return false; -// } - -// private Card getCard(String prompt){ -// Console.print(prompt); -// -// -// } - -// private void removeCard(Card card, ArrayList hand){ -// -// } -// private void compareBooks(){ -// if(playerBooks > dealerBooks){ -// System.out.println("You win!"); -// } -// else if(playerBooks < dealerBooks){ -// System.out.println("You lose!"); -// } -// else{ -// System.out.println("Tie!"); -// } + private Card getCard(String prompt) { + String input = Console.getString("Give me all your: "); + + } + + return null; + + } + + private void removeCard(Card card, ArrayList hand) { + + } + + private Card checkForBooks(Player player) { + ArrayList hand = player.getPlayerHand(); + for (Card card1 : hand) { + int num = 0; + for (Card card2 : hand) + if (card1 == card2) + num++; + if (num == 4) { + for (int i = 0; i < 4; i++) + hand.remove(card1); + //ADD TO PLAYER BOOK COUNT + return card1; + } + } + return null; + + } + + private void compareBooks() { + if (playerBookCount > dealerBookCount) { + System.out.println("You win!"); + } else if (playerBookCount < dealerBookCount) { + System.out.println("You lose!"); + } else { + System.out.println("Tie!"); + } } diff --git a/src/test/java/io/zipcoder/casino/GoFishTest.java b/src/test/java/io/zipcoder/casino/GoFishTest.java new file mode 100644 index 00000000..47d28b3b --- /dev/null +++ b/src/test/java/io/zipcoder/casino/GoFishTest.java @@ -0,0 +1,10 @@ +package io.zipcoder.casino; + +import org.junit.Test; + +public class GoFishTest { + + + @Test + public void +} From fbcd09495da4d2b26cde9eb6f84acfd3a8c46727 Mon Sep 17 00:00:00 2001 From: wesley Date: Mon, 20 Nov 2017 14:58:41 -0500 Subject: [PATCH 28/44] test change --- .../casino/PlayerTest/PlayerTest.java | 21 ------------------- 1 file changed, 21 deletions(-) delete mode 100644 src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java diff --git a/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java deleted file mode 100644 index 39280d83..00000000 --- a/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java +++ /dev/null @@ -1,21 +0,0 @@ -package io.zipcoder.casino.PlayerTest; - -import io.zipcoder.casino.Player.Player; -import org.junit.Assert; -import org.junit.Test; - -public class PlayerTest { - - Player testPlayer = new Player("wes",21); - - @Test - public void getRollTest(){ - int lower = 2; - int upper = 12; - - for(int i= 0;i<1000;i++) { - int actual = testPlayer.getRoll(); - Assert.assertTrue(actual >= lower && actual <= upper); - } - } -} From 51d5b57bcfb6457ebcf4df1eb52adfe6c3db3d0b Mon Sep 17 00:00:00 2001 From: Zachary Date: Mon, 20 Nov 2017 15:15:31 -0500 Subject: [PATCH 29/44] tests --- .../java/io/zipcoder/casino/CrapsTest.java | 11 +++- .../casino/PlayerTest/PlayerTest.java | 59 ++++++++++++++++--- 2 files changed, 61 insertions(+), 9 deletions(-) diff --git a/src/test/java/io/zipcoder/casino/CrapsTest.java b/src/test/java/io/zipcoder/casino/CrapsTest.java index b10298f8..634fc496 100644 --- a/src/test/java/io/zipcoder/casino/CrapsTest.java +++ b/src/test/java/io/zipcoder/casino/CrapsTest.java @@ -31,13 +31,22 @@ public void loseTest() { } @Test - public void takeBetTest(){ + public void takeBetTestFalse(){ boolean expected = false; boolean actual = test.takeBet(2500); Assert.assertEquals(expected,actual); } + @Test + public void takeBetTestTrue(){ + boolean expected = true; + + boolean actual = test.takeBet(5500); + + Assert.assertEquals(expected,actual); + } + } diff --git a/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java index f61cd814..9d976a9c 100644 --- a/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java +++ b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java @@ -10,13 +10,56 @@ public class PlayerTest { Player testPlayer = new Player("wes",5000,21); @Test - public void getRollTest(){ - int lower = 2; - int upper = 12; - - for(int i= 0;i<1000;i++) { - int actual = testPlayer.getRoll(); - Assert.assertTrue(actual >= lower && actual <= upper); - } + public void getNameTest(){ + String expected = "wes"; + String actual = testPlayer.getName(); + + Assert.assertEquals(expected,actual); + } + @Test + public void setNameTest(){ + String expected = "bob"; + testPlayer.setName("bob"); + String actual = testPlayer.getName(); + + Assert.assertEquals(expected,actual); + } + @Test + public void getBalanceTest(){ + double expected = 5000; + double actual = testPlayer.getBalance(); + + Assert.assertEquals(expected,actual,0); + } + @Test + public void setBalanceTest(){ + double expected = 100000; + testPlayer.setBalance(100000); + double actual = testPlayer.getBalance(); + + Assert.assertEquals(expected,actual,0); + } + @Test + public void getAgeTest(){ + int expected = 21; + int actual = testPlayer.getAge(); + + Assert.assertEquals(expected,actual); + } + @Test + public void setAgeTest(){ + int expected = 99; + testPlayer.setAge(99); + int actual = testPlayer.getAge(); + + Assert.assertEquals(expected,actual); + } + @Test + public void addToBalanceTest(){ + double expected = 5001; + testPlayer.addToBalance(1); + double actual = testPlayer.getBalance(); + + Assert.assertEquals(expected,actual,0); } } From 9fc0c0a0b6b7c9f5ce5d1423083f75bad6915cb8 Mon Sep 17 00:00:00 2001 From: wesley Date: Mon, 20 Nov 2017 15:18:07 -0500 Subject: [PATCH 30/44] go fish values enum --- src/main/java/io/zipcoder/casino/Deck/Card.java | 6 +++--- src/main/java/io/zipcoder/casino/Deck/Deck.java | 4 +--- src/main/java/io/zipcoder/casino/Deck/GoFishValue.java | 5 +++++ 3 files changed, 9 insertions(+), 6 deletions(-) create mode 100644 src/main/java/io/zipcoder/casino/Deck/GoFishValue.java diff --git a/src/main/java/io/zipcoder/casino/Deck/Card.java b/src/main/java/io/zipcoder/casino/Deck/Card.java index e42eed5e..7c00fd26 100644 --- a/src/main/java/io/zipcoder/casino/Deck/Card.java +++ b/src/main/java/io/zipcoder/casino/Deck/Card.java @@ -7,7 +7,7 @@ public class Card public static String[] suitSymbols = {"♡", "♢", "♧", "♤"}; public static String[] faceSymbols = {"A", "J", "Q", "K"}; private Integer value; - private Integer goFishValue; + private GoFishValue goFishValue; private String topCardRepresentation; private String bottomCardRepresentation; private static String middleCardRepresentation="| |\n"; @@ -39,11 +39,11 @@ public Card(Suit passedSuit, Integer passedValue, String passedSuitRepresentatio " ----- \n"; } - public Integer getGoFishValue() { + public GoFishValue getGoFishValue() { return goFishValue; } - public void setGoFishValue(Integer goFishValue) { + public void setGoFishValue(GoFishValue goFishValue) { this.goFishValue = goFishValue; } diff --git a/src/main/java/io/zipcoder/casino/Deck/Deck.java b/src/main/java/io/zipcoder/casino/Deck/Deck.java index 4f52474d..6dd55902 100644 --- a/src/main/java/io/zipcoder/casino/Deck/Deck.java +++ b/src/main/java/io/zipcoder/casino/Deck/Deck.java @@ -1,9 +1,7 @@ package io.zipcoder.casino.Deck; import java.util.ArrayList; -import java.util.Collection; import java.util.Collections; -import java.util.EnumSet; public class Deck { @@ -43,7 +41,7 @@ private void populate() { else cards.add(new Card(suit, 10, Card.suitSymbols[suit.ordinal()], Card.faceSymbols[value - 10])); - cards.get(cards.size()-1).setGoFishValue(value); + cards.get(cards.size()-1).setGoFishValue(GoFishValue.values()[value-1]); } } } diff --git a/src/main/java/io/zipcoder/casino/Deck/GoFishValue.java b/src/main/java/io/zipcoder/casino/Deck/GoFishValue.java new file mode 100644 index 00000000..cfa35e33 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/Deck/GoFishValue.java @@ -0,0 +1,5 @@ +package io.zipcoder.casino.Deck; + +public enum GoFishValue { + ACE,TWO,THREE,FOUR,FIVE,SIX,SEVEN,EIGHT,NINE,TEN,JACK,QUEEN,KING; +} From 975efa3d33e8339abfe4be9077f1516484c85d4b Mon Sep 17 00:00:00 2001 From: graham Date: Mon, 20 Nov 2017 15:25:01 -0500 Subject: [PATCH 31/44] gofish refactor --- src/main/java/io/zipcoder/casino/GoFish.java | 51 ++++++++++++------- .../java/io/zipcoder/casino/GoFishPlayer.java | 18 +++++++ 2 files changed, 50 insertions(+), 19 deletions(-) create mode 100644 src/main/java/io/zipcoder/casino/GoFishPlayer.java diff --git a/src/main/java/io/zipcoder/casino/GoFish.java b/src/main/java/io/zipcoder/casino/GoFish.java index 304340ac..1c93379d 100644 --- a/src/main/java/io/zipcoder/casino/GoFish.java +++ b/src/main/java/io/zipcoder/casino/GoFish.java @@ -4,20 +4,23 @@ import io.zipcoder.casino.Deck.Card; import java.util.ArrayList; +import java.util.Random; import java.util.Scanner; public class GoFish extends CardGame { - private int playerBookCount = 0; - private int dealerBookCount = 0; - Player dealer = new Player("Dealer", 0, 6); + GoFishPlayer player; + GoFishPlayer dealer; - public GoFish() { + public GoFish(Player player) { + this.player = new GoFishPlayer(player); + Player dealer = new Player("Dealer",0,0); + this.dealer = new GoFishPlayer(dealer); } public void goFishStart() { - deal(casinoplayer, dealer, 7); + deal(player,dealer,7); playerTurn(); @@ -26,22 +29,32 @@ public void goFishStart() { private void playerTurn() { boolean playing = true; while (playing) { - Console.print(casinoplayer.getStringDisplayHand()); + Console.print(player.getStringDisplayHand()); Card askCard = getCard("Give me all your: "); - if (isCardInHand(askCard, dealer.getPlayerHand())) { - dealer.getPlayerHand().remove(askCard); - casinoplayer.addCard(askCard); + if (isCardInHand(askCard, dealer.getHand())) { + dealer.getHand().remove(askCard); + player.addCard(askCard); } else { Console.print("GO FISH!"); - giveCard(casinoplayer); + giveCard(player); playing = false; } + checkForBooks(player); } } private boolean dealerAsk() { - return false; + boolean playing = true; + while(playing){ + dealerFindCard() + + } + } + + private Card dealerFindCard(){ + + return null; } private boolean isCardInHand(Card askCard, ArrayList hand) { @@ -66,17 +79,17 @@ private void removeCard(Card card, ArrayList hand) { } - private Card checkForBooks(Player player) { - ArrayList hand = player.getPlayerHand(); - for (Card card1 : hand) { + private Card checkForBooks(GoFishPlayer player) { + + for (Card card1 : player.getHand()) { int num = 0; - for (Card card2 : hand) + for (Card card2 : player.getHand()) if (card1 == card2) num++; if (num == 4) { for (int i = 0; i < 4; i++) - hand.remove(card1); - //ADD TO PLAYER BOOK COUNT + player.getHand().remove(card1); + player.setBookCounter(1); return card1; } } @@ -85,9 +98,9 @@ private Card checkForBooks(Player player) { } private void compareBooks() { - if (playerBookCount > dealerBookCount) { + if (player.getBookCounter() > dealer.getBookCounter()) { System.out.println("You win!"); - } else if (playerBookCount < dealerBookCount) { + } else if (player.getBookCounter() < dealer.getBookCounter()) { System.out.println("You lose!"); } else { System.out.println("Tie!"); diff --git a/src/main/java/io/zipcoder/casino/GoFishPlayer.java b/src/main/java/io/zipcoder/casino/GoFishPlayer.java new file mode 100644 index 00000000..75e8fe16 --- /dev/null +++ b/src/main/java/io/zipcoder/casino/GoFishPlayer.java @@ -0,0 +1,18 @@ +package io.zipcoder.casino; + +public class GoFishPlayer extends CardPlayer { + + private int bookCounter; + + public GoFishPlayer(Player player){ + super(); + } + + public int getBookCounter() { + return bookCounter; + } + + public void setBookCounter(int bookCounter) { + this.bookCounter += bookCounter; + } +} From eb40c81e5e906405449e6c828095498eb4e9f2b9 Mon Sep 17 00:00:00 2001 From: Zachary Date: Mon, 20 Nov 2017 15:32:34 -0500 Subject: [PATCH 32/44] tests --- .../io/zipcoder/casino/Deck/DeckTest.java | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 src/test/java/io/zipcoder/casino/Deck/DeckTest.java diff --git a/src/test/java/io/zipcoder/casino/Deck/DeckTest.java b/src/test/java/io/zipcoder/casino/Deck/DeckTest.java new file mode 100644 index 00000000..7bf5733b --- /dev/null +++ b/src/test/java/io/zipcoder/casino/Deck/DeckTest.java @@ -0,0 +1,48 @@ +package io.zipcoder.casino.Deck; + +import org.junit.Assert; +import org.junit.Test; + +import static org.junit.Assert.*; + +public class DeckTest { + + Deck testDeck = new Deck(); + + @Test + public void getCard(){ + int expected = 51; + testDeck.getCard(); + int actual = testDeck.getAllCards().size(); + + Assert.assertEquals(expected,actual); + } + + @Test + public void getAllCards(){ + int expected = 52; + int actual = testDeck.getAllCards().size(); + + Assert.assertEquals(expected,actual); + + } + @Test + public void populateTest(){ + + int expected = 52; + int actual = testDeck.getAllCards().size(); + Assert.assertEquals(expected,actual); + } + + @Test + public void shuffle() { + Card expected = testDeck.getCard(); + System.out.println(expected); + testDeck.shuffle(); + Card actual = testDeck.getCard(); + System.out.println(actual); + + Assert.assertFalse(expected == actual); + } + +} \ No newline at end of file From 431a04fa3e483b86798e2b53157c48609fe73284 Mon Sep 17 00:00:00 2001 From: Zachary Date: Mon, 20 Nov 2017 15:36:01 -0500 Subject: [PATCH 33/44] playerclass --- src/main/java/io/zipcoder/casino/Player.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/Player.java b/src/main/java/io/zipcoder/casino/Player.java index 9f6f5e5a..8e210c3c 100644 --- a/src/main/java/io/zipcoder/casino/Player.java +++ b/src/main/java/io/zipcoder/casino/Player.java @@ -7,10 +7,10 @@ public class Player { public String name; public double balance; - public double age; + public int age; public ArrayList playerHand = new ArrayList(); - public Player(String name, double balance, double age){ + public Player(String name, double balance, int age){ this.name = name; this.balance = balance; this.age = age; @@ -32,11 +32,11 @@ public void setBalance(double balance) { this.balance = balance; } - public double getAge() { + public int getAge() { return age; } - public void setAge(double age) { + public void setAge(int age) { this.age = age; } From 0f7696cdfc78ba21c79900bc3e40d2ce57e6a69e Mon Sep 17 00:00:00 2001 From: wesley Date: Mon, 20 Nov 2017 15:37:22 -0500 Subject: [PATCH 34/44] menu stuff --- .../java/io/zipcoder/casino/CardGame.java | 1 + src/main/java/io/zipcoder/casino/Casino.java | 10 +- src/main/java/io/zipcoder/casino/GoFish.java | 102 +++++++++--------- .../casino/PlayerTest/PlayerTest.java | 44 ++++---- 4 files changed, 78 insertions(+), 79 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/CardGame.java b/src/main/java/io/zipcoder/casino/CardGame.java index 3eacf3bd..caa00262 100644 --- a/src/main/java/io/zipcoder/casino/CardGame.java +++ b/src/main/java/io/zipcoder/casino/CardGame.java @@ -9,6 +9,7 @@ abstract class CardGame extends Casino{ public void deal(CardPlayer player,CardPlayer dealer,int amount){ clearHands(player,dealer); + deck.shuffle(); for(int i =0;i hand){ - for(Card card:hand){ - if(card.fishValue = askCard.fishValue){ - return true; - } - } - return false; - } - - private void removeCard(Card card, ArrayList hand){ - - } - private void compareBooks(){ - if(playerBooks > dealerBooks){ - System.out.println("You win!"); - } - else if(playerBooks < dealerBooks){ - System.out.println("You lose!"); - } - else{ - System.out.println("Tie!"); - } - } - - -} +//package io.zipcoder.casino; +// +//import io.zipcoder.casino.Console.Console; +//import io.zipcoder.casino.Deck.Card; +// +//import java.util.ArrayList; +// +//public class GoFish extends CardGame { +// +// private int playerBookCount = 0; +// private int dealerBookCount = 0; +// +// +// public GoFish(){ +// +// } +// +// private void playerAsk(){ +// +// } +// +// private boolean dealerAsk(){ +// return false; +// } +// +// private boolean isCardInHand(Card askCard, ArrayList hand){ +// for(Card card:hand){ +// if(card.fishValue = askCard.fishValue){ +// return true; +// } +// } +// return false; +// } +// +// private void removeCard(Card card, ArrayList hand){ +// +// } +// private void compareBooks(){ +// if(playerBooks > dealerBooks){ +// System.out.println("You win!"); +// } +// else if(playerBooks < dealerBooks){ +// System.out.println("You lose!"); +// } +// else{ +// System.out.println("Tie!"); +// } +// } +// +// +//} diff --git a/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java index f61cd814..d87de5a2 100644 --- a/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java +++ b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java @@ -1,22 +1,22 @@ -package io.zipcoder.casino.PlayerTest; - - -import io.zipcoder.casino.Player; -import org.junit.Assert; -import org.junit.Test; - -public class PlayerTest { - - Player testPlayer = new Player("wes",5000,21); - - @Test - public void getRollTest(){ - int lower = 2; - int upper = 12; - - for(int i= 0;i<1000;i++) { - int actual = testPlayer.getRoll(); - Assert.assertTrue(actual >= lower && actual <= upper); - } - } -} +//package io.zipcoder.casino.PlayerTest; +// +// +//import io.zipcoder.casino.Player; +//import org.junit.Assert; +//import org.junit.Test; +// +//public class PlayerTest { +// +// Player testPlayer = new Player("wes",5000,21); +// +// @Test +// public void getRollTest(){ +// int lower = 2; +// int upper = 12; +// +// for(int i= 0;i<1000;i++) { +// int actual = testPlayer.getRoll(); +// Assert.assertTrue(actual >= lower && actual <= upper); +// } +// } +//} From 993562c8ae5b50e213ba0a96b70061e501e072f5 Mon Sep 17 00:00:00 2001 From: Zachary Date: Mon, 20 Nov 2017 17:09:10 -0500 Subject: [PATCH 35/44] saving --- src/main/java/io/zipcoder/casino/Casino.java | 3 +- src/main/java/io/zipcoder/casino/Craps.java | 48 +++++++++++-------- src/main/java/io/zipcoder/casino/GoFish.java | 46 +++++++++--------- .../io/zipcoder/casino/Interfaces/Gamble.java | 2 +- .../java/io/zipcoder/casino/CrapsTest.java | 17 ------- 5 files changed, 55 insertions(+), 61 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/Casino.java b/src/main/java/io/zipcoder/casino/Casino.java index 8958c13c..306617d7 100644 --- a/src/main/java/io/zipcoder/casino/Casino.java +++ b/src/main/java/io/zipcoder/casino/Casino.java @@ -13,7 +13,8 @@ public class Casino { public void startCasino(){ casinoplayer= new Player("testPlayer",1000,21); - new Blackjack(casinoplayer).start(); +// new Blackjack(casinoplayer).start(); + new Craps(casinoplayer).play(); } diff --git a/src/main/java/io/zipcoder/casino/Craps.java b/src/main/java/io/zipcoder/casino/Craps.java index db648542..1ce1b142 100644 --- a/src/main/java/io/zipcoder/casino/Craps.java +++ b/src/main/java/io/zipcoder/casino/Craps.java @@ -6,7 +6,7 @@ import java.util.Scanner; -public class Craps extends Casino implements Gamble,Game { +public class Craps extends Casino implements Gamble, Game { Scanner input = new Scanner(System.in); Player crapsplayer; //double playerCash = crapsplayer.balance; null pointer @@ -19,13 +19,12 @@ public Craps(Player player) { public boolean play() { boolean play = true; + Console.print("Welcome to Craps"); while (play) { Console.print("Player balance: " + crapsplayer.balance); - do { - bet = Console.getDouble("Place your bet: "); - } while (takeBet(bet)); + takeBet(); int rollONE = roll(); int target = rollONE; @@ -37,23 +36,13 @@ public boolean play() { } else { Console.print("Target is now " + rollONE); int rollTWO = roll(); - while (rollTWO != 7) { - if (rollTWO == rollONE) { - playerWin(bet); - break; - } else { - Console.print("Target is " + rollONE); - } - rollTWO = roll(); - } - if (rollTWO == 7) { - playerLose(bet); - } + checkRollTwo(rollTWO, rollONE); + } play = playAgain(); } crapsplayer.setBalance(crapsplayer.balance); - return false; + return play; } @@ -70,13 +59,34 @@ public int roll() { return sum; } + public int checkRollTwo(int rollTWO, int rollONE) { + while (rollTWO != 7) { + if (rollTWO == rollONE) { + playerWin(bet); + break; + } else { + Console.print("Target is " + rollONE); + if (rollTWO == 7) { + playerLose(bet); + break; + } + + } + rollTWO = roll(); + } + return rollTWO; + } + private boolean playAgain() { String userinput = Console.getString("Play again? Y/N"); return !userinput.equalsIgnoreCase("N") && !userinput.equalsIgnoreCase("no"); } - public boolean takeBet(double bet) { - return bet > crapsplayer.balance; + public double takeBet() { + do { + bet = Console.getDouble("Place your bet: "); + } while (bet > crapsplayer.balance); + return bet; } public void playerLose(double bet) { diff --git a/src/main/java/io/zipcoder/casino/GoFish.java b/src/main/java/io/zipcoder/casino/GoFish.java index 484c0535..a464ab5a 100644 --- a/src/main/java/io/zipcoder/casino/GoFish.java +++ b/src/main/java/io/zipcoder/casino/GoFish.java @@ -23,29 +23,29 @@ private boolean dealerAsk(){ return false; } - private boolean isCardInHand(Card askCard, ArrayList hand){ - for(Card card:hand){ - if(card.fishValue = askCard.fishValue){ - return true; - } - } - return false; - } - - private void removeCard(Card card, ArrayList hand){ - - } - private void compareBooks(){ - if(playerBooks > dealerBooks){ - System.out.println("You win!"); - } - else if(playerBooks < dealerBooks){ - System.out.println("You lose!"); - } - else{ - System.out.println("Tie!"); - } - } +// private boolean isCardInHand(Card askCard, ArrayList hand){ +// for(Card card:hand){ +// if(card.fishValue = askCard.fishValue){ +// return true; +// } +// } +// return false; +// } +// +// private void removeCard(Card card, ArrayList hand){ +// +// } +// private void compareBooks(){ +// if(playerBooks > dealerBooks){ +// System.out.println("You win!"); +// } +// else if(playerBooks < dealerBooks){ +// System.out.println("You lose!"); +// } +// else{ +// System.out.println("Tie!"); +// } +// } } diff --git a/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java b/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java index a134cba0..3ac3a580 100644 --- a/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java +++ b/src/main/java/io/zipcoder/casino/Interfaces/Gamble.java @@ -1,6 +1,6 @@ package io.zipcoder.casino.Interfaces; public interface Gamble { - public boolean takeBet(double playerbet); + public double takeBet(); } diff --git a/src/test/java/io/zipcoder/casino/CrapsTest.java b/src/test/java/io/zipcoder/casino/CrapsTest.java index 634fc496..f301ce16 100644 --- a/src/test/java/io/zipcoder/casino/CrapsTest.java +++ b/src/test/java/io/zipcoder/casino/CrapsTest.java @@ -30,23 +30,6 @@ public void loseTest() { Assert.assertEquals(expected, actual, 0); } - @Test - public void takeBetTestFalse(){ - boolean expected = false; - - boolean actual = test.takeBet(2500); - - Assert.assertEquals(expected,actual); - } - @Test - public void takeBetTestTrue(){ - boolean expected = true; - - boolean actual = test.takeBet(5500); - - Assert.assertEquals(expected,actual); - } - } From 556649f71044c530aa2b295706b1a3546715c9e1 Mon Sep 17 00:00:00 2001 From: Zachary Date: Mon, 20 Nov 2017 17:11:37 -0500 Subject: [PATCH 36/44] saving --- src/main/java/io/zipcoder/casino/GoFish.java | 46 ++++++++++---------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/GoFish.java b/src/main/java/io/zipcoder/casino/GoFish.java index a464ab5a..484c0535 100644 --- a/src/main/java/io/zipcoder/casino/GoFish.java +++ b/src/main/java/io/zipcoder/casino/GoFish.java @@ -23,29 +23,29 @@ private boolean dealerAsk(){ return false; } -// private boolean isCardInHand(Card askCard, ArrayList hand){ -// for(Card card:hand){ -// if(card.fishValue = askCard.fishValue){ -// return true; -// } -// } -// return false; -// } -// -// private void removeCard(Card card, ArrayList hand){ -// -// } -// private void compareBooks(){ -// if(playerBooks > dealerBooks){ -// System.out.println("You win!"); -// } -// else if(playerBooks < dealerBooks){ -// System.out.println("You lose!"); -// } -// else{ -// System.out.println("Tie!"); -// } -// } + private boolean isCardInHand(Card askCard, ArrayList hand){ + for(Card card:hand){ + if(card.fishValue = askCard.fishValue){ + return true; + } + } + return false; + } + + private void removeCard(Card card, ArrayList hand){ + + } + private void compareBooks(){ + if(playerBooks > dealerBooks){ + System.out.println("You win!"); + } + else if(playerBooks < dealerBooks){ + System.out.println("You lose!"); + } + else{ + System.out.println("Tie!"); + } + } } From a07ffa0ab6de7c63854867d0b5b23d4e735fb094 Mon Sep 17 00:00:00 2001 From: graham Date: Mon, 20 Nov 2017 17:14:31 -0500 Subject: [PATCH 37/44] somewhat working gofish --- .../java/io/zipcoder/casino/CardPlayer.java | 11 ++++ .../java/io/zipcoder/casino/Deck/Card.java | 6 +- src/main/java/io/zipcoder/casino/GoFish.java | 60 ++++++++++--------- src/main/java/io/zipcoder/casino/Player.java | 8 +-- .../java/io/zipcoder/casino/CrapsTest.java | 11 +++- .../io/zipcoder/casino/Deck/DeckTest.java | 48 +++++++++++++++ .../java/io/zipcoder/casino/GoFishTest.java | 8 ++- .../casino/PlayerTest/PlayerTest.java | 59 +++++++++++++++--- 8 files changed, 167 insertions(+), 44 deletions(-) create mode 100644 src/test/java/io/zipcoder/casino/Deck/DeckTest.java diff --git a/src/main/java/io/zipcoder/casino/CardPlayer.java b/src/main/java/io/zipcoder/casino/CardPlayer.java index 8a66d30d..065d9d89 100644 --- a/src/main/java/io/zipcoder/casino/CardPlayer.java +++ b/src/main/java/io/zipcoder/casino/CardPlayer.java @@ -38,4 +38,15 @@ public String getStringDisplayHand(){ return output; } + public Card removeCard(Card cardToRemove){ + for(Card card : hand){ + if(card == cardToRemove){ + hand.remove(cardToRemove); + return card; + } + + } + return null; + } + } diff --git a/src/main/java/io/zipcoder/casino/Deck/Card.java b/src/main/java/io/zipcoder/casino/Deck/Card.java index 7c00fd26..03504dd5 100644 --- a/src/main/java/io/zipcoder/casino/Deck/Card.java +++ b/src/main/java/io/zipcoder/casino/Deck/Card.java @@ -7,7 +7,7 @@ public class Card public static String[] suitSymbols = {"♡", "♢", "♧", "♤"}; public static String[] faceSymbols = {"A", "J", "Q", "K"}; private Integer value; - private GoFishValue goFishValue; + private Enum goFishValue; private String topCardRepresentation; private String bottomCardRepresentation; private static String middleCardRepresentation="| |\n"; @@ -39,8 +39,8 @@ public Card(Suit passedSuit, Integer passedValue, String passedSuitRepresentatio " ----- \n"; } - public GoFishValue getGoFishValue() { - return goFishValue; + public String getGoFishValue() { + return goFishValue.toString(); } public void setGoFishValue(GoFishValue goFishValue) { diff --git a/src/main/java/io/zipcoder/casino/GoFish.java b/src/main/java/io/zipcoder/casino/GoFish.java index 5d2652b8..60dcb785 100644 --- a/src/main/java/io/zipcoder/casino/GoFish.java +++ b/src/main/java/io/zipcoder/casino/GoFish.java @@ -5,7 +5,6 @@ import java.util.ArrayList; import java.util.Random; -import java.util.Scanner; public class GoFish extends CardGame { @@ -15,79 +14,86 @@ public class GoFish extends CardGame { public GoFish(Player player) { this.player = new GoFishPlayer(player); - Player dealer = new Player("Dealer",0,0); + Player dealer = new Player("Dealer", 0, 0); this.dealer = new GoFishPlayer(dealer); } public void goFishStart() { - deal(player,dealer,7); - playerTurn(); + deal(player, dealer, 7); + boolean playing = true; + while (playing) { + playerTurn(); + dealerTurn(); + playing = checkForWin(); + } + } + private boolean checkForWin() { + if (deck.getAllCards().size() == 0) { + compareBooks(); + return false; + } + return true; } private void playerTurn() { boolean playing = true; while (playing) { + checkForBooks(player); Console.print(player.getStringDisplayHand()); - Card askCard = getCard("Give me all your: "); + String askCard = Console.getString("Enter card you are looking for: "); if (isCardInHand(askCard, dealer.getHand())) { - dealer.getHand().remove(askCard); - player.addCard(askCard); + swapCard(dealer, player, askCard); } else { Console.print("GO FISH!"); giveCard(player); playing = false; } - checkForBooks(player); } } private void dealerTurn() { boolean playing = true; - while(playing){ - Console.print("Opponent looking for card.."); + while (playing) { + checkForBooks(dealer); + Console.print("Opponent looking for card..."); Card dealerCard = dealerFindCard(); Console.print("Do you have any: " + dealerCard.getGoFishValue() + " ?"); - if(isCardInHand(dealerCard, player.getHand())){ - player.getHand().remove(dealerCard); - dealer.addCard(dealerCard); - } else{ + if (isCardInHand(dealerCard.getGoFishValue(), player.getHand())) { + swapCard(player, dealer, dealerCard.getGoFishValue()); + } else { Console.print("Guess I'll go fish..."); giveCard(dealer); playing = false; } + } } - private Card dealerFindCard(){ + private Card dealerFindCard() { Random r = new Random(); int x = r.nextInt(dealer.getHand().size()); return dealer.getHand().get(x); } - private boolean isCardInHand(Card askCard, ArrayList hand) { + private boolean isCardInHand(String askCard, ArrayList hand) { for (Card card : hand) { - if (card.getValue().equals(askCard.getValue())) { + if (askCard.equals(card.getGoFishValue())) { return true; } } return false; } - private Card getCard(String prompt) { - String input = Console.getString("Give me all your: "); - + private void swapCard(CardPlayer player1, CardPlayer player2, String cardValue) { + for (Card card : player1.getHand()) { + if (cardValue.equals(card.getGoFishValue())) { + player2.addCard(player1.removeCard(card)); + } } - - return null; - - } - - private void removeCard(Card card, ArrayList hand) { - } private Card checkForBooks(GoFishPlayer player) { diff --git a/src/main/java/io/zipcoder/casino/Player.java b/src/main/java/io/zipcoder/casino/Player.java index 9f6f5e5a..8e210c3c 100644 --- a/src/main/java/io/zipcoder/casino/Player.java +++ b/src/main/java/io/zipcoder/casino/Player.java @@ -7,10 +7,10 @@ public class Player { public String name; public double balance; - public double age; + public int age; public ArrayList playerHand = new ArrayList(); - public Player(String name, double balance, double age){ + public Player(String name, double balance, int age){ this.name = name; this.balance = balance; this.age = age; @@ -32,11 +32,11 @@ public void setBalance(double balance) { this.balance = balance; } - public double getAge() { + public int getAge() { return age; } - public void setAge(double age) { + public void setAge(int age) { this.age = age; } diff --git a/src/test/java/io/zipcoder/casino/CrapsTest.java b/src/test/java/io/zipcoder/casino/CrapsTest.java index b10298f8..634fc496 100644 --- a/src/test/java/io/zipcoder/casino/CrapsTest.java +++ b/src/test/java/io/zipcoder/casino/CrapsTest.java @@ -31,13 +31,22 @@ public void loseTest() { } @Test - public void takeBetTest(){ + public void takeBetTestFalse(){ boolean expected = false; boolean actual = test.takeBet(2500); Assert.assertEquals(expected,actual); } + @Test + public void takeBetTestTrue(){ + boolean expected = true; + + boolean actual = test.takeBet(5500); + + Assert.assertEquals(expected,actual); + } + } diff --git a/src/test/java/io/zipcoder/casino/Deck/DeckTest.java b/src/test/java/io/zipcoder/casino/Deck/DeckTest.java new file mode 100644 index 00000000..7bf5733b --- /dev/null +++ b/src/test/java/io/zipcoder/casino/Deck/DeckTest.java @@ -0,0 +1,48 @@ +package io.zipcoder.casino.Deck; + +import org.junit.Assert; +import org.junit.Test; + +import static org.junit.Assert.*; + +public class DeckTest { + + Deck testDeck = new Deck(); + + @Test + public void getCard(){ + int expected = 51; + testDeck.getCard(); + int actual = testDeck.getAllCards().size(); + + Assert.assertEquals(expected,actual); + } + + @Test + public void getAllCards(){ + int expected = 52; + int actual = testDeck.getAllCards().size(); + + Assert.assertEquals(expected,actual); + + } + @Test + public void populateTest(){ + + int expected = 52; + int actual = testDeck.getAllCards().size(); + Assert.assertEquals(expected,actual); + } + + @Test + public void shuffle() { + Card expected = testDeck.getCard(); + System.out.println(expected); + testDeck.shuffle(); + Card actual = testDeck.getCard(); + System.out.println(actual); + + Assert.assertFalse(expected == actual); + } + +} \ No newline at end of file diff --git a/src/test/java/io/zipcoder/casino/GoFishTest.java b/src/test/java/io/zipcoder/casino/GoFishTest.java index 47d28b3b..3aa49234 100644 --- a/src/test/java/io/zipcoder/casino/GoFishTest.java +++ b/src/test/java/io/zipcoder/casino/GoFishTest.java @@ -4,7 +4,13 @@ public class GoFishTest { + Player player = new Player("Graham", 3000, 5); + GoFish test = new GoFish(player); @Test - public void + public void goFishTest(){ + + } + + } diff --git a/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java index f61cd814..9d976a9c 100644 --- a/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java +++ b/src/test/java/io/zipcoder/casino/PlayerTest/PlayerTest.java @@ -10,13 +10,56 @@ public class PlayerTest { Player testPlayer = new Player("wes",5000,21); @Test - public void getRollTest(){ - int lower = 2; - int upper = 12; - - for(int i= 0;i<1000;i++) { - int actual = testPlayer.getRoll(); - Assert.assertTrue(actual >= lower && actual <= upper); - } + public void getNameTest(){ + String expected = "wes"; + String actual = testPlayer.getName(); + + Assert.assertEquals(expected,actual); + } + @Test + public void setNameTest(){ + String expected = "bob"; + testPlayer.setName("bob"); + String actual = testPlayer.getName(); + + Assert.assertEquals(expected,actual); + } + @Test + public void getBalanceTest(){ + double expected = 5000; + double actual = testPlayer.getBalance(); + + Assert.assertEquals(expected,actual,0); + } + @Test + public void setBalanceTest(){ + double expected = 100000; + testPlayer.setBalance(100000); + double actual = testPlayer.getBalance(); + + Assert.assertEquals(expected,actual,0); + } + @Test + public void getAgeTest(){ + int expected = 21; + int actual = testPlayer.getAge(); + + Assert.assertEquals(expected,actual); + } + @Test + public void setAgeTest(){ + int expected = 99; + testPlayer.setAge(99); + int actual = testPlayer.getAge(); + + Assert.assertEquals(expected,actual); + } + @Test + public void addToBalanceTest(){ + double expected = 5001; + testPlayer.addToBalance(1); + double actual = testPlayer.getBalance(); + + Assert.assertEquals(expected,actual,0); } } From ae6cda6a1b1d6d8807503221608013103d711c4f Mon Sep 17 00:00:00 2001 From: wesley Date: Mon, 20 Nov 2017 18:00:18 -0500 Subject: [PATCH 38/44] input stuff --- .../java/io/zipcoder/casino/Blackjack.java | 4 +-- src/main/java/io/zipcoder/casino/Casino.java | 35 +++++++++++++++---- .../io/zipcoder/casino/Console/Console.java | 14 +++++++- src/main/java/io/zipcoder/casino/Craps.java | 6 ++-- 4 files changed, 48 insertions(+), 11 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/Blackjack.java b/src/main/java/io/zipcoder/casino/Blackjack.java index fb8991ac..02395325 100644 --- a/src/main/java/io/zipcoder/casino/Blackjack.java +++ b/src/main/java/io/zipcoder/casino/Blackjack.java @@ -35,7 +35,7 @@ public void play(){ if(playAgain()){ play(); }else{ - //gameOptions(); + gameOptions(); } } @@ -77,7 +77,7 @@ public void dealerPlay(){ } public void getBet(){ - Console.print("You current balance is "+casinoplayer.getBalance()); + Console.print("You current balance is "+format.format(casinoplayer.getBalance())); double bet; while(true){ bet = Console.getDouble("How much would you like bet?"); diff --git a/src/main/java/io/zipcoder/casino/Casino.java b/src/main/java/io/zipcoder/casino/Casino.java index 546b84c4..a3043f6b 100644 --- a/src/main/java/io/zipcoder/casino/Casino.java +++ b/src/main/java/io/zipcoder/casino/Casino.java @@ -2,28 +2,51 @@ import io.zipcoder.casino.Console.Console; +import java.text.DecimalFormat; +import java.util.Arrays; + public class Casino { + DecimalFormat format = new DecimalFormat(".00"); static Player casinoplayer; public void startCasino(){ Console.print("Welcome to the casino"); String name = Console.getString("What is your name?"); - int age = (int)Console.getDouble("How old "); - casinoplayer= new Player(name,1000,age); + int age = (int)Console.getDouble("How old are you?"); + double money = Console.getDouble("How much coin you got?"); + casinoplayer= new Player(name,money,age); - new Blackjack(casinoplayer).start(); + gameOptions(); } public void gameOptions(){ String[] gameOptionList = {"Craps","Blackjack","Go Fish"}; - Console.print("Game options:\n"+gameOptionList.toString()); + Console.print("Game options:\n"+ Arrays.asList(gameOptionList).toString()); String input = Console.getValidString("What game would you like to play?",gameOptionList); - if("blackjack".equalsIgnoreCase(input)){ - new Blackjack(casinoplayer).start(); + switch(input.toLowerCase()){ + case "blackjack": + validAge(); + new Blackjack(casinoplayer).start(); + break; + case "go fish": + // go fish start + break; + case "craps": + validAge(); + new Craps(casinoplayer).play(); + break; + default: + gameOptions(); } } + public void validAge(){ + if(casinoplayer.getAge()<21){ + Console.print("Too young sucka"); + gameOptions(); + } + } } diff --git a/src/main/java/io/zipcoder/casino/Console/Console.java b/src/main/java/io/zipcoder/casino/Console/Console.java index 909e32fb..749389a1 100644 --- a/src/main/java/io/zipcoder/casino/Console/Console.java +++ b/src/main/java/io/zipcoder/casino/Console/Console.java @@ -1,10 +1,11 @@ package io.zipcoder.casino.Console; +import java.util.ArrayList; import java.util.Arrays; import java.util.InputMismatchException; import java.util.Scanner; -public class Console { +public class Console extends ArrayList { public static String getString(String prompt) { Scanner input = new Scanner(System.in); @@ -43,4 +44,15 @@ public static String getValidString(String prompt,String... validInputs){ } } + @Override + public boolean contains(Object object){ + String string = (String)object; + for (String str: this){ + if(str.equalsIgnoreCase(string)){ + return true; + } + } + return false; + } + } diff --git a/src/main/java/io/zipcoder/casino/Craps.java b/src/main/java/io/zipcoder/casino/Craps.java index 1ce1b142..2ba94672 100644 --- a/src/main/java/io/zipcoder/casino/Craps.java +++ b/src/main/java/io/zipcoder/casino/Craps.java @@ -22,7 +22,8 @@ public boolean play() { Console.print("Welcome to Craps"); while (play) { - Console.print("Player balance: " + crapsplayer.balance); + + Console.print("Player balance: " + format.format(crapsplayer.balance)); takeBet(); @@ -42,7 +43,8 @@ public boolean play() { play = playAgain(); } crapsplayer.setBalance(crapsplayer.balance); - return play; + gameOptions(); + return true; } From a9e1ed6fc79f39a92a47ad6e69b971b68df9bb73 Mon Sep 17 00:00:00 2001 From: wesley Date: Tue, 21 Nov 2017 07:43:40 -0500 Subject: [PATCH 39/44] limit blackjack hand size --- src/main/java/io/zipcoder/casino/Blackjack.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/io/zipcoder/casino/Blackjack.java b/src/main/java/io/zipcoder/casino/Blackjack.java index 02395325..f630c5f5 100644 --- a/src/main/java/io/zipcoder/casino/Blackjack.java +++ b/src/main/java/io/zipcoder/casino/Blackjack.java @@ -62,7 +62,7 @@ public void askForHitOrStay(){ printHand(player); Console.print("Score of "+player.getScore() + "\n"); hitOrStay = Console.getValidString("Would you like to hit or stay?","hit","stay"); - if("hit".equalsIgnoreCase(hitOrStay)){ + if("hit".equalsIgnoreCase(hitOrStay) && player.hand.size()<5){ player.addCard(deck.getCard()); }else { return; From 71ff6d42e86464d5c9d305717ac03e5d30474f20 Mon Sep 17 00:00:00 2001 From: Zachary Date: Tue, 21 Nov 2017 11:41:27 -0500 Subject: [PATCH 40/44] fixed craps rolling 7 --- src/main/java/io/zipcoder/casino/Craps.java | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/Craps.java b/src/main/java/io/zipcoder/casino/Craps.java index 2ba94672..1eea5be3 100644 --- a/src/main/java/io/zipcoder/casino/Craps.java +++ b/src/main/java/io/zipcoder/casino/Craps.java @@ -38,7 +38,9 @@ public boolean play() { Console.print("Target is now " + rollONE); int rollTWO = roll(); checkRollTwo(rollTWO, rollONE); - + if (rollTWO == 7) { + playerLose(bet); + } } play = playAgain(); } @@ -68,11 +70,6 @@ public int checkRollTwo(int rollTWO, int rollONE) { break; } else { Console.print("Target is " + rollONE); - if (rollTWO == 7) { - playerLose(bet); - break; - } - } rollTWO = roll(); } From 903c68c468b2cfa392e505e1955e53f6d2c771ff Mon Sep 17 00:00:00 2001 From: wesley Date: Tue, 21 Nov 2017 16:22:13 -0500 Subject: [PATCH 41/44] menu stuff --- .../java/io/zipcoder/casino/Blackjack.java | 38 ++++++------------- src/main/java/io/zipcoder/casino/Casino.java | 4 +- .../io/zipcoder/casino/Console/Console.java | 22 +++++------ .../java/io/zipcoder/casino/CasinoTest.java | 6 +++ .../io/zipcoder/casino/Deck/DeckTest.java | 12 ++++++ 5 files changed, 43 insertions(+), 39 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/Blackjack.java b/src/main/java/io/zipcoder/casino/Blackjack.java index f630c5f5..e6b077dd 100644 --- a/src/main/java/io/zipcoder/casino/Blackjack.java +++ b/src/main/java/io/zipcoder/casino/Blackjack.java @@ -1,8 +1,9 @@ package io.zipcoder.casino; import io.zipcoder.casino.Console.Console; +import io.zipcoder.casino.Interfaces.Gamble; -public class Blackjack extends CardGame{ +public class Blackjack extends CardGame implements Gamble{ BlackjackPlayer player; BlackjackDealer dealer; private double pot = 0; @@ -26,8 +27,8 @@ public void start(){ } public void play(){ - clearPot(); - getBet(); + pot = takeBet(); + System.out.println(pot); deal(player,dealer,2); askForHitOrStay(); dealerPlay(); @@ -61,8 +62,11 @@ public void askForHitOrStay(){ do{ printHand(player); Console.print("Score of "+player.getScore() + "\n"); + if(player.getScore()>=21){ + return; + } hitOrStay = Console.getValidString("Would you like to hit or stay?","hit","stay"); - if("hit".equalsIgnoreCase(hitOrStay) && player.hand.size()<5){ + if("hit".equalsIgnoreCase(hitOrStay)){ player.addCard(deck.getCard()); }else { return; @@ -76,35 +80,17 @@ public void dealerPlay(){ } } - public void getBet(){ + public double takeBet(){ Console.print("You current balance is "+format.format(casinoplayer.getBalance())); double bet; while(true){ bet = Console.getDouble("How much would you like bet?"); - if(validBet(bet)){ - addToPot(bet); - break; + if(casinoplayer.getBalance() >= bet){ + casinoplayer.addToBalance(-1*bet); + return bet; } Console.print("Invalid bet"); } - casinoplayer.addToBalance(-1*bet); - addToPot(bet); - } - - public boolean validBet(double bet){ - return casinoplayer.getBalance() >= bet; - } - - public void addToPot(double amount) { - pot += amount; - } - - public double getPot() { - return pot; - } - - public void clearPot(){ - pot = 0; } public boolean playerWins(){ diff --git a/src/main/java/io/zipcoder/casino/Casino.java b/src/main/java/io/zipcoder/casino/Casino.java index a3043f6b..5fa93c13 100644 --- a/src/main/java/io/zipcoder/casino/Casino.java +++ b/src/main/java/io/zipcoder/casino/Casino.java @@ -6,7 +6,7 @@ import java.util.Arrays; public class Casino { - DecimalFormat format = new DecimalFormat(".00"); + DecimalFormat format = new DecimalFormat("0.00"); static Player casinoplayer; public void startCasino(){ @@ -22,7 +22,7 @@ public void startCasino(){ } public void gameOptions(){ - String[] gameOptionList = {"Craps","Blackjack","Go Fish"}; + String[] gameOptionList = {"CRAPS","BLACKJACK","GO FISH"}; Console.print("Game options:\n"+ Arrays.asList(gameOptionList).toString()); String input = Console.getValidString("What game would you like to play?",gameOptionList); switch(input.toLowerCase()){ diff --git a/src/main/java/io/zipcoder/casino/Console/Console.java b/src/main/java/io/zipcoder/casino/Console/Console.java index 749389a1..6d3d78dd 100644 --- a/src/main/java/io/zipcoder/casino/Console/Console.java +++ b/src/main/java/io/zipcoder/casino/Console/Console.java @@ -33,17 +33,6 @@ public static void print(String prompt){ } - public static String getValidString(String prompt,String... validInputs){ - String input; - while(true){ - input = getString(prompt); - if (Arrays.asList(validInputs).contains(input)){ - return input; - } - print("Invalid input"); - } - } - @Override public boolean contains(Object object){ String string = (String)object; @@ -55,4 +44,15 @@ public boolean contains(Object object){ return false; } + public static String getValidString(String prompt,String... validInputs){ + String input; + while(true){ + input = getString(prompt); + if (Arrays.asList(validInputs).contains(input)){ + return input; + } + print("Invalid input"); + } + } + } diff --git a/src/test/java/io/zipcoder/casino/CasinoTest.java b/src/test/java/io/zipcoder/casino/CasinoTest.java index e9286523..00bac028 100644 --- a/src/test/java/io/zipcoder/casino/CasinoTest.java +++ b/src/test/java/io/zipcoder/casino/CasinoTest.java @@ -1,5 +1,11 @@ package io.zipcoder.casino; +import io.zipcoder.casino.Deck.Card; +import org.junit.Test; + public class CasinoTest { + + + } diff --git a/src/test/java/io/zipcoder/casino/Deck/DeckTest.java b/src/test/java/io/zipcoder/casino/Deck/DeckTest.java index 7bf5733b..2c6b08ce 100644 --- a/src/test/java/io/zipcoder/casino/Deck/DeckTest.java +++ b/src/test/java/io/zipcoder/casino/Deck/DeckTest.java @@ -1,5 +1,7 @@ package io.zipcoder.casino.Deck; +import io.zipcoder.casino.Blackjack; +import io.zipcoder.casino.Player; import org.junit.Assert; import org.junit.Test; @@ -45,4 +47,14 @@ public void shuffle() { Assert.assertFalse(expected == actual); } + @Test + public void goFistValueTest(){ + Player testPlayer = new Player("wes",21,1000); + Blackjack testGame = new Blackjack(testPlayer); + testGame.deal(testGame.getPlayer(),testGame.getDealer(),5); + for(Card card:testGame.getPlayer().getHand()){ + System.out.println(card.getGoFishValue()); + } + } + } \ No newline at end of file From b93a700867862d291cf9aac6572cd929baa8efcf Mon Sep 17 00:00:00 2001 From: graham Date: Tue, 21 Nov 2017 16:31:11 -0500 Subject: [PATCH 42/44] FUUUUCK --- src/main/java/io/zipcoder/casino/GoFish.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/GoFish.java b/src/main/java/io/zipcoder/casino/GoFish.java index db9dbc7c..11830d3d 100644 --- a/src/main/java/io/zipcoder/casino/GoFish.java +++ b/src/main/java/io/zipcoder/casino/GoFish.java @@ -19,21 +19,23 @@ public GoFish(Player player) { } public void goFishStart() { - deal(player, dealer, 7); deck.shuffle(); + deal(player, dealer, 7); + Console.print("Welcome to GoFish " + player.name + "!"); boolean playing = true; while (playing) { playerTurn(); dealerTurn(); playing = checkForWin(); } - + gameOptions(); } private boolean checkForWin() { if (deck.getAllCards().size() == 0) { compareBooks(); return false; + } return true; } @@ -68,7 +70,7 @@ private void dealerTurn() { checkForBooks(dealer); Console.print("Opponent looking for card..."); Card dealerCard = dealerFindCard(); - Console.print("Do you have any: " + dealerCard.getGoFishValue() + " ?"); + Console.print("Do you have any: " + dealerCard.getGoFishValue() + "'S ?"); if (isCardInHand(dealerCard.getGoFishValue(), player.getHand())) { swapCard(player, dealer, dealerCard.getGoFishValue()); } else { @@ -81,7 +83,7 @@ private void dealerTurn() { private Card dealerFindCard() { Random r = new Random(); - int x = r.nextInt(dealer.getHand().size() + 1); + int x = r.nextInt(dealer.getHand().size() - 1); return dealer.getHand().get(x); } From c435a6c22af6960d7d94085f8f9d42cf91f8e999 Mon Sep 17 00:00:00 2001 From: wesley Date: Tue, 21 Nov 2017 16:48:10 -0500 Subject: [PATCH 43/44] saving --- src/main/java/io/zipcoder/casino/Casino.java | 2 +- src/main/java/io/zipcoder/casino/Console/Console.java | 2 +- src/main/java/io/zipcoder/casino/Main.java | 6 ++---- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/main/java/io/zipcoder/casino/Casino.java b/src/main/java/io/zipcoder/casino/Casino.java index 5fa93c13..68cfbf72 100644 --- a/src/main/java/io/zipcoder/casino/Casino.java +++ b/src/main/java/io/zipcoder/casino/Casino.java @@ -31,7 +31,7 @@ public void gameOptions(){ new Blackjack(casinoplayer).start(); break; case "go fish": - // go fish start + new GoFish(casinoplayer).goFishStart(); break; case "craps": validAge(); diff --git a/src/main/java/io/zipcoder/casino/Console/Console.java b/src/main/java/io/zipcoder/casino/Console/Console.java index 6d3d78dd..bc8f4095 100644 --- a/src/main/java/io/zipcoder/casino/Console/Console.java +++ b/src/main/java/io/zipcoder/casino/Console/Console.java @@ -11,11 +11,11 @@ public static String getString(String prompt) { Scanner input = new Scanner(System.in); System.out.println(prompt); String userinput = input.nextLine(); + input.close(); return userinput; } public static double getDouble(String prompt) { - do { try { Scanner input = new Scanner(System.in); diff --git a/src/main/java/io/zipcoder/casino/Main.java b/src/main/java/io/zipcoder/casino/Main.java index 499a0144..dd1adf91 100644 --- a/src/main/java/io/zipcoder/casino/Main.java +++ b/src/main/java/io/zipcoder/casino/Main.java @@ -2,9 +2,7 @@ public class Main { public static void main(String[] args) { -// new Casino().startCasino(); - Player player = new Player("Graham", 3000, 5); - GoFish test = new GoFish(player); - test.goFishStart(); + new Casino().startCasino(); + } } From f5e12c21acdc3cf778043e542b3f34463f6aa040 Mon Sep 17 00:00:00 2001 From: wesley Date: Tue, 21 Nov 2017 16:53:55 -0500 Subject: [PATCH 44/44] fixing zach fuck up --- src/main/java/io/zipcoder/casino/Console/Console.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/io/zipcoder/casino/Console/Console.java b/src/main/java/io/zipcoder/casino/Console/Console.java index bc8f4095..fddc4e12 100644 --- a/src/main/java/io/zipcoder/casino/Console/Console.java +++ b/src/main/java/io/zipcoder/casino/Console/Console.java @@ -11,7 +11,6 @@ public static String getString(String prompt) { Scanner input = new Scanner(System.in); System.out.println(prompt); String userinput = input.nextLine(); - input.close(); return userinput; }