创建一个简单的文字游戏是一个很好的练习,可以帮助熟悉 Java 编程语言和面向对象编程的基本概念。下面是一个简单的文字冒险游戏的示例。这是一个基于控制台的文字游戏,可以在其中与简单的故事情节互动。

示例:简单的文字冒险游戏

这个游戏包含以下基本功能:

  1. 玩家可以选择进入不同的房间。
  2. 每个房间都有不同的描述和选择。
  3. 游戏可以继续进行直到玩家选择退出。
1. 创建游戏类

首先,定义一个 Game 类来管理游戏的主要逻辑。

import java.util.Scanner;

public class Game {

    private Scanner scanner;
    private boolean running;

    public Game() {
        scanner = new Scanner(System.in);
        running = true;
    }

    public void start() {
        System.out.println("欢迎来到文字冒险游戏!");
        while (running) {
            System.out.println("\n你现在在一个房间里。你可以选择:");
            System.out.println("1. 进入厨房");
            System.out.println("2. 进入书房");
            System.out.println("3. 退出游戏");

            int choice = getUserChoice();
            handleChoice(choice);
        }
    }

    private int getUserChoice() {
        while (true) {
            try {
                int choice = Integer.parseInt(scanner.nextLine());
                if (choice >= 1 && choice <= 3) {
                    return choice;
                } else {
                    System.out.println("无效的选择,请重新选择:");
                }
            } catch (NumberFormatException e) {
                System.out.println("无效的输入,请输入数字:");
            }
        }
    }

    private void handleChoice(int choice) {
        switch (choice) {
            case 1:
                enterKitchen();
                break;
            case 2:
                enterLibrary();
                break;
            case 3:
                exitGame();
                break;
        }
    }

    private void enterKitchen() {
        System.out.println("你进入了厨房。这里有一些美味的食物和一扇门。");
        System.out.println("1. 吃食物");
        System.out.println("2. 打开门出去");
        System.out.println("3. 返回");

        int choice = getUserChoice();
        switch (choice) {
            case 1:
                System.out.println("你吃了一些食物,感觉很好。");
                break;
            case 2:
                System.out.println("你打开了门,发现自己回到了起始房间。");
                break;
            case 3:
                return;
        }
    }

    private void enterLibrary() {
        System.out.println("你进入了书房。书架上满是书。");
        System.out.println("1. 阅读一本书");
        System.out.println("2. 退回起始房间");
        System.out.println("3. 返回");

        int choice = getUserChoice();
        switch (choice) {
            case 1:
                System.out.println("你阅读了一本书,学到了一些新知识。");
                break;
            case 2:
                System.out.println("你返回到起始房间。");
                break;
            case 3:
                return;
        }
    }

    private void exitGame() {
        System.out.println("感谢你玩这个游戏!再见!");
        running = false;
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68.
  • 69.
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.
  • 75.
  • 76.
  • 77.
  • 78.
  • 79.
  • 80.
  • 81.
  • 82.
  • 83.
  • 84.
  • 85.
  • 86.
  • 87.
  • 88.
  • 89.
  • 90.
  • 91.
  • 92.
  • 93.
  • 94.
  • 95.
  • 96.
  • 97.
2. 创建主程序类

创建一个主程序类来启动游戏。

public class Main {

    public static void main(String[] args) {
        Game game = new Game();
        game.start();
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
运行游戏

要运行这个游戏,确保已经将上述代码保存到适当的 Java 文件中,例如 Game.javaMain.java。然后,编译并运行 Main 类。

javac Game.java Main.java
java Main
  • 1.
  • 2.
代码说明
  1. Game: 这是游戏的主要类,管理游戏的逻辑,包括展示选项、处理用户输入和响应不同的选择。
  2. start 方法: 这是游戏的入口点,展示主菜单并处理用户选择。
  3. handleChoice 方法: 根据用户选择,调用相应的房间方法。
  4. enterKitchenenterLibrary 方法: 处理玩家在不同房间的选择和互动。
  5. exitGame 方法: 退出游戏的逻辑。