From ba7e3cbaf839ebd44c3cb925ffd5fece45fddceb Mon Sep 17 00:00:00 2001 From: MJFracess Date: Mon, 23 Oct 2023 14:53:56 -0700 Subject: [PATCH 1/2] Lab 005 completed with your help. --- .idea/misc.xml | 2 +- src/Dice.java | 25 +++++++++++++++++++++++++ src/Game.java | 41 +++++++++++++++++++++++++++++++++++++++++ src/Player.java | 28 ++++++++++++++++++++++++++++ 4 files changed, 95 insertions(+), 1 deletion(-) create mode 100644 src/Dice.java create mode 100644 src/Player.java diff --git a/.idea/misc.xml b/.idea/misc.xml index 78381ea..5d8a5b8 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/src/Dice.java b/src/Dice.java new file mode 100644 index 0000000..56f7b1d --- /dev/null +++ b/src/Dice.java @@ -0,0 +1,25 @@ +import java.util.Random; +/** + * @author Trevor Hartman + * @author MJ Fracess + * + * @since Version 1.0 + */ +public class Dice { + private int sideFacingUp; + private int sides; + private Random randomGenerator; + + // Constructor + public Dice(int sides) { + this.sides = sides; // this is a keyword for "this" object that's being created. + this.randomGenerator = new Random(); + } + public void roll(){ + this.sideFacingUp = this.randomGenerator.nextInt(sides) + 1; + } + public int view(){ + return this.sideFacingUp; + } + +} diff --git a/src/Game.java b/src/Game.java index f4a3a3c..6945070 100644 --- a/src/Game.java +++ b/src/Game.java @@ -1,14 +1,38 @@ + import java.util.Scanner; +/** + * @author Trevor Hartman + * @author MJ Fracess + * + * @since Version 1.0 + */ public class Game { Player p1; Player p2; Dice die; + //Constructor + public Game(Player p1, Player p2, Dice die){ + this.p1 = p1; + this.p2 = p2; + this.die = die; + + } + public void play() { + Player current = this.p1; + takeTurn(current); + current = nextPlayer(current); + takeTurn(current); + System.out.println("and the WINNER is:" + announceWinner()); } public Player nextPlayer(Player current) { + if(current.getName().equals(this.p1.getName())){ + return this.p2; + } + return this.p1; } public void takeTurn(Player player) { @@ -16,8 +40,25 @@ public void takeTurn(Player player) { } public String announceWinner() { + System.out.printf("Player:%s, %d%n", this.p1.getName(), this.p1.getScore()); + System.out.printf("Player:%s, %d%n", this.p2.getName(), this.p2.getScore()); + if(p1.getScore()> p2.getScore()) { + return p1.getName(); + }else if(p2.getScore()> p1.getScore()) { + return p2.getName(); + } + return "TIE"; } public static void main(String[] args) { + Scanner s = new Scanner(System.in); + System.out.print ("Please enter the number of sides:"); + int sides = Integer.parseInt(s.nextLine()); + Player p1 = new Player("MJ"); + Player p2 = new Player("Mike"); + Dice die = new Dice(sides); + + Game game = new Game(p1, p2, die); + game.play(); } } diff --git a/src/Player.java b/src/Player.java new file mode 100644 index 0000000..b17effb --- /dev/null +++ b/src/Player.java @@ -0,0 +1,28 @@ +/** + * @author Trevor Hartman + * @author MJ Fracess + * + * @since Version 1.0 + */ + +public class Player { + private String name; + private int score; + + //Constructor + public Player(String name) { + this.name = name; + this.score = 0; + } + public String getName(){ + return name; + } + public int getScore() { + return score; + } + public void toss(Dice die) { + die.roll(); + this.score = die.view(); + } +} + From ae8901af87830d7770f6e12c8c9a04831ef51984 Mon Sep 17 00:00:00 2001 From: MJFracess Date: Mon, 23 Oct 2023 15:00:21 -0700 Subject: [PATCH 2/2] Lab 005 completed with your help. --- src/Game.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Game.java b/src/Game.java index 6945070..f250e79 100644 --- a/src/Game.java +++ b/src/Game.java @@ -1,6 +1,5 @@ import java.util.Scanner; - /** * @author Trevor Hartman * @author MJ Fracess