最初のオフは、コードがうまくいかなければならないという考え方のプロセスを示すテキストです。私は一般的にはプログラミングに新しく、ちょうど数日前にJavaを学び始めました。私はoopの仕組みを基本的に理解していると思いますが、自分のコードにうまく実装できません。私はちょうどそれらで出始めているもののwhileループの使用は、私には意味のビットを行い、DテキストベースのゲームJavaでwhileループを使用するにはどうすればいいですか?
物事私が欲しい:
3つのオプション
メニュー
とメインメニュー(キャンプ)クエスト(クエストループを活性化させる)タウンへ
ゴー(町のループを活性化させる)
モンスターにダメージを与える
戦いのモンスターを「怪物が現れ、」 クエストランダムモンスターと戦うと金を得るの ゲームプレイループ/スコア
(プログラムを終了)、ゲームを終了しますモンスターはダメージを受けます メインループに戻る
使用アイテム アイテムの効果は、メインメニューに戻り
実行 リターン(メインメニューをアクティブに)
タウン は、あなたが上で金を過ごすことができます戻ってメインループに を適用項目 使用項目を選択します健康と被害額を増やすための「歯車」
「私は鍛冶屋です。」
プレイヤーが終了したゲーム を死ぬか、選択したときに- アップグレード武器(ダメージを増加)
- アップグレードアーマー(健康を向上させる)
- 休職タウン(バックメインメニューにプレイヤーを戻す)
ゲームは終了します
スコアを表示し、プレーしてくれたプレイヤーに感謝
以下はロジックのプロトタイプです。
これはうまくいくはずですが、実行するたびに が正しく機能せず、無限ループの が終了します。私はあなたのうちの1人ができることを期待しています なぜそれが動作しないとちょっと右の私を操縦する参照してください 方向。何でも大歓迎です!
また、キャンプ、ダンジョン、タウンのブーレンに関するコメントはありますか? 私はそれらが本当に必要かどうか分かりません。おそらくちょうど に余分なコードがありますが、本当にわかりません。
import java.util.Scanner;
public class logic
{
public static void main(String[] args)
{
boolean running = true;
Scanner in = new Scanner(System.in);
System.out.println("This is a test");
while(running)
{
boolean camp = true;
boolean dungeon = false;
boolean town = false;
String input = in.nextLine();
while(camp)
{
System.out.println("what u do?");
System.out.println("1. go dungeon");
System.out.println("2. go town");
System.out.println("3. quit");
if (input.equals("1"))
{
dungeon = true;
while(dungeon)
{
System.out.println("you are in the dungeon");
dungeon = false;
break;
}
}
else if (input.equals("2"))
{
dungeon = false;
town = true;
while(town)
{
System.out.println("you are in the town");
town = false;
break;
}
}
else if (input.equals("3"))
{
break;
}
else
{
System.out.println("invalid command!");
}
}
}
}
}
おそらく、どこかにキャンプするためにfalseを割り当てる必要があります。 – JFPicard
私は間違っている場合は私を修正しますが、彼らはキャンプや実行中のループの中にあるので、私はダンジョンや町の中でそれを行うことができません –
オプション3で何かしたいと思うかもしれません – JFPicard