第8课 在Scratch中使用摇杆――猴子接香蕉
小猴子最喜欢吃香蕉。可是这次,它遇到了麻烦,调皮的香蕉被施了魔法,会随机地出现在不同的地方;让我们使用传感器板上的摇杆,帮助小猴子接香蕉,让它在规定时间内得到更多的香蕉。
要完成本课范例,可以先添加舞台、角色,设置舞台和角色的初始状态,然后让香蕉随机地出现在舞台上,同时通过用户拨动摇杆,控制猴子在舞台上移动。如果猴子接到香蕉,会累积成绩,还可以设置游戏的持续时间,在规定的时间内接到的香蕉越多成绩越好。 要完成本课的创意构思,需要了解以下的新知识、使用以下的新指令:
摇杆可以前、后、左、右四个方向拨动,接收用户位移的数据,可以非常方便地控制角色在Scratch舞台上移动。
读取传感器板上摇杆的X轴数值,取值范围(0,1023)。
读取传感器板上摇杆的Y轴数值,取值范围(0,1023);
我发现:_____________________________________________________________ ____________________________________________________________________
通过“背景库”对话框添加“lake”图片作为舞台背景;再通过“角色库”对话框添加猴子(Monkey2)、香蕉(Bananas)角色;调整这两个角色的大小、将它们拖动到舞台的合适位置。 隐藏舞台上除“摇杆X”和“摇杆Y”以外,其它无关的传感器数值。
香蕉是由程序自动控制、随机出现在舞台上,考虑到猴子都是在树林中活动,因此香蕉角色出现的位置应该只是舞台上的树木区域。当“香蕉”角色碰到“猴子”角色、或者停留一定的时间后自动消失,然后重新在新的位置出现。
猴子角色的脚本共有三段。其中第一段脚本通过检测摇杆的值,控制猴子在舞台上移动。 编写这段脚本时要注意:摇杆在不操作时,数值也会在一定的范围内变化,这属于正常的数据漂移现象。为了调试方便,实际编程时,具体的摇杆数值可以取整十、整百的近似数。 第一段脚本如下图所示:
这段脚本先设置猴子的初始位置和大小,然后使用重复执行和4个判断指令,通过读取当前摇杆的数值,并且与不操作摇杆时的数值进行比较,从而决定猴子的移动方向:如果摇杆X大于X轴数据漂移的最大值,猴子向右移动;如果摇杆X小于X轴数据漂移的最小值,猴子向左移动;如果摇杆Y大于Y轴数据漂移的最大值,猴子向上移动;如果摇杆Y小于Y轴数据漂移的最小值,猴子向下移动。
第二段脚本是进行成绩统计。先添加一个变量“成绩”,并设置这个变量的初始值是“0”,用来保存接到香蕉的个数;然后判断猴子是否碰到香蕉,如果碰到,那么“成绩”变量值加1、播放“猴子”角色自带的声音、同时说出当前所接到的香蕉数量。
第三段是通过“猴子”角色的造型切换,让游戏更好玩。
舞台背景脚本是对游戏时间进行控制。先添加一个“时间”变量,并设置这个变量的初始值是“30”,也就是倒计时30秒;然后每过一秒,“时间”变量值减少“1”,一直重复执行到“时间”变量值为“0”;最后停止全部角色脚本。
摇杆在各类游戏中的应用非常广泛,可以灵活地控制角色在舞台上移动。请你思考一下,利用摇杆还可以设计一个怎样的游戏? 我制作的这个作品在“好好搭搭”网站上共享的名称是_______________________;综合网友给我提的建议,我认为还可以在以下方面进行改进:______________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________
|