public void quest() { while (getStage() < 5) { String input = new String(); // input = "This is the input var right now"; // System.out.println(input); Scanner sc = new Scanner(System.in); while (!input.equals("move")) { System.out.println("Make your next move!"); input = sc.nextLine(); } int randNum = (int) (Math.random() * 100); // System.out.println(randNum); Monster m = new Monster(); if (randNum <= 34) { m.koboldTemplate("I am kobold", 1); } else if (randNum <= 67) { m.spiderTemplate("I am spider", 1); } else { m.golemTemplate("I am golem", 1); } m.displayStats(); setStage(getStage() + 1); BaseChar b = new BaseChar(); // basechar should be set to either warrior or mage b.warriorTemplate( "I am warrior"); // this really shouldn't be here. This should be in the Driver and // user-selected b.displayStats(); Battle bat = new Battle(b, m); bat.charAttackMonster(b, m); bat.monsterAttackChar(m, b); } System.out.println("YOU WIN!!!"); }
public void move() { currRm.updateMap(); print("Instructions:"); print("u/U - Up"); print("d/D - Down"); print("l/L - Left"); print("r/R - Right"); print("s/save - Save your current info"); print("Stat - Displays your stats"); print("quit - Quits the game without saving"); System.out.println("Stage: " + getStage() + "/200"); boolean chosen; chosen = false; while (!chosen) { System.out.print(player.name() + "@stuyablo $ "); Scanner sc = new Scanner(System.in); String response = sc.next(); if (response.toUpperCase().equals("U")) { chosen = true; action("UP"); } else if (response.toUpperCase().equals("D")) { chosen = true; action("DOWN"); } else if (response.toUpperCase().equals("L")) { chosen = true; action("LEFT"); } else if (response.toUpperCase().equals("R")) { chosen = true; action("RIGHT"); } else if (response.toUpperCase().equals("S") || response.toUpperCase().equals("SAVE")) { try { FileOutputStream saveFile = new FileOutputStream("stuyablosave.txt"); ObjectOutputStream save = new ObjectOutputStream(saveFile); save.writeObject(player.name()); save.writeObject(player.level()); save.writeObject(player.experience()); save.writeObject(player.maxHealth()); save.writeObject(player.health()); save.writeObject(player.strength()); save.writeObject(player.speed()); save.writeObject(player.dexterity()); save.writeObject(super.stage); save.writeObject(player.type()); save.writeObject(currRm.room); save.writeObject(player.xcor()); save.writeObject(player.ycor()); save.close(); } catch (Exception e) { e.printStackTrace(); } } else if (response.toUpperCase().equals("STAT")) { System.out.println("Level: " + player.level); System.out.println("Experience: " + player.experience); player.displayStats(); } else if (response.toUpperCase().equals("QUIT")) { System.out.println("Exiting... "); System.exit(0); } else if (response.toUpperCase().equals("CLEAR")) { System.out.print("\033\143"); currRm.updateMap(); } else if (response.toUpperCase().equals("DEVMODE")) { if (devmd) { devmd = false; System.out.println("Devmode off"); } else { devmd = true; System.out.println("Devmode on"); } } else if (response.toUpperCase().equals("SETHEALTH") && devmd) { Scanner devconsole = new Scanner(System.in); System.out.print(" $ Value: "); try { player.setMaxHealth((int) (devconsole.nextInt())); player.setHealth(player.maxHealth()); } catch (Exception e) { System.out.println("Invalid value. Please use an int"); } } else if (response.toUpperCase().equals("SETSTRENGTH") && devmd) { Scanner devconsole = new Scanner(System.in); System.out.print(" $ Value: "); try { player.setStrength((int) (devconsole.nextInt())); } catch (Exception e) { System.out.println("Invalid value. Please use an int"); } } else if (response.toUpperCase().equals("SETSTAGE") && devmd) { Scanner devconsole = new Scanner(System.in); System.out.print(" $ Value: "); try { setStage((int) (devconsole.nextInt())); chosen = true; } catch (Exception e) { System.out.println("Invalid value. Please use an int"); } } else if (response.toUpperCase().equals("SETDEXTERITY") && devmd) { Scanner devconsole = new Scanner(System.in); System.out.print(" $ Value: "); try { player.setDexterity((int) (devconsole.nextInt())); } catch (Exception e) { System.out.println("Invalid value. Please use an int"); } } else if (response.toUpperCase().equals("SETSPEED") && devmd) { Scanner devconsole = new Scanner(System.in); System.out.print(" $ Value: "); try { player.setSpeed((int) (devconsole.nextInt())); } catch (Exception e) { System.out.println("Invalid value. Please use an int"); } } else if (response.toUpperCase().equals("SETLEVEL") && devmd) { Scanner devconsole = new Scanner(System.in); System.out.print(" $ Value: "); try { player.setLevel((int) (devconsole.nextInt())); } catch (Exception e) { System.out.println("Invalid value. Please use an int"); } } else if (response.toUpperCase().equals("SETNAME") && devmd) { Scanner devconsole = new Scanner(System.in); System.out.print(" $ Value: "); try { player.setName(devconsole.next()); } catch (Exception e) { System.out.println("Invalid value."); } } else { System.out.println("Invalid Command"); } } // setStage(getStage() + 1); if (player.experience() >= player.level * 100) { player.setLevel(player.level + 1); if (player.level() == 3) { System.out.println("You have unlocked your class special move!"); } player.setExperience(0); System.out.println("You have levelled up!"); player.setStrength(player.strength() + 2); player.setSpeed(player.speed() + 1); player.setDexterity(player.dexterity() + 2); player.setMaxHealth(player.maxHealth() + 15); } player.setHealth(player.maxHealth()); }