Scratch2.0接苹果小游戏讲义整理

yumo6666个月前 (06-17)技术文章49

Scratch2.0接苹果小游戏概貌见动图:


这又是一款经典的Scratch小游戏,是孩子们学习Scratch编程软件的良好载体,不容错过。

(一)玩法说明

  • 接到慢速的红苹果一个加1分;
  • 接到中速的红苹果一个加2分;
  • 接到快速的红苹果一个加3分;
  • 接到超快而且稀有的金苹果一个加10分;
  • 接到快速且较多的绿苹果一个减5分;
  • 篮子在屏幕下方左右移动,使用键盘上的“←”、“→”键。

(二)角色与脚本

(1)角色一览:


如果把“舞台”算作一个“大角色”,则一共有7个角色。或许这样并不恰当,但此处混用“舞台”和“角色”的概念,只是因为抓住了“都要编写脚本”这个共同点。

(2)舞台背景与脚本:



舞台脚本的核心目标是营造一个“3、2、1、开始”的倒计时准备场景,作为游戏的开端。

(3)篮子脚本:


这里储存的是本游戏中的核心脚本。当绿旗被点击时,游戏开始,舞台脚本同步执行“倒计时场景”,此时篮子应当同步执行隐藏(如上图“中上”位置脚本);当接收到“游戏开始”的广播后,上图中左、右位置脚本开始执行,左边脚本负责“随机、按比例”克隆各类苹果,右边脚本用于控制篮子在屏幕下方左右移动,并时时判断程序的结束;右下位置脚本用于结束程序,营造游戏的结束画面、音效,触发条件是当计数结果达到苹果总数时,广播“游戏结束”的命令发出。

(4)各类苹果脚本:






这一众苹果的脚本是类似的,可以先做好一个苹果后,复制、修改其他的苹果。唯独不同的是下落的速度、累计的分值。另外,绿苹果被接到时,播放的是与其他苹果落地时一样的“失败的音效”,而绿苹果落地时是没有声音的。值得注意的是,这一众脚本的启动事件是:“当作为克隆体启动时”,也就是说,一旦有指定类型苹果被克隆(父体产生了子体),则相应“子苹果”脚本会开始运行。

(三)编写要点

  • 通过学习使用不同的脚本启动事件,了解脚本间的调用关系,树立“主程序”、“一级子程序”、“二级子程序”……的结构观念。


  • 建立角色由于“克隆”操作而产生的关于“父体”与“子体”的观念,知道“子体”会继承“父体”的一切特性,要营造“变异”的效果,则要专门编写脚本。比如:当父体隐藏时,所有子体也会隐藏,所以子体运行前需要加入“显示”的命令。
  • 进一步活学活用“随机数”。本游戏的随机数主要用在两个方面。一是随机、按比例产生五种苹果。本文脚本中的处理办法是:随机数在0.8~1之间产生绿苹果,随机数在0.6~0.8之间产生金苹果,随机数在0.4~0.6之间产生红快苹果,随机数在0.2~0.4之间产生红中苹果,随机数在0~0.2之间产生红慢苹果。二是控制“子体”苹果初始掉落的位置,所谓“屏幕上方”,可以固定y坐标在180左右(根据角色大小、中心点不同灵活设置),x坐标的左右移动范围可限定为:-225~225,这个范围与篮子左右移动的范围应当一致。为何这样选取?与篮子左右移动“步幅大小”有关,本文中测试得到的步幅是25,从中心点0左移9步到-225,右移9步到225。(当然,也可以根据具体游戏情况灵活设定,此处只作参考)
  • 计分系统用于记录游戏的实时结果、判断游戏的结束。游戏的结束条件必须在“所有子体苹果”全部被删除后才能触发,否则,当游戏结束时,会有最后几个苹果还在掉落的中途,十分仓促。好的计分系统加上随机的策略,会让游戏充满挑战意味。
  • 最后提一句,本游戏极易扩展为“飞机大战”,留待今后。


相关文章

Scratch少儿编程进阶篇12-超简单趣味贪吃蛇

超简单趣味贪吃蛇—Scratch少儿编程进阶篇前言进阶篇是Scratch编程的综合应用,通过进阶篇的内容,希望大家能够有以下三个方面的收获:1. 通过Scratch软件,能提高自我创造能力和问题解决能...

scratch编程———绘制五角星#scratch

这个视频绘制的是五角星。·首先要给画笔设置一个初始化状态。·然后找到事件里面的当,按下空格键,找到移动10步改为100步,右转15度改为144度。·找到控制里面的重复执行10次改为5次。之前是抬笔的状...

scratch新手教程第16课:制作“星球大作战”的小游戏

今天我们来完成一个星球大作战的小游戏,这个游戏是一个经典的飞机游戏,我们控制的角色出现在屏幕下,我们可以控制角色左右移动或上下移动;敌人会从屏幕上方不断出现,我们控制的角色要是碰到了敌人,游戏结束。整...

Scratch编程 + 数学 的课程设计

徐老师编程课堂:适合scratch编程 结合学科知识,在学习编程的过程中掌握数学知识,摆脱图形化编程只能做游戏的层次...

一道看似简单实则困难的数学题的Scratch编程解法

一道看似简单实则困难的数学题的Scratch编程解法题目是这样的:将一个正整数的个位放到首位,变成原来的2倍,求满足条件的最小正整数。题目的意思很简单,小学生都能读懂,比如原数为357,将个位7放到首...