问题标签 [text-based]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java:在基于文本的游戏中选择对象
我一直在为课堂制作一个基于文本的游戏,并且通过一些试验和错误就能够完成大部分工作。但是我在用户输入解析方面遇到了障碍,我已经不得不简化得比我喜欢的还要多。这个想法是有一个将字符串作为输入的方法,然后调用在另一个类中实例化的对象中的方法。这是代码,是的,我知道这是一团糟。
看来我对这个问题的表述有点糟糕。除了不知道如何做我想做的事之外,我实际上没有遇到任何问题。Gilbert La Blanc 提出的方法非常好,并且解决了我的问题。也许我真的会通过这个决赛!谢谢大家的帮助。
}
python - 在 Python 中创建基于文本的游戏。如何检查用户输入?
我正在用 Python 创建一个基于文本的游戏,需要有关 splat 参数的帮助。我有一个功能可以测试输入是否有效,还允许您访问您的库存。我有两个参数,一个获取输入提示,一个是该提示的有效答案。答案是一个 splat 参数,因为您可以对提示有多个答案。这是该功能:
我有两个包含常见问题答案的列表:
如果我这样调用函数:
它总是会执行再次要求输入的while循环,但如果我删除“是”或“否”,所以只有答案列表,它会起作用
我该如何处理两个论点?我做错了什么?
python - 具有相同参数的递归函数
我正在用 python 创建一个基于文本的游戏并且遇到了障碍。我有一个函数可以检查用户输入是否包含某些单词,如果包含则返回用户输入,否则它将重新请求输入。如果您编写的内容不包含其中一个单词,它将重新调用该函数。
这是我的称呼:
在此功能中,您可以调出说明或库存,然后它会调用该功能。如果您在第一次被问到时将其中一个词放在答案中,那么一切都会正常进行。当您输入不正确的内容、调出库存或调出说明时,就会出现问题。它导致函数不返回任何内容,而不是用户输入。为什么会这样?是因为函数重置所以参数等于none吗?
python - 关于python对象及其方法
我目前正在尝试用纯 python 编写基于文本的冒险。因此,我有一个 Room 类,看起来有点像这样(缩短):
我的问题是 Room 的 update_image() 方法。我需要一个映射器存储在那里,以根据对象的状态(打开/关闭)找出正确的图像,如果我把这个映射器放在方法的开头,每次方法都是由 python 读取和构造这个字典叫,对吗?那么我是否应该将此映射器字典存储为实例变量,如 self.img_mapper_dict = {(0, 0, 0) : 0, ...}?
也许有人对此有任何想法?
chat - 仅在 TokBox 中进行文字聊天?
我发现 Tokbox 是一个很棒的视频聊天服务。是否可以在 tokbox 中单独使用文本聊天?还是在 Takbox 中与视频进行文字聊天?
谢谢
python - 如何 +1 以前的作业 (Python 3.3)
注意:这不是
我试过w_sword += 1
了,它仍然显示为0。
好的,这是我现在的代码。
现在你可以看到,w_sword 和 w_shield 都 = 到 0 正确吗?
就在它说 w_sword = +1 和 w_shield = +1 的地方,我认为是问题所在。
当你运行程序时,输入 c,然后制作一把木剑/盾牌,一旦你进入你的 (i) 库存,它应该会自动将 1 添加到 w_sword/w_shield。但是由于某种原因,当您返回 (i) 库存时,w_sword/w_shield(取决于您制作的那个)显示为 0。
我认为这段代码主要是因为在项目分配中,它包含 str(w_sword) 和 str(w_shield) 以及其他代码。因此,当您制作木剑或木盾之类的物品时,它的 str(w_shield) 或 str(w_sword) 应该为 1。
有谁知道我的问题是什么??如标题所述,我使用python 3.3。
python - +1 时变量不会改变 (Python 3.3)
在我之前的帖子中,我说过每当我添加一些东西时,我的变量都不会改变。这是我当前的代码,我的问题将在它下面。
现在我最后一个问题中的一个答案是我的变量 for w_sword
andw_shield
应该以 1 开头,并且我的变量赋值应该在函数之外:game()
,所以我照说的做了,每当我“制作”木剑或木盾时,它都会显示最多为 1。但我没有意识到的是,无论我制作的是哪个(木剑或木盾)w_sword
,w_shield
当我回到(i)库存时都显示为 1。例如,如果我wooden sword
输入名为c_item
然后返回 (i)inventory的输入,即使我只制作了一把木剑,两者都会显示为 1 w_sword
。w_shield
python - 从另一个函数更改一个函数中的变量
我正在用python开发一个基于文本的冒险游戏。没有什么超级花哨的。我想在 2 个不同的房间有一个杠杆来解锁第三个房间的门。需要拉动两个杠杆才能解锁门。
这是两个带杠杆的房间。
这是带门的房间。
我缩短了代码,因此您不必阅读所有不必要的内容。
我最大的问题是我对 Python 语言还不是很熟悉,所以我不确定如何用词来找到我正在寻找的答案。
编辑:代替 FirstRoom.WolfLever 我还尝试在我的代码主体中使用 WolfLever,在 Start() 上方我有:
但是我的函数没有更新这些值。所以我尝试了FirstRoom。方法。
c++ - 为什么我的变量在我设置的类之外打印时会给出不同的值?
我对 C++ 相当陌生,并且正在使用它为学校项目制作基于文本的游戏。然而,在游戏的第一部分,玩家通过输入他们选择的答案旁边显示的数字来回答问题。但是,当我测试要使用std::cout的输入变量时,它们会根据输出位置返回不同的值。如果我在我用来设置它们的类中输出它们(Introduction),它们会返回正确的值,例如 1 或 3 等。但是,当我将它们输出到Introduction.cpp以外的任何文件中时,显示的值为 -858993460所有的价值观。当我在main中调用Main.cpp时,我得到了相同的结果函数,如果我从另一个类中的另一个函数调用它们到Introduction。
这是一些用于从用户获取输入的代码示例:
性别变量是在Universal类中声明的int,并且通过从单独文件中提取的文本提示用户输入 1 代表男性或 2 代表女性。如果输入不是 1 或 2,那么 while 循环会强制玩家继续重新回答问题,直到他们输入 1 或 2。line变量也是一个int,但是用于for循环以确保正确的行是由程序读取。
要输出性别变量,这是我使用的代码:
没有普遍性。因为它在Universal类本身中被调用。
这让我非常困惑,我无法理解导致问题的原因。任何帮助或解释都会很棒,在此先感谢。
text-based - Linux 终端模拟器
我正计划制作一个命令 shell 游戏,我想知道为此提供 shell 环境的最佳方法是什么。
我希望能够提供大多数终端用户期望从终端获得的大多数标准实用程序,例如grep
、awk
、sed
或man
,但我还需要能够自定义和修改其中的一些(特别是ssh
所有网络接口和自定义包管理器)能够提供预期的游戏玩法。
特别是,我需要能够在终端中显示图像,例如通过fbi,尽管不需要能够使用完整的图形环境 - 没有 X。
我考虑过各种计算机模拟器,例如v86.js或jslinux。这些可以通过提供磁盘映像进行自定义,并且与真实计算机完全一样工作 - 我只需要修改磁盘映像以使其以我想要的方式工作。采用这种方法,我肯定会学到很多关于 linux 的内部工作原理的知识,但是这样做会花费很多时间。
另一种选择是实现我自己的控制台来执行此操作。这可能更简单,但我认为我无法以这种方式提供真实的体验。
为此目的创建/自定义命令外壳的最佳(最简单/最简单)方法是什么?