我有两个不同的类:TextBasedGame和IntroductionChoices。 IntroductionChoices做出所有决定,而TextBasedGame基本上只是打印故事(它是主要方法的那个)。
我想知道的是如果用户做出错误的选择,如何让游戏结束。 在这种情况下,如果用户键入"取下组。",将显示一条消息并结束游戏。就我而言,在主要方法中,它只是继续前进。如何阻止游戏运行?
我想我可能会以某种方式,在主要方法中,检查是否从IntroductionChoicesis" GAME OVER"并在那里结束比赛。
//Snippet from the main method
System.out.println("What do you do?");
System.out.println(choice.choice1());
System.out.println("Next part...");
//Method choice1 from IntroductionChoices
public static String choice1()
{
Scanner scan = new Scanner(System.in);
System.out.println("Warn her of her shadows.");
System.out.println("Take down the group.");
String decision = scan.next();
if (decision.equalsIgnoreCase("right decision"))
{
System.out.println("some text");
return "some more text in continuation to continue story in main";
}
else if (decision.equalsIgnoreCase("wrong decision"))
{
System.out.println("You creep towards the men, hoping to surprise them from behind.");
System.out.println("Consequence");
return "GAME OVER";
}
else
{
return "That is not a valid response.";
}
}
答案 0 :(得分:1)
System.exit(0)
else if (decision.equalsIgnoreCase("wrong decision"))
{
System.out.println("You creep towards the men, hoping to surprise them from behind.");
System.out.println("Consequence");
System.exit(0);
你不需要返回任何东西,它将结束程序。
或强>
为用户提供选项:
开始新游戏 - >开始新游戏
退出 - > System.exit(0)
我还会使用一个开关来检查用户选项,你不会犯错误,当选项开始累积时,它可以更整洁,更快。
您可以创建一个选项枚举或使用具有有意义名称的最终整数,这样您的代码就更容易导航,然后与用户选项匹配。