从零开始5——简陋版坦克大战(2)
往期内容
从零开始5——简陋版坦克大战(1)
从零开始制作一款游戏4——DarkRoom-I改进版
2020新春献礼——从零开始制作一款游戏3
从零开始制作一款游戏2——非酋勿入
从零开始制作一款游戏
那是什么
《从零开始》系列旨在帮助编程界的菜鸡(我是指初学者
)学习编程,每一篇《从零开始》文章会通过一个编程实例,帮助大家学习一些C++
或Python
知识。
正文
上一篇文章我们使用Pygame中的pygame.draw.rect()
函数成功地画出两个简陋的坦克:
如果你的电脑中还没有Pygame
,我劝你去看一下上一篇文章或者在命令行(你可以用cmd
或PowerShell
)输入pip install pygame
。如果你不知道什么是pip,在这里我就跟你说下:
pip 是 Python 包管理工具,该工具提供了对Python 包的查找、下载、安装、卸载的功能。
目前如果你在 python.org 下载最新版本的安装包,则是已经自带了该工具。
Python 2.7.9 + 或 Python 3.4+ 以上版本都自带 pip 工具。
pip 官网:https://pypi.org/project/pip
你可以通过pip list
或pip --version
来判断是否已安装pip。
如果没有安装,那你可以用这个命令来安装
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
然后在安装的文件夹中运行以下命令:
python get-pip.py
警告:如果使用由操作系统或其他包管理器管理的 Python 安装,请小心谨慎。 get-pip.py不与这些工具协调,并且可能会使系统处于不一致状态。
如果有遗漏,你可以去官方的pip
文档看:https://pip.pypa.io/en/stable/
是时候让坦克动起来了!首先,我们要获取键盘事件:把以下代码写进主循环,也就上次编写的这段代码
中,注意,是写在for
循环下面:
pygame.KEYDOWN
和pygame.KEYUP
可以监测当前的键盘事件并打印在终端上,可能会有人让你用pygame.key.get_pressed()
这个函数来获取键盘指令,其实他们两个都差不多,当你按下一个键,他会输出相应的操作:
到目前为止,我们的坦克还没有动起来,还停留在玩一二三木头人的阶段,那怎么让它动起来呢,我们下一篇文章再说~
不过,在那之前,我们要对代码做一些小改动:
首先,把之前弄好的坦克们的各类数值修改一下,就是这段代码:
把它改成:
剩下的子弹和颜色参数就暂时不用改了,这样修改的目的是为了能方便地修改坦克的位置,让接下来的坦克移动更容易实现。
就写到这里,剩下的代码下一篇文章再说