Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1,287 changes: 1,287 additions & 0 deletions .idea/workspace.xml

Large diffs are not rendered by default.

37 changes: 16 additions & 21 deletions Minigames.iml
Original file line number Diff line number Diff line change
Expand Up @@ -9,26 +9,21 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module-library" scope="TEST">
<library name="JUnit4">
<CLASSES>
<root url="jar://$APPLICATION_HOME_DIR$/lib/junit-4.11.jar!/" />
<root url="jar://$APPLICATION_HOME_DIR$/lib/hamcrest-core-1.3.jar!/" />
<root url="jar://$APPLICATION_HOME_DIR$/lib/hamcrest-library-1.3.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" scope="TEST">
<library name="JUnit4">
<CLASSES>
<root url="jar://$APPLICATION_HOME_DIR$/lib/junit-4.12.jar!/" />
<root url="jar://$APPLICATION_HOME_DIR$/lib/hamcrest-core-1.3.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>

<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.5" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.9" level="project" />
<orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.10" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.9.4" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.9.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.9.4" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.5" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.9" level="project" />
<orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.10" level="project" />
<orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" />

</component>
</module>
50 changes: 50 additions & 0 deletions src/main/java/org/vashonsd/Games/NA/Hand.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
package org.vashonsd.Games.NA;

import org.vashonsd.Utils.Cards.Card;




public class Hand {

Card lowCard;
Card highCard;

public Hand() {


}

/**
* Takes two cards and assigns one to be the lowCard and one to be the highCard.
*
* Hint: We can get the number of the card by calling card.getRank();
*
* @param card1
* @param card2
*/

public void takeCards(Card card1, Card card2) {

if( card1.getCardNumber() < card2.getCardNumber() ) {
lowCard = card1;
highCard = card2;
} else {
lowCard = card2;
highCard = card1;
}
int lc = lowCard.getCardNumber();
int hc = highCard.getCardNumber();

if (lc == hc) {
// draw one more card
} else if (lc+1 == hc) {
// draw one more card.
}
}

@Override
public String toString() {
return "lowCard = " + lowCard + ", highCard = " + highCard;
}
}
75 changes: 72 additions & 3 deletions src/main/java/org/vashonsd/Games/NA/NabilGame.java
Original file line number Diff line number Diff line change
@@ -1,13 +1,82 @@
package org.vashonsd.Games.NA;

import org.vashonsd.Utils.Placeholder;
import org.vashonsd.Utils.Cards.Card;
import org.vashonsd.Utils.Cards.Deck;
import org.vashonsd.Utils.Minigame;
import org.vashonsd.Utils.Utils;

import java.util.Set;

/**
* Created by andy on 5/2/18.
*/
public class NabilGame extends Placeholder {
public class NabilGame extends Minigame {

private Player user;
private Deck gamedeck;
private Card card1;
private Card card2;

public NabilGame() {
super("Nabil");
super("Win", "A game in which you always win.", "quit");
user = new Player();
}


@Override
public String start() {
setUpGame();
return "Your hand is: " + user.printHand() + "\n" +
"Congratulations! You already have " + user.getMoney() + " How much would you like to bet?";
}

@Override
public String handle(String str) {
if (!Utils.IsInteger(str)) {
return "You must type a number.";
}
int bet = Integer.parseInt(str);
Card newCard = gamedeck.deal();

int newCardValue = newCard.getValue();

// System.out.println(user.printHand());
String result = "The card was " + newCard.toString() + ". ";
if (newCardValue < card1.getValue() || newCardValue > card2.getValue()) {
//Take money away from the user.
user.takeMoney(bet);
result += "Oh no, you lose!";
} else if (newCardValue == card1.getValue() || newCardValue == card2.getValue()) {
result += "Tie!";
} else {
user.addMoney(bet);
result += "Yeasss , you win!";
}
//Set up a new hand for the user.
setUpGame();

result += "\nYour new hand is: " + user.printHand();
result += "\nYou have " + user.getMoney() + " left. How much would you like to bet?";
return result;
}

private void setUpGame() {
gamedeck = new Deck();
gamedeck.shuffle();
card1 = gamedeck.deal();
card2 = gamedeck.deal();
if (card1.getRank() > card2.getRank()) {
Card tmp = card1;
card1 = card2;
card2 = tmp;
}
user.takeCards(card1, card2);
}


@Override
public String quit() {
return " Goodbye! Thanks for playing!";
}
}

43 changes: 43 additions & 0 deletions src/main/java/org/vashonsd/Games/NA/Player.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
package org.vashonsd.Games.NA;

import org.vashonsd.Utils.Cards.Card;

public class Player {

private String name;
int money;
Hand hand;

public Player() {
money = 500;
hand = new Hand();
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getMoney() {
return money;
}

public void addMoney(int howMuch) {
money = money + howMuch;
}

public void takeMoney(int howMuch) {
money = money - howMuch;
}

public void takeCards(Card card1, Card card2) {
hand.takeCards(card1, card2);
}

public String printHand() {
return hand.toString();
}
}
3 changes: 3 additions & 0 deletions src/main/java/org/vashonsd/Utils/Cards/Card.java
Original file line number Diff line number Diff line change
Expand Up @@ -163,4 +163,7 @@ public String toString()
}


public int getCardNumber() {
return rank;
}
}