从0开始用python写一个命令行小游戏(四)

发布时间:2019-08-05 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了从0开始用python写一个命令行小游戏(四)脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

嗯,还是我,我又回来了——以后文章就两天一篇吧。讲点搞笑的,最近在开发v1.1 beta 3时,发现Python最令程序猿头疼的一点就是没有swITch/case语句。要匹配值,就得不停地if...elif...实在头疼。后来我想到了一种方法:字典!于是···

@H_304_5@
config = {value1: func1, value2: func2...}
config[xxx]()

哈哈,脑洞清奇吧?好,进入正题!首先,我的前作链接:

  1. 从0开始用python写一个命令行小游戏(一)
  2. 从0开始用python写一个命令行小游戏(二)
  3. 从0开始用python写一个命令行小游戏(三)

今天要干什么来着?对了,用户界面!

用户界面:第二步

上次我们定义的Game类是这样的:

import game_obj as o

class Game:
    def __init__(self):
        o.sunlight = 50
        o.board = [0] * 10
        self.sunlight = o.sunlight
        self.board = o.board
        import json
        with oPEn("level.json") as fr:
            self.steps = json.load(fr)

但既然是用户界面,那总得输出点东西吧!好,这就定义过一步的方法:

def step(self):
    PRint("Sunlight: %d." % self.sunlight)
    print("current state:")
    for obj in self.board:
        if isinstance(obj, o.GameObject):
            obj.step()
        print(obj, end='  ')

试一试:

@H_126_139@In [1]: From game import Game

In [2]: Game().step()
Sunlight: 50.
Current state:
0  0  0  0  0  0  0  0  0  0  

In [3]: g = Game()

In [4]: import game_obj as o

In [5]: o.Sunflower(0)

In [6]: g.step()
Sunlight: 25.
Current state:
s  0  0  0  0  0  0  0  0  0  

好,可以用“自动”方式玩游戏了。但自动的僵尸呢?哎,别急,那是后话······

下集预告

下次,我要把游戏变得全自动!具体工作:令僵尸自动出现,和让用户用命令控制游戏!这些工作完成后,就可以发布v1.0 beta 1了!!!欢迎继续关注!

脚本宝典总结

以上是脚本宝典为你收集整理的从0开始用python写一个命令行小游戏(四)全部内容,希望文章能够帮你解决从0开始用python写一个命令行小游戏(四)所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。