我似乎无法找到解决问题的好方法。我正在尝试为我的游戏创建维护模式,我希望用户能够从主菜单输入房间名称,并能够产生到该房间。这是代码。我有一个模块设置为
Class MM():
def Room_Name():
pass
这只是通过显然,然后在游戏中我有这个。
def MaintenanceMode():
MM.Room_Name()
现在这个代码就像一个魅力,我可以把一个房间名称放在MM.Room_Name()的括号内,我产生到房间没问题。我想要的是一个更友好的用户版本。
好的,所以我在游戏的主菜单中进行设置,输入一个进入维护模式的代码,然后检查MM.Room_Name()以便调用房间。相反,当我在主菜单中输入代码时,我想要一个房间名称,并在那里产生。我似乎无法让这个工作,我疯狂地搜索找到一个解决方案。我试过了
ask = input("Which room do you want to go?>: ")
MM.Room_Name(ask())
但我不能让它工作,我只是得到str不可调用,我尝试了几个其他解决方案的问题,甚至更复杂的版本我做了什么,仍然没有任何工作。我试图避免在这里问,因为我担心这个问题已经得到了回答,但我已经被困了几个星期而且我有点绝望。是的,我试过
ask = str(input("Which room do you want to go?>: "))
但我仍然没有运气。如果可能的话,我想避免在我的游戏中列出所有房间并列出清单。但如果这是我唯一的解决方案,我想它不会受到伤害。我想,因为我可以在MM.Room_Name(Escape())中调用房间名称,必须有一种方法让用户输入进入并可以调用。有什么建议吗?我真的很感激。
vEdit 1v
所以代码模拟我想要的东西。运行此代码并在主菜单中键入164进入维护模式,它将生成到MM.Room_Name(Bedroom())中的房间Bedroom()。我想要的是让用户输入密码164,它会询问玩家你想要产生什么房间,并以某种方式从用户输入调用该房间。不要尝试任何其他选项,只需在菜单中输入164,它就会产生到Bedroom()。因此,我需要弄清楚如何将用户输入转换为可调用功能,这样玩家尝试维护模式时不必在每次想要不同房间时编辑MM.Room_Name()中的房间,而是当玩家进入维护时模式,游戏要求房间名称,并在那里产卵。我包括一间卧室和一间客厅供你们测试。只需在MM.Room_Name()之间切换它们,并在进入维护模式时查看它是如何工作的。希望这可以让您了解我希望用户输入版本如何工作。
import time
class MM():
def Room_Name():
pass
def Question():
return input("You entered the Room, What do you do?>: ")
def space():
print(" ")
def pass1():
while True:
space()
return input("**Press Enter**")
break
def what():
space()
print("I didn't understand that.")
space()
def MaintenanceMode():
print("Check MaintenanceMode() Block On Line 49 To Change Room's!")
print("V V V V V V V V V V V V V V V V V V V V")
space()
MM.Room_Name(Bedroom())
def Menu():
space()
space()
print("**The Hunter**")
space()
print("Press 1: To Start The Game")
space()
print("Press 2: For Story")
space()
print("Press 3: To Quit")
space()
Choice_input0()
def Choice_input0():
while True:
def Choice():
return input("What do you want to do?>: ")
Player = Choice()
if Player == '1':
p.next_source()
time.sleep(1)
Startgame()
elif Player == '2':
Storyinfo()
elif Player == '3':
print('Exit Okay!')
elif Player == '164':
space()
print('Maintenance Mode Active!')
MaintenanceMode()
else:
what()
def Bedroom():
while True:
def Choice():
Question()
Player = Question()
if Player in ['look around']:
space()
print("You see the Bedroom")
space()
else:
what()
def Livingroom():
while True:
def Choice():
Question()
Player = Question()
if Player in ['look around']:
space()
print("You see the Livingroom")
space()
else:
what()
Menu()
答案 0 :(得分:0)
分配ask
后,您不应该尝试将其称为函数,因为它是一个字符串。所以
MM.Room_Name(ask)
没有ask()
上的parantheses的可能会更好。