我正在学习python,似乎让自己感到困惑。我正在尝试制作一个使用不同文件的游戏,这些文件中包含类和函数,函数根据发生的情况返回值。 要使其他类在主文件中工作,我需要将这些单独文件中的值作为主文件。
我的代码看起来有点像这样:
这是主文件:
class Home(Scene):
def enter(self):
task45Home
return 'forest'
###Works to start forest.
###Happens even when dead though.
class Forest(Scene):
def enter(self):
task45Forest
这是来自task45Home:
action = raw_input("> ")
if action == "forest":
print "Will you ever return?"
return 'forest'
elif action == "look":
print "\nYou look around the room and see several items."
return 'forest'
我需要这些返回值,以便场景可以改变:
class Map(object):
scenes = {
'home': Home(),
'forest': Forest(),
'cave': Cave(),
'passageway': Hidden_Passageway(),
'pirates' : Pirate_Cove(),
'death': Death()
}
def __init__(self, start_scene):
self.start_scene = start_scene
def next_scene(self, scene_name):
return Map.scenes.get(scene_name)
def opening_scene(self):
return self.next_scene(self.start_scene)
a_map = Map('home')
a_game = Engine(a_map)
a_game.play()
我做错了什么? 还有另一种方法可以将返回值输入主文件吗?