AppInventor学习笔记(五)——瓢虫快跑应用学习
一、瓢虫引入
1:加入控件:

先引入方框中含有的控件,里面有两个画布,一个图像精灵,一个重力感应,一个时钟(设为10Ms)。顺手改名。设置图像精灵的移动speed为10,并且引入瓢虫的图像
2、加入逻辑
编程思路为,先加入一个一直调用的函数(时钟),即这个是程序中不断运行的代码。只要到10ms就调用一次。

所以我们应该编写一个不断对瓢虫进行绘图的函数进行引入

首先设置一个生命值的全局变量。global energy
然后编写一个程序为updateLadyBug,用于不断对瓢虫进行绘图操作。逻辑为:随着时间推移,能量不断减1,并且用DisplayEnergy进行生命值的绘图。生命值的绘图意思是:首先绘制底色为白色,然后再以global energy的值为像素值来绘制红色的血条。
之后,如果生命值为0,则,进入gameover状态,在这个状态,使得LadayBug的各种使能全部关闭,并且替换图片为死掉的图片,关闭重力感应。
在生命值不为0的时候,设置瓢虫移动的方向为重力感应的方向,设置速度为倾斜程度正相关。
二、蚜虫的引入
1、组件加入

再次加入一个图片精灵,
2、加入逻辑

加入更新蚜虫的逻辑功能

使用一个随机功能,在这里,设置有%20的可能性使得蚜虫变换移动的方向(据说比较合理),然后在预设一个死掉之后复活的函数,也就是说在拨一个随机数,有%80*%5的可能性复活,而在活着的时候并没有影响。

如何完成吃掉蚜虫的功能,则是使用碰撞检测功能,编写一个新的函数为eatAphid,如果吃掉后,能量加50,然后设蚜虫属性为false,之后再设定下一次出现的地点。

使用封装好的函数进行设计。
如果检测到与蚜虫进行碰撞且蚜虫可见,则调用吃掉蚜虫函数。
三、青蛙的引入
1、加入组件

加入一个图片精灵
2、加入逻辑

加入一个刷新青蛙行动的函数

有10%的可能性进行移动方向的改变(即大概100ms改变一次)

加入碰撞检测(青蛙和瓢虫的),这样子的话,完成游戏的总体框架的搭建。
四、重新开始的加入
1、组件加入

2、逻辑加入

就是进行所有的还原即可。
五、加入计分板



2、加入逻辑


加入逻辑如果活着则加0.1,并改变label上的数值。

在重新开始中进行还原,最后即可完成制作。
AppInventor学习笔记(五)——瓢虫快跑应用学习的更多相关文章
- go微服务框架kratos学习笔记五(kratos 配置中心 paladin config sdk [断剑重铸之日,骑士归来之时])
目录 go微服务框架kratos学习笔记五(kratos 配置中心 paladin config sdk [断剑重铸之日,骑士归来之时]) 静态配置 flag注入 在线热加载配置 远程配置中心 go微 ...
- Java IO学习笔记五:BIO到NIO
作者:Grey 原文地址: Java IO学习笔记五:BIO到NIO 准备环境 准备一个CentOS7的Linux实例: 实例的IP: 192.168.205.138 我们这次实验的目的就是直观感受一 ...
- C#可扩展编程之MEF学习笔记(五):MEF高级进阶
好久没有写博客了,今天抽空继续写MEF系列的文章.有园友提出这种系列的文章要做个目录,看起来方便,所以就抽空做了一个,放到每篇文章的最后. 前面四篇讲了MEF的基础知识,学完了前四篇,MEF中比较常用 ...
- (转)Qt Model/View 学习笔记 (五)——View 类
Qt Model/View 学习笔记 (五) View 类 概念 在model/view架构中,view从model中获得数据项然后显示给用户.数据显示的方式不必与model提供的表示方式相同,可以与 ...
- java之jvm学习笔记五(实践写自己的类装载器)
java之jvm学习笔记五(实践写自己的类装载器) 课程源码:http://download.csdn.net/detail/yfqnihao/4866501 前面第三和第四节我们一直在强调一句话,类 ...
- Learning ROS for Robotics Programming Second Edition学习笔记(五) indigo computer vision
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Typescript 学习笔记五:类
中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...
- go语言,golang学习笔记4 用beego跑一个web应用
go语言,golang学习笔记4 用beego跑一个web应用 首页 - beego: 简约 & 强大并存的 Go 应用框架https://beego.me/ 更新的命令是加个 -u 参数,g ...
- ES6学习笔记<五> Module的操作——import、export、as
import export 这两个家伙对应的就是es6自己的 module功能. 我们之前写的Javascript一直都没有模块化的体系,无法将一个庞大的js工程拆分成一个个功能相对独立但相互依赖的小 ...
随机推荐
- linux的cgroup控制
cgroup:control group-控制群组:将用户(的进程)加入某个群组(又叫控制器controller), 通过 指定群组对资源-cpu 内存 network等的使用,来限制用户对计算机资源 ...
- Linux下scp命令使用
linux下scp命令主要是用来远程拷贝文件,下面介绍两种使用方法 1,拷贝本机文件到远程文件 举例子:把我本地的change目录下的changeFile.txt上传到远程192.168.2.88的k ...
- Vimer的福音 新时代的Vim C++自动补全插件 clang_complete
使用vim的各位肯定尝试过各种各样的自动补全插件,比如说大名鼎鼎的 OmniCppComplete .这一类的插件都是对 Ctags 生成的符号表进行字符串匹配来获得可能的补全项.他们在编写 C 代码 ...
- git 笔记- 概念
本文参考书中内容 http://cnpmjs.org/ 镜像文件 下载插件的镜像 可参考fis 对于任何一个文件,在Git 内都只有三 种状态:已提交(committed),已修改(modified) ...
- WiFi入口流量O2O微应用平台
WiFi入口流量O2O微应用平台 随着智能手机一年比一年销量大好,传统的互联网的流量争夺战场已经转向了移动互联网,各大巨头纷纷出招,智能wifi路由器就是其中最重要的一块战略高地.所谓的智能路由器,解 ...
- NYOJ 106背包问题
http://acm.nyist.net/JudgeOnline/problem.php?pid=106 背包问题 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 现 ...
- maven3 junit4 spring3 jdk8 :junit一直报错,害的我几个星期都是这个错,你妹的!
[org.springframework.test.context.junit4.SpringJUnit4ClassRunner]SpringJUnit4ClassRunner constructor ...
- Android 使用dip单位进行布局的一点知识
先看看怎么算出一个设备的dpi, 其实就是算出对角线上有多少个px,之后除上屏幕尺寸.比如,1280*720 的10.1寸设备,dpi = (sqrt(1280*1280+720*720)) / 1 ...
- mysql 源码下载列表
2013年11月16日 14:57:04 http://download.softagency.net/MySQL/Downloads/MySQL-5.5/ http://code.google.co ...
- Hadoop 2.6.0 集群部署
Hadoop的集群部署和单节点部署类似,配置文件不同,另外需要修改网络方面的配置 首先,准备3台虚拟机,系统为CentOS 6.6,其中一台为namenode 剩余两台为 datanode: 修改主机 ...