【Java】でシンプルな『テキストアドベンチャーゲーム』作るよ!

プログラミング

こんにちは、あきです!

突然ですがみなさんは『冒険』したことありますか?

僕は色々とギリギリの人生を送ってきたので毎日が冒険のようなものです。フハハハハ

そこで今回は『冒険』したいであろう皆さんのために【Java】でシンプルなテキストアドベンチャーゲームの作成と遊び方を解説し、楽しさと面白さに迫ります。そんなお話です。よろしくね。

はじめに

このゲームでは、冒険者が洞窟を探索し、
宝物を見つけるか、モンスターに遭遇するか、帰ってBBQをするかを決定します。

このシンプルなテキストアドベンチャーゲームでは、
冒険者が洞窟の入り口に立っており、プレイヤーが選択肢を使って進むか帰るかを決定します。
洞窟の奥に進むと、宝箱を見つけるかもしれません。
プレイヤーが宝箱を開けるかどうかも選択できます。
宝箱を開けると、冒険の報酬として大きな宝石が手に入り、ゲームがクリアとなります。

このサンプルコードは非常にシンプルで、拡張や改良の余地がたくさんあるので
ゲームのストーリーやイベントを拡充して、さらに面白いテキストアドベンチャーゲームを作成してみてください!

Javaとは?言語の特徴や用途を初心者向けにわかりやすく解説!最後にRPGゲームやるよ!
Javaとは、プログラミング言語の一つ。現在、200種類以上のプログラミング言語がある中で、Googleが開発に用いている「Google三大言語(Java、C++、Python)」の一つでもあります。日本でも昔から変わらず人気が高い言語です。

【Java】を使用したテキストアドベンチャーゲームのコーディング

【Java】 コード

まずはコードですね。

もし余裕があるなら、コピペで実際に動かしてみてください。

実際に出力して挙動を確かめながら日本語の部分と比べることでどの部分が出力されているのか一目で確認でき、コードの編集がやりやすいかと思われます。

import java.util.Scanner;

public class SimpleTextAdventure {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String playerName;
        boolean foundTreasure = false;
        
        System.out.println("=== シンプルなテキストアドベンチャーゲーム ===");
        System.out.print("冒険者の名前を入力してください: ");
        playerName = scanner.nextLine();
        
        System.out.println("\nようこそ、" + playerName + "さん!");
        System.out.println("突然ですが、あなたは洞窟の入り口に立っています。どうしますか?");
        
        while (!foundTreasure) {
            System.out.println("\n1. 入り口を進む");
            System.out.println("2. 左の道を進む");
            System.out.println("3. 右の道を進む");
            System.out.println("4. ゲームを終了してBBQを楽しむ");
            System.out.print("選択してください(1-4): ");
            
            int choice = scanner.nextInt();
            scanner.nextLine(); // 改行をクリア
            
            switch (choice) {
                case 1:
                    System.out.println("\n洞窟の奥に進んでいきます...");
                    foundTreasure = exploreCave();
                    break;
                case 2:
                    System.out.println("\n左の道に進みます...");
                    System.out.println("モンスターが突然現れました!冒険者は奮闘しましたが、力尽きました・・・");
                    System.out.println("GAME OVER!");
                    scanner.close();
                    return;
                case 3:
                    System.out.println("\n右の道に進みます...");
                    System.out.println("モンスターが現れましたが、幸いにも回避成功!何も見つからなかったようです。");
                    break;
                case 4:
                    System.out.println("\nゲームを終了します。帰ってBBQするぞ。お疲れさまでした!");
                    scanner.close();
                    return;
                default:
                    System.out.println("\n無効な選択です。もう一度選択してください。");
            }
        }
        
