diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 9fb2a36..2c3e956 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -3,11 +3,10 @@ - - - + + @@ -36,8 +35,8 @@ - - + + @@ -45,8 +44,12 @@ - - + + + + + + @@ -63,8 +66,17 @@ - - + + + + + + + + + + + @@ -72,7 +84,7 @@ - + @@ -85,8 +97,8 @@ - - + + @@ -155,14 +167,14 @@ @@ -200,7 +212,7 @@ - + @@ -388,7 +400,14 @@ @@ -407,7 +426,7 @@ - + @@ -417,7 +436,7 @@ - + @@ -449,7 +468,8 @@ - @@ -459,13 +479,6 @@ - - - - - - - @@ -476,16 +489,9 @@ - - - - - - - - + @@ -494,17 +500,24 @@ - + - - + + + + + + + + + - - + + @@ -515,10 +528,21 @@ + + + + + + + + + + + - - + + diff --git a/src/Player.java b/src/Player.java index 853fad2..d1deca3 100644 --- a/src/Player.java +++ b/src/Player.java @@ -2,15 +2,16 @@ public class Player { private String name = "Taipan"; private int bank = 0; - private int money = 1000000000; + private int money = 0; private int opiumHeld = 0; private int silkHeld = 0; private int generalHeld = 0; private int armsHeld = 0; private int location = 1; - private int guns = 3; + private int guns = 0; private int HP = 100; private int debt = 0; + private boolean retire = false; public Player(){ @@ -29,6 +30,16 @@ public class Player { this.debt = player.debt; } + public boolean getRetire(){ + return retire; + } + + public void setRetire(boolean retire){ + if(retire){ + this.retire = retire; + } + } + public String getName() { return name; } diff --git a/src/Start.java b/src/Start.java index 2d0c1b7..e9c940f 100644 --- a/src/Start.java +++ b/src/Start.java @@ -21,17 +21,18 @@ public class Start public void intialize() { Scanner userInput = new Scanner(System.in); - System.out.println("Taipan, \nWhat will you name your \nFirm: "); + System.out.println("Taipan, \nWhat will you name your firm:"); setFirm(userInput.nextLine()); - System.out.println("Do you want to start . . .\n1) With cash (and a debt)\n>> or <<\n" + - "With five guns and no cash (But no debt!)\n? "); - if (userInput.nextInt() == 1) + System.out.println("Do you want to start . . .\n\t1) With cash (and a debt)\n\t\t\t>> or <<\n\t" + + "2) With five guns and no cash (But no debt!)?\n "); + int input = userInput.nextInt(); + if (input == 1) { player.setMoney(400); player.setDebt(5000); } - if (userInput.nextInt() == 2) + if (input == 2) { player.setGuns(5); } diff --git a/src/TaipanShop.java b/src/TaipanShop.java index b02cb72..53ca3d8 100644 --- a/src/TaipanShop.java +++ b/src/TaipanShop.java @@ -10,6 +10,11 @@ public class TaipanShop { private int armsPrice = 160; private int generalPrice = 8; + public void retire(){ + player.setRetire(true); + System.out.println("You win!"); + } + public void setPlayer(Player player) { Player playerDummy = new Player(player); this.player = playerDummy; @@ -75,6 +80,12 @@ public class TaipanShop { } } + public void travel(){ + Travel travel = new Travel(player); + travel.travelTo(); + player = travel.getPlayer(); + } + private void updatePrices(){ String s = "\n" + player.getName() + ", the price of "; double value = 80*Math.random(); @@ -137,293 +148,450 @@ public class TaipanShop { System.out.println(" Arms: " + armsPrice + " General: " + generalPrice); } + public void atLocationOne(boolean notDone, Scanner input){ + while(notDone){ + printShop(); + System.out.println("\nShall I Buy, Sell, Visit Bank, Transfer Cargo, or Quit Trading?"); + String response = input.next(); + if (response.equalsIgnoreCase("B")) { + boolean notDone2 = true; + System.out.println("What do you wish me to buy, " + player.getName() + "?"); + while (notDone2) { + response = input.nextLine(); + if (response.equalsIgnoreCase("O")) { + System.out.println("\nHow much Opium shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / opiumPrice + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getMoney() / opiumPrice && num >= 0) { + player.setOpiumHeld(player.getOpiumHeld()+num); + player.setMoney(player.getMoney()-num * opiumPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you can't afford that!"); + } else { + System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Opium?"); + } + } + } else if (response.equalsIgnoreCase("S")) { + System.out.println("\nHow much Silk shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / silkPrice + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getMoney() / silkPrice && num >= 0) { + player.setSilkHeld(player.getSilkHeld()+num); + player.setMoney(player.getMoney()-num * silkPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you can't afford that!"); + } else { + System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Silk?"); + } + } + } else if (response.equalsIgnoreCase("A")) { + System.out.println("\nHow many Arms shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / armsPrice + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getMoney() / armsPrice && num >= 0) { + player.setArmsHeld(player.getArmsHeld()+num); + player.setMoney(player.getMoney() - num*armsPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you can't afford that!"); + } else { + System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Arms?"); + } + } + } else if (response.equalsIgnoreCase("G")) { + System.out.println("\nHow much General Cargo shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / generalPrice + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getMoney() / generalPrice && num >= 0) { + player.setGeneralHeld(player.getGeneralHeld()+num); + player.setMoney(player.getMoney() - num*generalPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you can't afford that!"); + } else { + System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " General Cargo?"); + } + } + } + + } + + } else if (response.equalsIgnoreCase("S")) { + boolean notDone2 = true; + System.out.println("What do you wish me to sell, " + player.getName() + "?"); + while (notDone2) { + response = input.nextLine(); + if (response.equalsIgnoreCase("O")) { + System.out.println("\nHow much Opium shall I sell, " + player.getName() + "? (You have " + player.getOpiumHeld() + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getOpiumHeld() && num >= 0) { + player.setOpiumHeld(player.getOpiumHeld()-num); + player.setMoney(player.getMoney() + num*opiumPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you don't have that many to sell!"); + } else { + System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Opium?"); + } + } + } else if (response.equalsIgnoreCase("S")) { + System.out.println("\nHow much Silk shall I sell, " + player.getName() + "? (You have " + player.getSilkHeld() + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getSilkHeld() && num >= 0) { + player.setSilkHeld(player.getSilkHeld()-num); + player.setMoney(player.getMoney() + num*silkPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you don't have that many to sell!"); + } else { + System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Silk?"); + } + } + } else if (response.equalsIgnoreCase("A")) { + System.out.println("\nHow many Arms shall I sell, " + player.getName() + "? (You have " + player.getArmsHeld() + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getArmsHeld() && num >= 0) { + player.setArmsHeld(player.getArmsHeld()-num); + player.setMoney(player.getMoney() + num*armsPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you don't have that many to sell!"); + } else { + System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Arms?"); + } + } + } else if (response.equalsIgnoreCase("G")) { + System.out.println("\nHow much General Cargo shall I sell, " + player.getName() + "? (You have " + player.getGeneralHeld() + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getGeneralHeld() && num >= 0) { + player.setGeneralHeld(player.getGeneralHeld()-num); + player.setMoney(player.getMoney() + num*generalPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you don't have that many to sell!"); + } else { + System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " General Cargo?"); + } + } + } + + } + + } else if (response.equalsIgnoreCase("V")) { + System.out.println("\n*** PLACEHOLDER FOR BANK ***\n"); + } else if (response.equalsIgnoreCase("T")) { + System.out.println("\n*** PLACEHOLDER FOR WAREHOUSE ***\n"); + } else if (response.equalsIgnoreCase("Q")) { + travel(); + notDone = false; + } + } + } + + public void notAtLocationOne(boolean notDone, Scanner input){ + while(notDone){ + printShop(); + System.out.println("\nShall I Buy, Sell, or Quit Trading?"); + String response = input.next(); + if (response.equalsIgnoreCase("B")) { + boolean notDone2 = true; + System.out.println("What do you wish me to buy, " + player.getName() + "?"); + while (notDone2) { + response = input.nextLine(); + if (response.equalsIgnoreCase("O")) { + System.out.println("\nHow much Opium shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / opiumPrice + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getMoney() / opiumPrice && num >= 0) { + player.setOpiumHeld(player.getOpiumHeld()+num); + player.setMoney(player.getMoney() - num*opiumPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you can't afford that!"); + } else { + System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Opium?"); + } + } + } else if (response.equalsIgnoreCase("S")) { + System.out.println("\nHow much Silk shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / silkPrice + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getMoney() / silkPrice && num >= 0) { + player.setSilkHeld(player.getSilkHeld()+num); + player.setMoney(player.getMoney() - num*silkPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you can't afford that!"); + } else { + System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Silk?"); + } + } + } else if (response.equalsIgnoreCase("A")) { + System.out.println("\nHow many Arms shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / armsPrice + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getMoney() / armsPrice && num >= 0) { + player.setArmsHeld(player.getArmsHeld()+num); + player.setMoney(player.getMoney() - num*armsPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you can't afford that!"); + } else { + System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Arms?"); + } + } + } else if (response.equalsIgnoreCase("G")) { + System.out.println("\nHow much General Cargo shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / generalPrice + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getMoney() / generalPrice && num >= 0) { + player.setGeneralHeld(player.getGeneralHeld()+num); + player.setMoney(player.getMoney() - num*generalPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you can't afford that!"); + } else { + System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " General Cargo?"); + } + } + } + + } + + } else if (response.equalsIgnoreCase("S")) { + boolean notDone2 = true; + System.out.println("What do you wish me to sell, " + player.getName() + "?"); + while (notDone2) { + response = input.nextLine(); + if (response.equalsIgnoreCase("O")) { + System.out.println("\nHow much Opium shall I sell, " + player.getName() + "? (You have " + player.getOpiumHeld() + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getOpiumHeld() && num >= 0) { + player.setOpiumHeld(player.getOpiumHeld()-num); + player.setMoney(player.getMoney() + num*opiumPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you don't have that many to sell!"); + } else { + System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Opium?"); + } + } + } else if (response.equalsIgnoreCase("S")) { + System.out.println("\nHow much Silk shall I sell, " + player.getName() + "? (You have " + player.getSilkHeld() + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getSilkHeld() && num >= 0) { + player.setSilkHeld(player.getSilkHeld()-num); + player.setMoney(player.getMoney() + num*silkPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you don't have that many to sell!"); + } else { + System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Silk?"); + } + } + } else if (response.equalsIgnoreCase("A")) { + System.out.println("\nHow many Arms shall I sell, " + player.getName() + "? (You have " + player.getArmsHeld() + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getArmsHeld() && num >= 0) { + player.setArmsHeld(player.getArmsHeld()-num); + player.setMoney(player.getMoney() + num*armsPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you don't have that many to sell!"); + } else { + System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Arms?"); + } + } + } else if (response.equalsIgnoreCase("G")) { + System.out.println("\nHow much General Cargo shall I sell, " + player.getName() + "? (You have " + player.getGeneralHeld() + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getGeneralHeld() && num >= 0) { + player.setGeneralHeld(player.getGeneralHeld()-num); + player.setMoney(player.getMoney() + num*generalPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you don't have that many to sell!"); + } else { + System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " General Cargo?"); + } + } + } + } + } else if (response.equalsIgnoreCase("Q")) { + travel(); + notDone = false; + } + } + } + + public void retireAndLocationOne(boolean notDone, Scanner input){ + while(notDone){ + printShop(); + System.out.println("\nShall I Buy, Sell, Visit Bank, Transfer Cargo, Retire, or Quit Trading?"); + String response = input.next(); + if (response.equalsIgnoreCase("B")) { + boolean notDone2 = true; + System.out.println("What do you wish me to buy, " + player.getName() + "?"); + while (notDone2) { + response = input.nextLine(); + if (response.equalsIgnoreCase("O")) { + System.out.println("\nHow much Opium shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / opiumPrice + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getMoney() / opiumPrice && num >= 0) { + player.setOpiumHeld(player.getOpiumHeld()+num); + player.setMoney(player.getMoney()-num * opiumPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you can't afford that!"); + } else { + System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Opium?"); + } + } + } else if (response.equalsIgnoreCase("S")) { + System.out.println("\nHow much Silk shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / silkPrice + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getMoney() / silkPrice && num >= 0) { + player.setSilkHeld(player.getSilkHeld()+num); + player.setMoney(player.getMoney()-num * silkPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you can't afford that!"); + } else { + System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Silk?"); + } + } + } else if (response.equalsIgnoreCase("A")) { + System.out.println("\nHow many Arms shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / armsPrice + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getMoney() / armsPrice && num >= 0) { + player.setArmsHeld(player.getArmsHeld()+num); + player.setMoney(player.getMoney() - num*armsPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you can't afford that!"); + } else { + System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Arms?"); + } + } + } else if (response.equalsIgnoreCase("G")) { + System.out.println("\nHow much General Cargo shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / generalPrice + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getMoney() / generalPrice && num >= 0) { + player.setGeneralHeld(player.getGeneralHeld()+num); + player.setMoney(player.getMoney() - num*generalPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you can't afford that!"); + } else { + System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " General Cargo?"); + } + } + } + } + + } else if (response.equalsIgnoreCase("S")) { + boolean notDone2 = true; + System.out.println("What do you wish me to sell, " + player.getName() + "?"); + while (notDone2) { + response = input.nextLine(); + if (response.equalsIgnoreCase("O")) { + System.out.println("\nHow much Opium shall I sell, " + player.getName() + "? (You have " + player.getOpiumHeld() + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getOpiumHeld() && num >= 0) { + player.setOpiumHeld(player.getOpiumHeld()-num); + player.setMoney(player.getMoney() + num*opiumPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you don't have that many to sell!"); + } else { + System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Opium?"); + } + } + } else if (response.equalsIgnoreCase("S")) { + System.out.println("\nHow much Silk shall I sell, " + player.getName() + "? (You have " + player.getSilkHeld() + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getSilkHeld() && num >= 0) { + player.setSilkHeld(player.getSilkHeld()-num); + player.setMoney(player.getMoney() + num*silkPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you don't have that many to sell!"); + } else { + System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Silk?"); + } + } + } else if (response.equalsIgnoreCase("A")) { + System.out.println("\nHow many Arms shall I sell, " + player.getName() + "? (You have " + player.getArmsHeld() + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getArmsHeld() && num >= 0) { + player.setArmsHeld(player.getArmsHeld()-num); + player.setMoney(player.getMoney() + num*armsPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you don't have that many to sell!"); + } else { + System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Arms?"); + } + } + } else if (response.equalsIgnoreCase("G")) { + System.out.println("\nHow much General Cargo shall I sell, " + player.getName() + "? (You have " + player.getGeneralHeld() + ")"); + while (notDone2) { + int num = input.nextInt(); + if (num <= player.getGeneralHeld() && num >= 0) { + player.setGeneralHeld(player.getGeneralHeld()-num); + player.setMoney(player.getMoney() + num*generalPrice); + notDone2 = false; + } else if (num >= 0) { + System.out.println(player.getName() + ", you don't have that many to sell!"); + } else { + System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " General Cargo?"); + } + } + } + + } + + } else if (response.equalsIgnoreCase("V")) { + System.out.println("\n*** PLACEHOLDER FOR BANK ***\n"); + } else if (response.equalsIgnoreCase("T")) { + System.out.println("\n*** PLACEHOLDER FOR WAREHOUSE ***\n"); + } else if (response.equalsIgnoreCase("Q")) { + travel(); + notDone = false; + } else if (response.equalsIgnoreCase("R")) { + retire(); + notDone = false; + } + } + } + public void shop() { updatePrices(); Scanner input = new Scanner(System.in); boolean notDone = true; - if (player.getLocation() == 1) { - while (notDone) { - printShop(); - System.out.println("\nShall I Buy, Sell, Visit Bank, Transfer Cargo, or Quit Trading?"); - String response = input.next(); - if (response.equalsIgnoreCase("B")) { - boolean notDone2 = true; - System.out.println("What do you wish me to buy, " + player.getName() + "?"); - while (notDone2) { - response = input.nextLine(); - if (response.equalsIgnoreCase("O")) { - System.out.println("\nHow much Opium shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / opiumPrice + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getMoney() / opiumPrice && num >= 0) { - player.setOpiumHeld(player.getOpiumHeld()+num); - player.setMoney(player.getMoney()-num * opiumPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you can't afford that!"); - } else { - System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Opium?"); - } - } - } else if (response.equalsIgnoreCase("S")) { - System.out.println("\nHow much Silk shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / silkPrice + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getMoney() / silkPrice && num >= 0) { - player.setSilkHeld(player.getSilkHeld()+num); - player.setMoney(player.getMoney()-num * silkPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you can't afford that!"); - } else { - System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Silk?"); - } - } - } else if (response.equalsIgnoreCase("A")) { - System.out.println("\nHow many Arms shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / armsPrice + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getMoney() / armsPrice && num >= 0) { - player.setArmsHeld(player.getArmsHeld()+num); - player.setMoney(player.getMoney() - num*armsPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you can't afford that!"); - } else { - System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Arms?"); - } - } - } else if (response.equalsIgnoreCase("G")) { - System.out.println("\nHow much General Cargo shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / generalPrice + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getMoney() / generalPrice && num >= 0) { - player.setGeneralHeld(player.getGeneralHeld()+num); - player.setMoney(player.getMoney() - num*generalPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you can't afford that!"); - } else { - System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " General Cargo?"); - } - } - } - - } - - } else if (response.equalsIgnoreCase("S")) { - boolean notDone2 = true; - System.out.println("What do you wish me to sell, " + player.getName() + "?"); - while (notDone2) { - response = input.nextLine(); - if (response.equalsIgnoreCase("O")) { - System.out.println("\nHow much Opium shall I sell, " + player.getName() + "? (You have " + player.getOpiumHeld() + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getOpiumHeld() && num >= 0) { - player.setOpiumHeld(player.getOpiumHeld()-num); - player.setMoney(player.getMoney() + num*opiumPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you don't have that many to sell!"); - } else { - System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Opium?"); - } - } - } else if (response.equalsIgnoreCase("S")) { - System.out.println("\nHow much Silk shall I sell, " + player.getName() + "? (You have " + player.getSilkHeld() + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getSilkHeld() && num >= 0) { - player.setSilkHeld(player.getSilkHeld()-num); - player.setMoney(player.getMoney() + num*silkPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you don't have that many to sell!"); - } else { - System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Silk?"); - } - } - } else if (response.equalsIgnoreCase("A")) { - System.out.println("\nHow many Arms shall I sell, " + player.getName() + "? (You have " + player.getArmsHeld() + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getArmsHeld() && num >= 0) { - player.setArmsHeld(player.getArmsHeld()-num); - player.setMoney(player.getMoney() + num*armsPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you don't have that many to sell!"); - } else { - System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Arms?"); - } - } - } else if (response.equalsIgnoreCase("G")) { - System.out.println("\nHow much General Cargo shall I sell, " + player.getName() + "? (You have " + player.getGeneralHeld() + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getGeneralHeld() && num >= 0) { - player.setGeneralHeld(player.getGeneralHeld()-num); - player.setMoney(player.getMoney() + num*generalPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you don't have that many to sell!"); - } else { - System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " General Cargo?"); - } - } - } - - } - - } else if (response.equalsIgnoreCase("V")) { - System.out.println("\n*** PLACEHOLDER FOR BANK ***\n"); - } else if (response.equalsIgnoreCase("T")) { - System.out.println("\n*** PLACEHOLDER FOR WAREHOUSE ***\n"); - } else if (response.equalsIgnoreCase("Q")) { - System.out.println("\n*** PLACEHOLDER FOR TRAVEL ***\n"); - notDone = false; - } - } - } else { - while (notDone) { - printShop(); - System.out.println("\nShall I Buy, Sell, or Quit Trading?"); - String response = input.next(); - if (response.equalsIgnoreCase("B")) { - boolean notDone2 = true; - System.out.println("What do you wish me to buy, " + player.getName() + "?"); - while (notDone2) { - response = input.nextLine(); - if (response.equalsIgnoreCase("O")) { - System.out.println("\nHow much Opium shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / opiumPrice + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getMoney() / opiumPrice && num >= 0) { - player.setOpiumHeld(player.getOpiumHeld()+num); - player.setMoney(player.getMoney() - num*opiumPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you can't afford that!"); - } else { - System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Opium?"); - } - } - } else if (response.equalsIgnoreCase("S")) { - System.out.println("\nHow much Silk shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / silkPrice + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getMoney() / silkPrice && num >= 0) { - player.setSilkHeld(player.getSilkHeld()+num); - player.setMoney(player.getMoney() - num*silkPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you can't afford that!"); - } else { - System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Silk?"); - } - } - } else if (response.equalsIgnoreCase("A")) { - System.out.println("\nHow many Arms shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / armsPrice + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getMoney() / armsPrice && num >= 0) { - player.setArmsHeld(player.getArmsHeld()+num); - player.setMoney(player.getMoney() - num*armsPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you can't afford that!"); - } else { - System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " Arms?"); - } - } - } else if (response.equalsIgnoreCase("G")) { - System.out.println("\nHow much General Cargo shall I buy, " + player.getName() + "? (You can afford " + player.getMoney() / generalPrice + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getMoney() / generalPrice && num >= 0) { - player.setGeneralHeld(player.getGeneralHeld()+num); - player.setMoney(player.getMoney() - num*generalPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you can't afford that!"); - } else { - System.out.println(player.getName() + ", how am I supposed to buy " + "'" + num + "'" + " General Cargo?"); - } - } - } - - } - - } else if (response.equalsIgnoreCase("S")) { - boolean notDone2 = true; - System.out.println("What do you wish me to sell, " + player.getName() + "?"); - while (notDone2) { - response = input.nextLine(); - if (response.equalsIgnoreCase("O")) { - System.out.println("\nHow much Opium shall I sell, " + player.getName() + "? (You have " + player.getOpiumHeld() + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getOpiumHeld() && num >= 0) { - player.setOpiumHeld(player.getOpiumHeld()-num); - player.setMoney(player.getMoney() + num*opiumPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you don't have that many to sell!"); - } else { - System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Opium?"); - } - } - } else if (response.equalsIgnoreCase("S")) { - System.out.println("\nHow much Silk shall I sell, " + player.getName() + "? (You have " + player.getSilkHeld() + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getSilkHeld() && num >= 0) { - player.setSilkHeld(player.getSilkHeld()-num); - player.setMoney(player.getMoney() + num*silkPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you don't have that many to sell!"); - } else { - System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Silk?"); - } - } - } else if (response.equalsIgnoreCase("A")) { - System.out.println("\nHow many Arms shall I sell, " + player.getName() + "? (You have " + player.getArmsHeld() + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getArmsHeld() && num >= 0) { - player.setArmsHeld(player.getArmsHeld()-num); - player.setMoney(player.getMoney() + num*armsPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you don't have that many to sell!"); - } else { - System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " Arms?"); - } - } - } else if (response.equalsIgnoreCase("G")) { - System.out.println("\nHow much General Cargo shall I sell, " + player.getName() + "? (You have " + player.getGeneralHeld() + ")"); - while (notDone2) { - int num = input.nextInt(); - if (num <= player.getGeneralHeld() && num >= 0) { - player.setGeneralHeld(player.getGeneralHeld()-num); - player.setMoney(player.getMoney() + num*generalPrice); - notDone2 = false; - } else if (num >= 0) { - System.out.println(player.getName() + ", you don't have that many to sell!"); - } else { - System.out.println(player.getName() + ", how am I supposed to sell " + "'" + num + "'" + " General Cargo?"); - } - } - } - } - } else if (response.equalsIgnoreCase("Q")) { - System.out.println("\n*** PLACEHOLDER FOR TRAVEL ***\n"); - notDone = false; - } - } - + if (player.getLocation() == 1 && player.getBank()+player.getMoney()-player.getDebt() < 1000000) { + atLocationOne(notDone, input); + }else if(player.getLocation() != 1) { + notAtLocationOne(notDone, input); + }else{ + retireAndLocationOne(notDone, input); } } } diff --git a/src/Travel.java b/src/Travel.java index 62a1dbd..a98cacc 100644 --- a/src/Travel.java +++ b/src/Travel.java @@ -5,7 +5,7 @@ public class Travel { private Player player; - public void Player(Player player) { + public void setPlayer(Player player) { Player playerDummy = new Player(player); this.player = playerDummy; } @@ -54,11 +54,10 @@ public class Travel { } private void randomEventSea(int locationOfTravel) throws Exception { - ShipWarfare attackShip = new ShipWarfare(player); Random rand = new Random(); int randGenNum = rand.nextInt(3) + 1; if (randGenNum == 1) { - attackShip.peasantFleetAttack(); + peasantFleet(); } else if (randGenNum == 2) { disaster(locationOfTravel); } @@ -83,6 +82,12 @@ public class Travel { } } + public void peasantFleet() throws Exception { + ShipWarfare attackShip = new ShipWarfare(player); + attackShip.peasantFleetAttack(); + player = attackShip.getPlayer(); + } + public void travelTo() { Scanner keyboard = new Scanner(System.in); String response; diff --git a/src/main.java b/src/main.java index 7c6394d..a0c4684 100644 --- a/src/main.java +++ b/src/main.java @@ -25,23 +25,20 @@ public class main { player = warehouse.getPlayer(); } - public void peasantFleet(ShipWarfare warfare) throws Exception { - warfare.setPlayer(player); - warfare.peasantFleetAttack(); - player = warfare.getPlayer(); + public void bank(Bank bank){ + bank.setPlayer(player); + //warehouse.intialize(); + player = bank.getPlayer(); } public static void main(String[] args) throws Exception { main main = new main(); - ShipWarfare littyWarfare = new ShipWarfare(main.getPlayer()); TaipanShop littyShop = new TaipanShop(main.getPlayer()); Start start = new Start(main.getPlayer()); - - main.shop(littyShop); - - main.peasantFleet(littyWarfare); - - main.shop(littyShop); + main.start(start); + while(!main.getPlayer().getRetire()){ + main.shop(littyShop); + } } }