我正在用Java制作基于文本的冒险游戏。我需要让用户能够拿起物品并将它们放入库存中,但我不确定如何!
这是我目前设置的项目:
Items item0 = new Items(0);
item0.setName("Map");
Items item1 = new Items(1);
item1.setName("Sword");
Items[] itemize = new Items[2];
itemize[0] = item0;
itemize[1] = item1;
我需要能够在某些房间内拥有特定物品。有没有人有什么建议?
答案 0 :(得分:0)
Java爱好者!我发布了一个我快速创建的代码,用于在文本冒险期间跟踪Java中的玩家库存。这种类型的代码还有很多其他的用途(正如专家所知),但是今天我决定帮助初学者并发布这些代码用于批评并在文本冒险中使用,如果你遇到麻烦的话。这不是关于如何进行文本冒险的教程,只是添加库存功能。所以我们走了:
我们需要做的第一件事是导入必要的先决条件:
import java.util.ArrayList;
import java.util.List;
显然,扫描仪已经被导入了。接下来,我们必须创建列表:
List<String> inv = new ArrayList<String>();
&#34; List&#34; function创建一个新列表。这将存储库存的所有数据;我打电话给我的名单&#39; inv&#39;。现在我们有了第一个动作!我的是假设的(记住),但你可以做任何你想做的事。
System.out.println("You see a rusty axe on the floor next to a can of pepsi.");
choice = scan.nextLine();
这是一个非常简单的&#34;扫描输入&#34;一种代码。我想,没什么新鲜事。现在来了有趣的部分:
if (choice.equals("take axe")) {
System.out.println("You pick up the axe");
inv.add("axe");
你知道那里有吗?我们刚刚将斧头添加到玩家库存中!就这么简单。我们现在可以使用以下方式显示库存:
System.out.println(inv);
完成!现在用完了一个项目。我将使用一个不同的例子,玩家拿起百事可乐:
System.out.println("You walk for awhile and start to become thirsty");
System.out.println(inv);
choice = scan.nextLine();
我们打印广告资源,以便玩家知道可以使用的内容。现在看这个:
if (choice.equals("drink")) {
if (inv.contains("pepsi")) {
System.out.println("You drink a can of pepsi");
inv.remove("pepsi");
多数民众赞成!我们所做的就是使用remove函数。但是现在让我们说球员决定不接受百事可乐。如果&#39;我们打算做一个&#39;到上一个if语句:
if (inv.contains("pepsi")) {
System.out.println("You drank pepsi");
inv.remove("pepsi");
} else if (!inv.contains("pepsi")) {
System.out.println("You have nothing to drink!");
}
真棒!我们所做的就是在条件语句前加上一个感叹号(意思相反)。如果您不明白,请查看以下内容。
无论如何,很高兴我可以帮助你(有一个原因,它被称为简单库存!)。如果您有任何问题,请回复询问您想要的任何内容(即使它是我的另一个教程)。如果这对您没用,请留下反馈(因为您已经知道自己在做什么)并告诉我如何变得更好。谢谢!
=============================================== ========================== 我们将检查5是否等于&#39; n&#39;,这是一个变量,使用:
如果(5 == n)那么做点什么。
容易对吗?那么现在我们要检查相反的情况:
如果(5!= n)则做一些事情。
以上陈述是不同的,因为如果5 IS不等于变量&#39; n&#39;它会回避。