我正在写一个基于文本的游戏,我想把每个房间链接到另外四个房间——北、南、东、西。我现在从北边开始。用户应该能够键入“向北走”,并且应该调用北房间。
我使用了三个文件——一个是我写主要故事的地方,一个是调用故事中适当的房间,一个是导航以避免相互导入。
房间。py:
import actions
class FirstRoom(object):
room_name = 'FIRST ROOM'
north = 'north_room'
def __init__(self):
pass
def start(self):
print self.room_name
while True:
next = raw_input('> ')
actions.walk(next, self.north)
actions.command(next)
class North(object):
room_name = "NORTH ROOM"
def __init__(self):
pass
def start(self):
print self.room_name
actions.py:
import navigation
def walk(next, go_north):
"""Tests for 'walk' command and calls the appropriate room"""
if next == 'walk north':
navigation.rooms(go_north)
else:
pass
航行py:
import rooms
first_room = rooms.FirstRoom()
north_room = rooms.North()
def rooms(room):
rooms = {
'first_room': first_room.start(),
'north_room': north_room.start(),
}
rooms[room]
当我运行first_room.start()时,它应该打印第一个房间。然后我输入“向北走”,我希望它打印“北房间”,但它再次打印“第一房间”。
我一辈子都搞不明白为什么它不能按我期望的方式工作,就好像它又在呼叫第一个房间而不是北房间。有人知道我做错了什么吗?
我的猜测是,问题的发生是因为如何定义字典房间
。当你这么做的时候-
rooms = {
'first_room': first_room.start(),
'north_room': north_room.start(),
}
rooms[room]
在定义字典本身时调用函数,而不是在访问字典中的值时调用函数(因此两个函数都被调用),您希望将函数对象(不调用它们)存储为值,然后将它们称为-rooms[room]()
。范例-
def rooms(room):
rooms = {
'first_room': first_room.start,
'north_room': north_room.start,
}
rooms[room]()
您好,我是新来的编码和创建一个基于文本的游戏在python中。我正在写代码从一个房间搬到另一个房间。我需要一些人帮我清理目前为止所做的事情。我运行了一个即时反馈程序,得到了以下提示,但不确定如何纠正: 大厅字符串是主字典中的一个关键字。修改代码,使其不是主字典中的关键字。 它说它不能分类我的代码(不确定那是什么意思) 将多个打印命令合并到一个函数中 使用非复杂条件使条件更简单 更好地练习在True
我对编程游戏相当陌生;我已经3/4完成了,我有一个关于我制作的一个基于文本的小游戏的问题。。。所以在这个游戏中,我的
我试图制作一个简单的基于文本的游戏,在这个游戏中,你在一个由“#”组成的网格周围移动“@”,并试图找到出口。我已经改变了代码,使我更容易使网格更大或更小,而无需添加或删除大量代码,它一直给我这样的输出: 我不知道这是怎么回事!只有一个“@”应该出现:(我只是python的新手,所以如果您有任何改进的建议,请不要犹豫,然后发布它们!提前感谢,
我需要一个基于文本的python游戏的帮助,我已经完成了大部分工作,我可以在所有3个房间之间移动,顶部有“大厅”,然后往南走“卧室”往东走“地窖”我可以往回走,所以往西走“卧室”向北走,最后回到大厅。 问题是,如果我在大厅里输入东,它会跳到地窖,而不是说无效移动,那里有一面墙。我想做的是 显示玩家当前所在房间的输出。决策分支告诉游戏如何处理不同的命令。命令可以是在房间之间移动(如向北、向南、向东或
所以我是Java编码的新手,我对C#有很好的经验,我知道它们非常相似。我目前正在通过创建一个文本冒险游戏来处理Java,游戏使用案例(案例1、案例2、默认等),目前我正在开发一个保存和加载功能,但我不知道如何保存一个使用案例来进一步编码的分支游戏,有人有什么想法吗?
在我的游戏中有几个类我写过,包括房间,灯,胸,爪哇,玩家,钥匙和地图。这些都经过了测试,并且是正确的,所以现在我正在编写我的adventure类,它是程序的驱动程序。我需要设置球员的房间位置[0][0],但我不知道怎么做。这是我到目前为止在我的房间和冒险课。