游戏介绍:
一个小球在屏幕中移动,碰到边缘反弹回来,下面有一块板在左右移动,接到球之后就反弹,没有接到球的话,则失败。

角色准备
针对这样的一个游戏介绍,我们首先来确定游戏角色:小球、弹板。

角色之弹板的编程

三个角色中,弹板是最简单的,只需要左右移动就可以了,我们首先来针对弹板写一段程序:

1、角色区选中Paddle:

Scratch Desktop作品代码 scratch优秀游戏作品代码_坐标变换


2、脚本区控制弹板,让弹板的X坐标跟随鼠标的X坐标变换。(小贴士:积木块的颜色代表着它在脚本区的位置)

Scratch Desktop作品代码 scratch优秀游戏作品代码_坐标变换_02


3、点击绿旗之后,会发现弹板已经会跟随鼠标左右移动了,但是在左右两边边界的时候会显示成如下所示的情况,一半的板会出现出界的情况。

Scratch Desktop作品代码 scratch优秀游戏作品代码_Scratch Desktop作品代码_03


4、这种情况下,我们可以在左右加上一点限制,让它到了边界不会再越界

Scratch Desktop作品代码 scratch优秀游戏作品代码_坐标变换_04


角色之弹球的编程

弹球在整个游戏中是最重要的存在,它是一只在动的,针对它的程序会复杂一点。1、角色区选中Ball:

Scratch Desktop作品代码 scratch优秀游戏作品代码_scratch_05


2、我们第一步是让小球能够动起来:

Scratch Desktop作品代码 scratch优秀游戏作品代码_scratch_06


3、动起来之后,会发现小球到了最上面就不动了,我们需要他碰到边缘反弹回来:

Scratch Desktop作品代码 scratch优秀游戏作品代码_少儿编程_07


4、此时的小球只会上下直线运动,为了让小球的能够有不同的方向,我们给方向输入一个随机数,这样小球的方向就不再是直线了,而是会在-45°到45°之间直接选取一个随机数来发射这个小球:

Scratch Desktop作品代码 scratch优秀游戏作品代码_Scratch Desktop作品代码_08


5、至此球已经可以正常移动了,我们需要加上碰到弹板的判断以及方向的调整

Scratch Desktop作品代码 scratch优秀游戏作品代码_scratch_09


6、点击绿旗玩一下就会发现,就算弹板不接住弹球,游戏也不会结束,没有什么可玩性。所以我们需要增加球没有被接住时的判断,怎么算没有接住呢?球到板的下面了,我们就认为这个球没有被接住。因此我们选取球的y坐标为判断,球的y坐标小于某一个值时,停止全部

Scratch Desktop作品代码 scratch优秀游戏作品代码_坐标变换_10