Кодирование игры High Low Guess на Java, позволяющей делать ставки монетами [закрыто]JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Кодирование игры High Low Guess на Java, позволяющей делать ставки монетами [закрыто]

Сообщение Anonymous »

Я пишу игру «Высокая-низкая догадка» на Java. В игре у меня все работает нормально. Я установил 4 уровня сложности: легкий (цифры 1–25, средний (номера 1–50), сложный (номера 1–100) и выбрал свой собственный диапазон для случайного числа, которое можно угадать. Я сделал так, чтобы вы начали со 100 монет. и сделайте ставку, чтобы игра продолжилась с предположением. Если предположение верно, именно здесь у меня возникают проблемы с добавлением полученного баланса монет к начальному балансу в 100 монет, если игрок захочет сыграть снова. У меня есть разные классы, цикл do while находится в игровом контроллере, который предлагает пользователю сыграть еще раз, это вызывает различные объекты, такие как массив сложности для установки случайного числа, метод готовности игры, который предупреждает о готовности игры, и начальный баланс монет, а метод догадок сообщает пользователю. делать ставки и угадывать, все они вызываются из класса просмотра. Может ли кто-нибудь помочь мне завершить эти последние шаги, которые я застрял на возврате монет и добавлении их к начальным монетам из 100?
Я пробовал. вызов монет и запуск монет для добавления в цикл do while в игровом контроллере сразу после повторного ввода с клавиатуры клавиатуры и перед циклом while и условием завершения, которое даже не считывалось в программе, но также не имело ошибки компиляции.
Код моего основного метода:
package com.mycompany.sandoval_highlow;
import javax.sound.sampled.LineUnavailableException;

public class Sandoval_HighLow
{

public static void main(String[] args) throws LineUnavailableException
{
GameController logic = new GameController();
logic.GamesStart();
}
}

Мой класс администратора:
package com.mycompany.sandoval_highlow;

import javax.sound.sampled.LineUnavailableException;

public class Admin {
GameSounds s = new GameSounds();
View c = new View();

public void GameStartup() throws LineUnavailableException
{
s.GameStart();
System.out.println("_________________________");
System.out.println("_~-_-~HIGH LOW GAME~-_-~_");
System.out.println("_________________________\n");
System.out.println("The high low game is a guessing game. \n");
System.out.println("Guess a number between 1-100 to win. \n");
System.out.println("At anytime enter -1 if you give up... \n\n");
}

public void GoodbyeMessage() throws LineUnavailableException
{

s.GameOverSound();
System.out.println("Game Over");
System.out.println("Your ended with " + c.coins + " coins!");
}

}

Мой класс GameController:
package com.mycompany.sandoval_highlow;

import java.util.Scanner;
import javax.sound.sampled.LineUnavailableException;

public class GameController {

Scanner keyboard = new Scanner(System.in);
char quit = 'N';

public void GamesStart() throws LineUnavailableException {

Admin intro = new Admin();
View v = new View();

intro.GameStartup();

do {
v.RetrieveMagicNum();
v.gameReady();
v.guesses();

System.out.println("Would you like to play again? Enter Y or N");
quit = keyboard.next().toUpperCase().charAt(0);
if (quit == 'Y') {
v.coins += v.startingCoins;

}

} while (quit == 'Y');

intro.GoodbyeMessage();
}
}

Мой класс View:
package com.mycompany.sandoval_highlow;

import java.util.Random;
import java.util.Scanner;
import javax.sound.sampled.LineUnavailableException;

public class View {

int numGuesses;
int guess;
int difficulty;
int min;
int max;
int magicNumber;
int coins;
int startingCoins = 100;
int wager;

Scanner keyboard = new Scanner(System.in);

public void RetrieveMagicNum() throws LineUnavailableException {
Random r = new Random();

System.out.println("Select you difficulty level :)");
System.out.println("Enter 1 for easy numbers 1-25");
System.out.println("enter 2 for medium numbers 1-50");
System.out.println("enter 3 for hard numbers 1-100");
System.out.println("Enter 4 to set your own range: ");
difficulty = keyboard.nextInt();

switch (difficulty) {
case 1:
difficulty = 1;
min = 1;
max = 25;
magicNumber = r.nextInt(max - min) + min;
break;

case 2:
difficulty = 2;
min = 1;
max = 50;
magicNumber = r.nextInt(max - min) + min;
break;

case 3:
difficulty = 3;
min = 1;
max = 100;
magicNumber = r.nextInt(max - min) + min;
break;

case 4:
System.out.println("Enter minimum number for your range: ");
min = keyboard.nextInt();
System.out.println("Enter maximum number for your range: ");
max = keyboard.nextInt();
magicNumber = r.nextInt(max - min) + min;
break;
}

}

public void gameReady() throws LineUnavailableException {
GameSounds S = new GameSounds();
GameController q = new GameController();
coins = startingCoins;
System.out.println("GAME READY");
System.out.println("COIN BALANCE: " + coins + " COINS");
S.GameStart();

if(q.quit == 'Y') {
coins += startingCoins;
}
}

public void guesses() throws LineUnavailableException {
GameSounds S = new GameSounds();

System.out.println("Place your bet: ");
wager = keyboard.nextInt();
while (wager > coins) {
System.out.println("Enter a valid bet you have " + coins + " coins: ");
wager = keyboard.nextInt();
}
System.out.println("Enter your guess: ");
guess = keyboard.nextInt();

while (guess != -1 && coins > 0) {

if (guess < magicNumber && coins >= 0) {
numGuesses = numGuesses + 1;
coins = coins - wager;
S.TooLowSound();
System.out.println("The number is too low");
System.out.println("Guess #: " + numGuesses);
System.out.println("COIN BALANCE: " + coins);
System.out.println("enter -1 to give up or place another bet: ");
wager = keyboard.nextInt();
System.out.println("Enter your guess: ");
guess = keyboard.nextInt();

} else if (guess > magicNumber && coins >= 0) {
S.TooHighSound();

numGuesses = numGuesses + 1;
coins = coins - wager;
System.out.println("The number is too high");
System.out.println("Guess #: " + numGuesses);
System.out.println("COIN BALANCE: " + coins);
System.out.println("enter -1 to quit or place another bet: ");
wager = keyboard.nextInt();
System.out.println("Enter you guess: ");
guess = keyboard.nextInt();
} else {

S.WinningSound();
coins = coins + wager;
numGuesses = numGuesses + 1;
System.out.println("Winner! You guessed the correct number. ");
System.out.println("You won " + wager + " coins!");
System.out.println("You guessed " + numGuesses + " times.");
System.out.println("COIN BALANCE: " + coins);
guess = -1;

}

}
}
}

Мой класс GameSounds:
package com.mycompany.sandoval_highlow;

import java.util.Random;
import java.util.Scanner;
import javax.sound.sampled.LineUnavailableException;

public class View {

int numGuesses;
int guess;
int difficulty;
int min;
int max;
int magicNumber;
int coins;
int startingCoins = 100;
int wager;

Scanner keyboard = new Scanner(System.in);

public void RetrieveMagicNum() throws LineUnavailableException {
Random r = new Random();

System.out.println("Select you difficulty level :)");
System.out.println("Enter 1 for easy numbers 1-25");
System.out.println("enter 2 for medium numbers 1-50");
System.out.println("enter 3 for hard numbers 1-100");
System.out.println("Enter 4 to set your own range: ");
difficulty = keyboard.nextInt();

switch (difficulty) {
case 1:
difficulty = 1;
min = 1;
max = 25;
magicNumber = r.nextInt(max - min) + min;
break;

case 2:
difficulty = 2;
min = 1;
max = 50;
magicNumber = r.nextInt(max - min) + min;
break;

case 3:
difficulty = 3;
min = 1;
max = 100;
magicNumber = r.nextInt(max - min) + min;
break;

case 4:
System.out.println("Enter minimum number for your range: ");
min = keyboard.nextInt();
System.out.println("Enter maximum number for your range: ");
max = keyboard.nextInt();
magicNumber = r.nextInt(max - min) + min;
break;
}

}

public void gameReady() throws LineUnavailableException {
GameSounds S = new GameSounds();
GameController q = new GameController();
coins = startingCoins;
System.out.println("GAME READY");
System.out.println("COIN BALANCE: " + coins + " COINS");
S.GameStart();

if(q.quit == 'Y') {
coins += startingCoins;
}
}

public void guesses() throws LineUnavailableException {
GameSounds S = new GameSounds();

System.out.println("Place your bet: ");
wager = keyboard.nextInt();
while (wager > coins) {
System.out.println("Enter a valid bet you have " + coins + " coins: ");
wager = keyboard.nextInt();
}
System.out.println("Enter your guess: ");
guess = keyboard.nextInt();

while (guess != -1 && coins > 0) {

if (guess < magicNumber && coins >= 0) {
numGuesses = numGuesses + 1;
coins = coins - wager;
S.TooLowSound();
System.out.println("The number is too low");
System.out.println("Guess #: " + numGuesses);
System.out.println("COIN BALANCE: " + coins);
System.out.println("enter -1 to give up or place another bet: ");
wager = keyboard.nextInt();
System.out.println("Enter your guess: ");
guess = keyboard.nextInt();

} else if (guess > magicNumber && coins >= 0) {
S.TooHighSound();

numGuesses = numGuesses + 1;
coins = coins - wager;
System.out.println("The number is too high");
System.out.println("Guess #: " + numGuesses);
System.out.println("COIN BALANCE: " + coins);
System.out.println("enter -1 to quit or place another bet: ");
wager = keyboard.nextInt();
System.out.println("Enter you guess: ");
guess = keyboard.nextInt();
} else {

S.WinningSound();
coins = coins + wager;
numGuesses = numGuesses + 1;
System.out.println("Winner! You guessed the correct number. ");
System.out.println("You won " + wager + " coins!");
System.out.println("You guessed " + numGuesses + " times.");
System.out.println("COIN BALANCE: " + coins);
guess = -1;

}

}
}

}


Подробнее здесь: https://stackoverflow.com/questions/791 ... ager-coins
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»