对于我正在创建的基于文本的RPG,我有一些字典,概述了各种游戏中的宗教,种族等。这些宗教的某些价值包括玩家数据的增益,例如:
religion_Dict = {'Way of the White': {'buffs': {'intelligence': 5, 'defense': 3},
'abilities': [...],
'description': '...'}}
我的问题是在尝试将宗教的统计增益应用到玩家的统计上时出现的。如果我有一个类似于以下内容的播放器类:
class Player(object)
def __init__(self):
...
self.religion = None
self.stats = {'intelligence': 10, 'defense': 8}
现在,让我们假设玩家加入宗教Way of the White
,我该如何去识别键intelligence
和defense
及其各自的价值观-字典内religion_dict
-并把它们应用到玩家的价值观stats
词典吗?
我知道我可以使用religion_Dict.keys()
或基本的for循环来提取键名,但是如何使用它来正确地修改相应的玩家统计值呢?
我确定我只是缺少一个基本概念。无论如何,感谢任何愿意帮助回答这个简单问题的人!我很感激!
这是您将如何进行此操作的草图:
religion_Dict = {'Way of the White': {'buffs': {'intelligence': 5, 'defense': 3},
'abilities': [...],
'description': '...'}}
buffs = religion_Dict['Way of the White']['buffs']
for key in buffs:
player.stats[key] = player.stats.get(key,0) + buffs[key]
当然,您应该将此逻辑包装在Player类中的方法中,但是上面的逻辑正是您要寻找的。请注意,该.get
方法采用第二个参数,这是默认值,如果没有键值,则返回该默认值。因此,此行会将1加到任何状态,如果不存在,则将1加0。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句