上次发了一篇“Python写文本冒险游戏的要点”之后,有的朋友说形式太简单了,能不能在游戏中加入道具?
既然如此,我们这次就来给它升一级。
很多人都玩过“刺激战场”类的游戏,进一个房子就拼命捡枪捡子弹什么的。这些都是游戏人物的重要道具。

下面我们就继续以《回村》为例子,在其中加入道具拾取和过关判定。
先把游戏环境概念图画出来。
1、森林里有牛肉
2、小山里有红酒
3、湖泊边有强盗

获胜判定:
带着牛肉和红酒,避开强盗,回到村庄即获胜。否则游戏继续。
好了,现在就在代码中更新道具和强盗。
代码地址:
https://github.com/IoToutpost/Python_game
Gohome.py是之前的版本,Gohome_v0.2.py是我们加了道具的版本。
需要注意的是,我们现在用字典来存储地点、方向和道具了。这样对于数据读写来说会更方便。
Python中的字典是啥?
字典是Python中唯一内建的映射类型。字典中的值并没有特殊的顺序,但是都存储在一个特定的键(Key)里。键可以是数字、字符串甚至是元组。
字典由多个键及与其对应的值构成的对组成。每个键和它的值之间用冒号(:)隔开,项之间用逗号(,)隔开,而整个字典由一对大括号括起来。字典中的键是唯一的,而值并不唯一。

好了,跑一下试试。

到此,一个简单的RPG游戏算是做好了。
如果想让游戏更好玩,要加的东西还很多。比如战斗元素,生命值,时间……探索无止境。
注:这个系列的文章是写给新手的,高手就不用看了哈。当然,欢迎指导,欢迎分享更有意思的版本。