我正在制作一个基于文本的RPG。有了这一点背景,我想制作一个法术的全局列表,然后定义当用户调用这些法术时要采取的特定操作。那么,如果我有一个全局法术列表,那么为这些法术指定特定动作的最佳方式是什么?这是一段代码,可以帮助您了解我的作战机制。例如,我需要允许用户调用“治疗”,然后让治疗拥有提高生命值的属性和冷却机制,例如“你必须等待5秒才能再次使用此法术”。定义这些属性的最佳方法是什么,并使这些属性是全局的,因此,它们可以通过每个作战功能引用,而无需重复属性
这是我代码的一部分,可能会澄清我的战斗机制。当玩家在原始输入“inp”下被提示输入法术名称,并输入治疗时,冷却效果会持续一定的时间,或者在战斗中持续一定的回合数,以及提高用户生命的能力。我终身使用的属性位于名为“user”的类和变量“health”下。所以user.health = 100
是有效的
available_spells = ['heal', 'fireball']
equipped = {'Armor': 'Mage Robes',
'Weapon': 'Wooden Staff',
'Spells': ['heal', 'fireball']
print "Your available spell(s) is(are) '%s'. " % equipped["Spells"]
inp = raw_input("Type the name of a spell you want to use.: ").lower()
lst = [x for x in available_spells if x.startswith(inp)]
if len(lst) == 0:
print "No such spell"
print ' '
elif len(lst) == 1:
spell = lst[0]
print "You picked", spell
#combat functions here
else:
print "Which spell of", equipped["Spells"], "do you mean?"
目前没有回答
相关问题 更多 >
编程相关推荐