gpt4 book ai didi

java - 在 Java 中与基于文本的游戏中的其他对象交互

转载 作者:行者123 更新时间:2023-12-04 05:09:00 26 4
gpt4 key购买 nike

我会尽量清楚地说明这一点,以免造成混淆。另外,我不是在寻找一个操作过程,只是一些关于如何开始和朝着正确方向前进的提示。

总的来说,我对编程比较陌生(用 Java 编程才 5 个月),而且我几乎没有学到很多关于编程的东西。我已经了解了一些概念,但我一直在尝试了解 MVC(模型、 View 、 Controller )的概念。我做了一些研究,想把它应用到基于视觉文本的游戏中。

在游戏中,玩家可以在一系列“房间”中导航,其中一些是用于探索的,还有一些是我所说的“死亡房间”,玩家最终会死去,必须在第一个房间重新开始。游戏的重点是逃离并找到导出房间,四个大方向的每个方向都使用四个按钮控制导航;现在没什么难的。但是,我无法理解如何使房间对象相互交互。例如,如果玩家点击一个按钮向左走,他们应该能够进入他们当前所在房间左侧的房间。模型将负责根据方向更新玩家所在的房间玩家想去。

换句话说,有什么技巧可以模拟一系列房间,这些房间与玩家当前所在房间的北、南、东、西其他房间交互? (希望我足够清楚。如果您需要澄清,我会回答任何问题。)再次,我正在寻找可以集中我思考的建议,而不是完整的操作方法。另外,我已经为房间设置了类和接口(interface)。

最佳答案

这是一个有趣的用例。 Model-View-Controller pattern在 Web 应用程序中最常见,但您当然可以使其适用于基于文本的游戏。

型号

在模型层中,我们将拥有实体 -- UserRoom .

Controller

Controller 解析输入,更新模型并为 View 传递必要的数据。因此,在输入“东”时,示例 Controller 代码可能是:

User user = User.current();
Room east = user.getRoom().getEast();
user.move(east);
render(east);

查看

Render 方法会将新房间作为参数,并且可能会解析某种显示新房间名称和描述的模板。

希望这可以帮助。我个人会使用 command pattern在这种特殊情况下。

关于java - 在 Java 中与基于文本的游戏中的其他对象交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15122429/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com