前言

上一节Scratch编程课程,我们已经实现了使用列表来记录黑白棋子的落子情况。那么,对于这些记录在列表中的数值,我们约定0代表没有棋子,1代表对应的位置是黑棋,2代表对应的位置是白棋。

今天的Scratch编程课程,我们就会使用这些数据,来判断是否五子连珠。这里,我还要特别告诉大家,本节课的代码不是最终代码,如果直接讲最终代码,大家很有可能听不懂,所以我还是一步一步从头说起。

落子在列表中的编号

请大家先看一下图1。

上一节,我们讲过,为了代码容易理解,我们新建了“左下角开始的行数”和“左下角开始的列数”两个变量。

这节课,同样的道理,我们建立新变量“落子在列表中的编号”。为了更好地理解,请大家对比图1和上一节课的代码。

如何用scratch编写一个闯关游戏(50.Scratch青少年编程实例教程)(1)

图1

那么,现在,图1中,一共有了3个变量,并且我们给它们都取了个有意义的名称。也就是一看就知道这个变量是存放什么数据的。它们的功能仅仅是方便代码的阅读么?当然不是。另外一个重要的功能就是,后续的脚本如果想要计算“行数”、“列数”或者“编号”的时候,就不用再重新写代码计算了,直接使用这个变量就可以了。就像我前面课程讲的,变量就像一个盒子,用来存放内容,大家都可以随时去查看变量里存放了什么内容。

判断是否五子连珠

首先,我要告诉大家,我们首先进行横向的判断。也就是判断落下的棋子和它左右两端的棋子,能否五子连珠!当你把这部分理解了,其它三个方向,即上下、右上左下、右下左上,就都迎刃而解了。

现在,我们看图2,和“更新落子情况”一样,我们把“判断是否五子连珠”写在“自定义积木”中。

如何用scratch编写一个闯关游戏(50.Scratch青少年编程实例教程)(2)

图2

下面我来解释这段代码:

再看图3的代码,他们是接着图2的代码的,为了方便讲解,我将它分开。


如何用scratch编写一个闯关游戏(50.Scratch青少年编程实例教程)(3)

图3

最后,对连珠总数进行判断,如果大于4,发出赢棋广播。

如何用scratch编写一个闯关游戏(50.Scratch青少年编程实例教程)(4)

图4

演示效果

本节Scratch编程课程最终效果,我录制了视频,请大家点击下面的视频观看。


本次Scratch编程课程就讲到这里,后续课程见!

本文所有图片、视频及文字内容,均为原创,转载时请保留版权信息。

查看更多Scratch编程教程,请点击下一行的了解更多,进入程序员猪猪的头条主页。

点击关注,每天接收更新哦。

,