java - 代码依赖于java中的对象
问题描述
我需要根据我的 java 类的对象执行不同的代码。
进一步解释:我正在尝试为一个文本冒险创建一个“对话”,其中有一个 NPC,NPC 会告诉你一些事情,而你有几个选择要说什么。基本上,有些 NPC 与玩家交流的内容更多,但当然也有 NPC 的语音部分比其他人多或少。所以我不能用这么多部分对它进行硬编码,而只是将字符串从一个对象更改为另一个对象,如下所示:
public class NPC {
private String[] speech;
private String[] reply;
public conversation() {
speech[0];
getReply(reply);
speech[1];
getReply(reply);
speech[2];
getReply(reply);
...
}
}
例如,NPCone 有 3 个语音部分,NPCtwo 有 7 个,这些部分中的每个部分都会以某种方式对不同的回复做出反应,所以我也不能真正使用 if 或任何循环。
所以我需要一种方法来做到这一点或解决它(希望不会失去将它全部放在一个类中的能力),但也许我在这里只是愚蠢并且看不到树木的树木。
解决方案
您可能会使用最终状态机。游戏开发中的 FSM 理论与实现
推荐阅读
- python - 如何为基于文本的冒险游戏创建文本框系统?
- javascript - React-Redux 中的突变和异步行为问题
- macos - macos中的Vim问题,终端随机变为空白
- excel - 更新PowerPoint幻灯片中的许多形状之一
- java - java - 在java spring中点击特定url时如何重定向到控制器
- logic - 用户如何使用逻辑 (AND/OR) 过滤 tableau 中的仪表板?
- java - 为什么我的代码收到 fileNotFoundException 错误?
- postgresql - 在文本中执行多个替换的更好功能,由数组指定?
- python - 在文本文件中查找和替换正则表达式(mac 地址)
- python - import pyzbar.pyzbar - 找不到 zbar 共享库