导 语
上期
给大家讲了一个《推箱子》游戏
这是是正宗的pygame模块开发的
这一期
给大家介绍一个非常好玩的模块turtle
这是一个专门画画的模块
但是
用来开发简单的小游戏
也是很靠谱的哦!!
我们就介绍一下今天的《打气球》
另外
如果大家有什么小游戏的想法
也可以和我们讨论哦
效果演示
ss
开发工具
python3.6.4
第三方库:turtle,random
讲解部分
上次讲的《推箱子》游戏,我们用到的是pygame这个模块。这是专门用来开发游戏的第三方库。功能非常多。
不过,除此之外,我们还是可以用一些简单的模块做一些简单的轻量级游戏比如说。我们用来画画的模块turtle。就可以用来做一个简单的游戏。
那就是我们今天要讲的《打气球》
游戏规则如下:
在这个游戏界面中。不断有气球从界面底部,匀速上升。
气球是有一个圆圈和一个线段组成的,非常简单。
在气球上升的过程中,我们用鼠标点击气球,如果点击到了。那么这个气球就破裂了。
我们要做的就是不断的点击气球。
基本原理:
在这一期中,我们讲一讲这个游戏的基本原理。
首先我们要设置画布的大小,比较简单的方法是用下面这个函数
setup(420,420,0,0)
这个函数指的是用setup设置一个高度为420,宽度也是420的画布。
这个画布的开始坐标为(0,0)。
其中还要调用tap函数进入游戏代码。获取到鼠标按键位置。这就是打气球的关键步骤。
当然,这一期我们要讲的关键内容还是如何画一个气球。
我们用列表表示所有的气球。
balloons=[] #气球队列
如果我们用随机数生成了一个气球,那么我们就在这个列表中添加这个气球。
反之,如果我们打破了一个气球,那么我们就在列表中删除这个气球。
其中的line函数作用就是设置画笔的基本参数,然后画一个气球。
def line(x,y,a,b,line_width=1,color_name="black"): #默认气球线宽度为1,颜色为黑
up()
goto(x,y)
down()
color(color_name)
width(line_width)
goto(a,b)
然后,我们在draw函数中调用这个line函数。用for循环的方式将列表里面所有的气球全部画出来。
画完之后,我们将画笔提起来,以免污染画布。
然后,我们在更新一下画布。
最后,我们模拟气球上升。
balloons[-i][1]=balloons[-i][1]+1
这样设置的气球,每次上升一个单位。
这样,气球就能匀速上升了。
下期预告:
到了下一期,我们将给大家具体讲一讲怎么打气球。
作者|齐