        System.out.println("\nCongratulations!宝箱を見つけました!");
        System.out.println("akiは報酬を手に入れ、洞窟から帰還しました。");
        System.out.println(playerName + "は冒険の疲れを癒すために仲間とBBQをすることにしました!");
        scanner.close();
    }
    
    public static boolean exploreCave() {
        System.out.println("\n暗闇の中、足元に何かが光っています!");
        System.out.println("あれは!宝箱です!開けますか?");
        
        Scanner scanner = new Scanner(System.in);
        while (true) {
            System.out.println("\n1. 宝箱を開ける");
            System.out.println("2. 帰ってバーベキュー");
            System.out.print("選択してください(1-2): ");
            
            int choice = scanner.nextInt();
            scanner.nextLine(); // 改行をクリア
            
            if (choice == 1) {
                System.out.println("\n宝箱を開けます...");
                System.out.println("おめでとうございます!大きな宝石を見つけました!");
                System.out.println("冒険の報酬を手に入れました。ゲームクリアです!");
                scanner.close();
                return true;
            } else if (choice == 2) {
                System.out.println("\n洞窟の入り口に戻ります...");
                scanner.close();
                return false;
            } else {
                System.out.println("\n無効な選択です。もう一度選択してください。");
            }
        }
    }
}

テキストアドベンチャーゲームとは

テキストアドベンチャーゲームがどんなものかというと。

テキストアドベンチャーゲームは、テキストベースの冒険を楽しむゲームで、選択肢によってストーリーが進行します。

コンピューターゲームの歴史において、最も初期のジャンルの1つであり、昔懐かしい魅力が詰まっています。

コードを用いて手軽に制作できるため、プログラミング初心者から上級者まで、誰でも楽しむことができます。

Javaで実際に遊んでみよう!

『VScode』で『ターミナル』を起動してみよう!

まずは『VScode』>『ターミナル』>『新しいターミナル』を選択してターミナルを開きましょう!

開くと画面の下側にターミナルが起動しました!

画面が見にくかったら分割範囲は後で変更できるよ!

Javaのコードを『ターミナル』で読み込む

javac SimpleTextAdventure.java

java SimpleTextAdventure

ターミナルに入力。「Enter」キーでゲーム開始です!

PS C:\U\java> javac SimpleTextAdventure.java
PS C:\U\java> java SimpleTextAdventure

ゲーム開始!【Java】

シンプルに1.の入り口を進むを選択していくとゴールできるようになっているので

まずは左の道に進んでみます!

うんうん、ちゃんとモンスターに遭遇して力尽きました!

奮闘したけど、力尽きた感じです。

冒険者akiは来世では右に進みたいと心に誓ったことでしょう。

なので、生まれ変わったら(やり直して)右に進んでみます。

うんうん、いいね!

モンスター回避しました!

冒険者akiも正面の道がtrueだと気が付いたことでしょう!

いよいよ1.の道を選択して洞窟の奥に進んでいきます!

見つけました!宝箱です!

ですが選択肢にあるBBQが冒険者akiを誘惑しています。どうすればいいんだ・・!!

Congratulations!冒険者akiは誘惑に打ち勝ち報酬を手に入れ、帰ってBBQをしたのでした・・めでたしめでたし・・!

さいごに おすすめ情報 『ミートガイ』BBQ

シンプルなテキストアドベンチャーゲームいかがでしたか?

みなさんもぜひ遊んでみてくださいね!

ところで【BBQ】といえばみなさんにオススメ情報があります!

お肉の通販!ミートガイでしか買えない、ユニークな商品がたくさんあります!

ヘルシー志向なら、大人気のグラスフェッドビーフ。糖質制限にもオススメ。
・クリスマスには、定番のローストビーフやターキー(七面鳥)
・BBQやホームパーティには、特大ハンバーガーや巨大ステーキでサプライズ演出!
・ワニ、カンガルー、ラクダ、ダチョウ、ウサギ、ヤギ、鹿、馬肉まであります
・アメリカから取り寄せた、本場の絶品スイーツも超美味です

ネット通販ではめずらしい、土日も含めて年中無休の365日営業 ・毎日発送しているので、最短1-2日でお届けできます

BBQが大好きだけど同じようなお肉ばかりであきてきた!って人。『ミートガイ』ではワニ、カンガルー、ラクダ、ダチョウ、ウサギ、ヤギ、鹿、馬肉まであるからいつものBBQより『記憶に残るBBQ』ができます!

日本にはないワイルドなお肉が食べてみたい方やとにかくお肉が大好きな方に特にオススメしてます!!

今年も暑ーいですが。

たくさんお肉を食べて乗り切りましょう!以上

コメント

タイトルとURLをコピーしました