Scratch编程:贪吃鱼(十一)
“ 上节课的内容全部掌握了吗?反复练习了没有,编程最好的学习方法就是练习、练习、再练习。一定要记得多动手、多动脑筋哦~~”
01
—
游戏介绍
这是一个小游戏,通过键盘的方向键控制着大鲨鱼追着吃掉海星,每吃掉一只,成绩加1。
02
—
设计思路
- 整个游戏由鲨鱼、海星和两条小鱼组成;
- 用户通过方向键前后左右控制鲨鱼,海星在水里游动,如果鲨鱼碰到海星则消失,2秒后随机出现在水底;成绩加1;
- 其它的小鱼在自由游动;
03
—
实现过程
第一步:创建角色
1,“鲨鱼”角色
从系统角色库中,动物分类,选择“Shark”。
2,“海星”角色
从系统角色库中,动物分类,选择“Starfish”。
3,“小鱼”角色
从系统角色库中,动物分类,选择“Fish”。再复制一条小鱼角色,选择不同的造型。
4,“背景”设置
从系统角色库中,户外分类,选择“Underwater 2”
整体效果如下图:
第二步:代码设计
1,鲨鱼代码设计:
实现通过键盘方向键控制鲨鱼移动。代码如图所示:
2,海星的代码设计
通过两个脚本来实现:
一是海星的移动,如果被抓住则不能移动,通过变量“是否被抓住”来实现,0表示没有被抓住,1表示被抓;
二是海星碰到鲨鱼时的处理:海星被抓住后,停止并且说“我被抓住了”,然后在屏幕的随机位置出现。
3,小鱼的代码设计
两条小鱼的代码实现是一样的,都是让在水里时快时慢的游动。
第四步:运行程序,效果如下图
第六步:保存文件。
在文件菜单下“保存到电脑”就可以把作品保存好了。
04
—
总结
这节课我们应当掌握:
- 熟练应用键盘控制角色的实现;
- 随机滑行的使用;
- 通过来实现两脚本间的相互控制。
05
—
拓展训练
你能想到更多有趣的玩法吗?并加以实现。
Scratch编程:贪吃鱼(十一)的更多相关文章
- Scratch编程:游来游去的鱼(二)
“ Scratch编程学习环境搭建好了吗?让我们一起来进行游戏吧!” 01 — 游戏介绍 这是一款简单的小游戏,实现了一条小鱼在池塘里游来游去. 02 — 设计思路 1,这个游戏主要由一个池塘背景和一 ...
- Scratch少儿编程系列:(十一)Scratch编程之简单见解
一.Scratch官网的说明 With Scratch, you can program your own interactive stories, games, and animations ...
- 少儿编程|Scratch编程教程系列合集,总有一款适合你
如果觉得资源不错,友情转发,贵在分享!!! 少儿编程Scratch: 少儿编程Scratch第一讲:Scratch完美的初体验少儿编程Scratch第二讲:奇妙的接球小游戏少儿编程Scratch第三讲 ...
- C#编程总结(十一)数字证书
C#编程总结(十一)数字证书 之前已经通过文章介绍了数字证书的基础知识,包括加密和数字签名. 具体可见: 1.C#编程总结(七)数据加密——附源码 2.C#编程总结(八)数字签名 这里来讲述数字证书的 ...
- 《陪孩子像搭积木一样学编程》,一起来玩Scratch(1)使用Scratch编程的基本流程
编程是一件很有趣的事情.初次接触编程,你可能不知所措,别担心,这并不复杂.首先,为了让读者对编程有大概的了解,可以把编写Scratch程序的过程分成7个步骤(如图1.8).注意,这是理想状态.在实际的 ...
- Scratch编程小案例:愤怒的小牛
愤怒的小鸟曾经很热门,网上还说他是程序员最喜欢玩的游戏.最先我是WIKIOI的评测页面看到他的,后来在2014年全国信息学奥林匹克联赛第一天第三题飞扬的小鸟也看到了它.因此,突然想做一个类似愤怒的小鸟 ...
- Scratch编程与高中数学算法初步
scratch编程与高中数学算法初步 一提到编程,大家可能觉得晦涩难懂,没有一定的英语和数学思维基础的人,一大串的编程代码让人望而步,何况是中小学生. Scratch是一款由麻省理工学院(MIT) ...
- java并发编程笔记(十一)——高并发处理思路和手段
java并发编程笔记(十一)--高并发处理思路和手段 扩容 垂直扩容(纵向扩展):提高系统部件能力 水平扩容(横向扩容):增加更多系统成员来实现 缓存 缓存特征 命中率:命中数/(命中数+没有命中数) ...
- 并发编程从零开始(十一)-Atomic类
并发编程从零开始(十一)-Atomic类 7 Atomic类 7.1 AtomicInteger和AtomicLong 如下面代码所示,对于一个整数的加减操作,要保证线程安全,需要加锁,也就是加syn ...
随机推荐
- python 使用xpath解析含有命名空间(xmlns)的xml
解决办法: from lxml import etree xml = etree.parse("./cee.xml") root = xml.getroot() print(roo ...
- 洛谷 题解 P2731 【骑马修栅栏 Riding the Fences】
简单的开始 完美の开始 这里数组什么的用来干什么后面标注的清楚了 #include<iostream> #include<cstdio> #include<cmath&g ...
- 使用localstorage.setItem()存储对象
使用localstorage.setItem(name,value)存储JSON对象时会发现浏览器存储的内容为[object,object],并不是我们想要的内容,这是因为我们在存储的时候没有进行类型 ...
- 【18NOIP普及组】对称二叉树(信息学奥赛一本通 1981)(洛谷 5018)
[题目描述] 一棵有点权的有根树如果满足以下条件,则被轩轩称为对称二叉树: 1.二叉树: 2.将这棵树所有节点的左右子树交换,新树和原树对应位置的结构相同且点权相等. 下图中节点内的数字为权值,节点外 ...
- jmap -heap 查看堆内存
概述 用jmap -heap命令可以查看linux堆内存分布 具体用法 1:先查出tomcat的进程号 例如: 然后执行 jmap -heap 7095 可以打印出整体的堆信息 可以看到经过分配的 ...
- rust猜数游戏代码
use std::io; use rand::Rng; use std::cmp::Ordering; fn main() { println!("Guess the number!&quo ...
- java 中利用反射机制获取和设置实体类的属性值
摘要: 在java编程中,我们经常不知道传入自己方法中的实体类中到底有哪些方法,或者,我们需要根据用户传入的不同的属性来给对象设置不同的属性值,那么,java自带的反射机制可以很方便的达到这种目的,同 ...
- 最稳定万能vip视频解析接口 支持HTTPS
最稳定万能vip视频解析接口 支持HTTPS https://cdn.yangju.vip/k/?url=后面加上播放的地址即可 https://cdn.yangju.vip/k/?url= http ...
- docker安装并运行elasticsearch
拉取镜像: [mall@VM_0_7_centos ~]$ [sudo] password for mall: : Pulling from library/elasticsearch 256b176 ...
- [译]如何取消本地的git commit提交?
git reset HEAD~1 原文来源:https://stackoverflow.com/questions/4850717/how-to-cancel-a-local-git-commit