admin 管理员组文章数量: 887021
2024年1月18日发(作者:数据库的建立实验报告)
第四十课 跑酷闯关
今日任务:
今天,我们将利用scratch设计一款类似于跑酷的小游戏,让玩家控制一个人物左右移动+跳跃争取在最短的时间内通关,本节课的程序实现方法比较巧妙,我会在学案及微课中进行详细的讲解,我们开始吧!
过关的触发点
玩家控制的角色,可以左右移动,跳跃
本课重难点:
(1)掌握速度变量的使用技巧;(2)掌握如何将一个角色的各种运动状态拆分成几个模块来处理;(3)学会调试编程中遇到的BUG。
任务解读Flow chart:
开始玩家控制的主角在屏幕固定位置出现
主角接收玩家的键盘控制
N
按下向左键 按下向右键 按下向上键
N
Y
X速度为负数
Y
X速度为正数
Y
是否在黑线处起跳?
N
Y
Y速度为正数
是否跳到最高处?
Y
开始下落,Y速度为负数
跟我来挑战Follow me:
既然我们要做一个完整的作品,那么完整的步骤缺一不可,今天我们再来一次完整的操作步骤展示!
第一步:启动scratch软件;
第二步:点击上方的“文件”→“保存”→保存到桌面,文件名:跑酷闯关→点击“保存”;
(第二步很很很重要,我希望所有的学生都能养成及时保存作品的好习惯!)
第三步:角色设计(本程序中就需要1个角色,一个是随时接收键盘指令的主角)
第四步:场景设计
场景一
场景二
场景三(胜利场景)
第五步:脚本解读
初始化主角一开场出现的位置
变量X,即水平方向的移动速度,正数就是右移速度,负数就是左移速度
变量Y,即垂直方向的移动速度,正数就是上移速度,负数就是下移速度按下左键,主角准备向左移动
不是直接移动,而是给了一个X初速度,向左
按下右键,主角准备向右移动
不是直接移动,而是给了一个X初速度,向右
按下上键,主角准备向上跳跃
这不是跳跃,先将主角下移1个步长
再看主角现在是不是正踩在黑线上?只有踩在黑线上才能起跳!
不是直接移动,而是给了一个Y向上的初速度
Y刚才向下移动了1个步长,现在恢复回去
既然起跳了,那么到了最高点就要开始下落了
但是,下落过程中还要思考,落到(踩到)黑线就停止
但是,下落过程中还要思考,落到(踩到)黑线就停止
如果还在下落,没有踩到黑线,那么Y速度-1,继续向下落,越来越快的下落,有点儿自由落体的意思!
按下左右键后,主角会缓慢停止,速度x0.8就是速度越来越小的意思,缓缓停止!考虑到了地板的摩擦力,游戏效果更加真实了!
(接上程序▲)
主角移动过程中,碰到黑色?碰到了黑线(两边的黑线)
让Y的速度变为负方向的速度,也就是向相反方向移动
如果向相反方向移动还碰到黑线,那么就是碰到了两边的黑线了
X速度变为负方向速度,也就是反弹
速度清零,碰到左右边界黑线停止水平方向的移动
水平方向的运动被取消了,但是Y方向的运动还要继续
同X速度的赋值方式,也是一个运动减缓的过程,因为迟早要运动到最高点再下落啊!
起跳时遇到黑色,那肯定就是水平方向的黑线了,也就是起跳“磕到头”了,那么咋办?
既然磕到头了,那么向相反方向移动呗也就是下落呗!
碰到没关的出发点,继续下一关,一直到通关为止!
课后思考:
课后请同学们思考以下问题:
(1)尝试丰富一下游戏的界面。(2)为游戏增加一些游戏难度,比如怪物,机关等?(3)还没有添加计时器,请同学们自行添加一下吧!(4)将你设计出来的程序和大家分享一下!
版权声明:本文标题:青少年编程教案第四十课 跑酷闯关 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1705538937h489068.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论