面向3-8岁的幼儿儿童
免费编程入门启蒙网站

潘多拉Scratch零基础魔法编程(三)剪刀石头布

经过上一讲的突击训练,我们从门外汉开始走向编程的深坑,我们今天还要对上一讲的游戏进行加强。

上一个游戏还能演变成什么游戏呢?

我其实知道你们想到的是老虎机什么的,确实,上一个游戏改改可以变成老虎机,但是我们这不是要教小朋友吗,怎么可以学做老虎机?

大于、等于、小于的比较,是不是和剪刀石头布的游戏很像呢?我们要学点健康的东西。

好了,不会话了,我们开始:

首先,因为一共只有3样东西,剪刀石头布,小猫从当中选一个出来,那么随机范围只有从1-3,我们可以用1代表剪刀,2代表石头,3代表布,如果小猫随机选到了2,那就是说明小猫选了剪刀,同理玩家的选择也是这样。

然后就还是比较双方的数字,一共会有多少情况呢?

1-1,1-2,1-3

2-2,2-1,2-3

3-1,3-2,3-3

一共比较9种情况,再给出结果,

最后我们再循环一下,就可以完成这个游戏。

那我们就先动手试一试看:

1、我们先让小猫给个提示,说明一下数字代表什么;

2、然后新建一个变量,让小猫随机选择的这个数字存入变量中,准备作为比较对象,同时也要让玩家有一个变量,也放入输入的数字进行比较:

然后准备给小猫的变量充值,当然我们程序员都是叫赋值,其实都是一样:

然后再放入上节课我们学的随机模块:

这样小猫就会在1-3中随机选一个数字,对应着也就是剪刀石头布中的一个。

然后再给玩家变量充值,不,是赋值:

看到侦测模块里面的椭圆形的模块了吗,是不是和变量的椭圆形很像?

它就是玩家在输入框中回答之后的内容存储变量,也就是说其实系统在玩家输入数字的时候变量已经建立好了,不过我们为了让程序更有条理看得更清楚,所以再加入了一个“玩家选择的数”变量,那么,我们只要将“回答”这个变量赋值给“玩家选择的数”变量,就可以了:

好了,现在双方都已经选择好了,要开始进行上述的九种情况的比较,这个我们在上节课中也已经讲过,于是就要用经典的“如果……那么……”模块:

但是上节课这里是比较数字大小,那这个石头剪刀布我们怎么比较呢?比小大不可以了啊?

这里我们就要用到新的姿势点:

这是“数字和逻辑运算”功能里面的三个功能模块,第一个是要同时满足两个条件,第二个是只要满足两个菱形内容中的一个,第三个是菱形框中的内容不成立。

这是我们程序员以后会经常接触到的逻辑关系,放在我们今天的游戏里,那么就是“小猫选择了1”且“玩家选择了1”,这个条件如果成立,就可以放在如果……那么中执行判断结果输出“打平了!”,具体怎么做呢?看下图:

将菱形框内放入带等号的菱形框,然后再放入变量:

上图做出来了我们第一个判断情况,那么就按这个方式,我们可以做出其余的八种情况,这里有一个小技巧,我们可以在黄色“如果……那么”模块上,单击鼠标右键,可以出现隐藏菜单:

“添加注释”就是对这一行代码进行批注,你可以选择试一试看,这个不多说;“删除”也很容易理解,这是我们常用的删除代码的方式,我们需要选择的是“复制”,点一下,哎我去,这个功能模块包括里面的模块都完整的拷贝了一份,这样我们就只要修改一下里面的内容就可以了:

修改如下:

看到了吗,我们把9种比较情况全部都通过代码写出来了,如果代码页面太长,我们可以滚动鼠标中间滚轮或是点击右下角的放大缩小按钮:

减号是缩小,等号是整理,加号是放大,都点点看可以了解一下。

这样代码我们基本都写完了,不过我们这样只能玩一次,为了可以不停玩下去,那么我们就需要用到上节课学习的循环模块,如果想玩有限次数,那么就用:

如果不限制,就用:

我们这里用玩5次来试一试,5次之后小猫和我们告别,游戏结束:

点击右下角的减号,缩小代码块,然后放入控制模块里面的重复执行有限次数代码,循环5次后,小猫和我们说拜拜然后全部结束:

游戏已经编写完成,我们把程序跑起来看看:

我先输入个1,点一下蓝色的勾:

哎呀开场就输了,再多跑几次看看有没有错误,程序员叫bug。一定要反复跑几次,仔细检查代码有没有问题。

跑完5次后,小猫和我们告辞,游戏结束。

是不是很快就能写出很酷的游戏了?

就问你有没有成就感?

嗯,有希望,有前途,我们下节课暂时就不继续学代码,学习一点scratch的舞台知识,这个也是非常有趣的内容,我们下回见。


本号可接Scratch书籍教程编写,欢迎出版社前来咨询。

分享到: 更多 (0)