详解用65行javascript代码做Flappy Bird

详解用65行javascript代码做Flappy Bird

点击查看特效

JavaScript做Flappy Bird游戏,代码仅仅65行

资源包括:

  1. javascript源码:phaser.min.js;main.js;index.html

  2. 素材:两张图片!

详解用65行javascript代码做Flappy Bird

素材

PS:素材源码下载来我的前端群570946165,已上传群文件!

第一步:场景的建立

index.html中代码:详解用65行javascript代码做Flappy Bird

index.html

加载两个javascript文件。

main.js中,先创建一个空的场景;详解用65行javascript代码做Flappy Bird

main.js

第二步:鸟的制作与移动;

我们首先在场景中添加一只鸟,当我们按空格键时或者点击鼠标左键会跳动。

更新了preload(),create()和update()功能。
详解用65行javascript代码做Flappy Bird

素材源码下载来我的前端群570946165,已上传群文件!



详解用65行javascript代码做Flappy Bird

第三步:测试;

搭建本地服务器进行测试,详解用65行javascript代码做Flappy Bird

第五步:制作管道;

首先,我们在preload()函数中加载管道精灵。

game.load.image('pipe', 'assets/pipe.png');

由于我们将在游戏中处理很多管道,所以使用称为“组”的Phaser功能更为容易。该小组将简单地包含我们所有的管道。要创建组,我们在create()函数中添加它。

// Create an empty groupthis.pipes = game.add.group();

现在我们需要一个新的功能来在游戏中添加一个管道。我们可以用新功能来做到这一点。

详解用65行javascript代码做Flappy Bird

素材源码下载来我的前端群570946165,已上传群文件!

详解用65行javascript代码做Flappy Bird

javascript代码测试之后:

详解用65行javascript代码做Flappy Bird

第六步:得分和碰撞

最后一件事是添加分数和处理碰撞。

我们将其添加到create()功能中,以显示左上角的得分。

this.score = 0;this.labelScore = game.add.text(20, 20, "0",

我们把它放在了addRowOfPipes(),每次创建新的管道时,增加1分。

this.score += 1;this.labelScore.text = this.score;

接下来,我们在update()函数中添加这一行,以便在restartGame()每次鸟类与pipes
组中的管道相撞时进行调用。

game.physics.arcade.overlap( this.bird, this.pipes, this.restartGame, null, this);

最后:恭喜你完成游戏!详解用65行javascript代码做Flappy Bird

如果想要更多的企业求职加分项目,案例,学习方法可以来一下我的前端群570946165,每天都会精挑细选一个特效,项目出来详细讲解,分享!包括答疑解惑!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/290379.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C和指针之数组编程练习5 (矩阵相乘)

1、问题 5.如果A是个x行y列的矩阵,B是个y行z列的矩阵,把A和B相乘,其结果将是另一个x行z列的矩阵C。这个矩阵的每个元素是由下面的公式决定的: 例如: 结果矩阵中14这个值是通过2-2加上-6-3得到的,编写一个函数,用于执行两个矩阵的乘法。函数的原型如下: void matrix_mul…

我的技术回顾因ABP框架触发DevOps云原生之路-2020年

我的技术回顾:2015年:我的技术回顾那些与ABP框架有关的故事-2015年2016年:从ABP框架国内社区发展回顾.NET技术变迁-2016年2017年:我的技术回顾那些与ABP框架有关的故事-2017年2018年:我的技术回顾那些与ABP框架有关的故…

半身头像

画的好丑。。。继续加油 转载于:https://www.cnblogs.com/manlurensheng/p/4102631.html

Swift - 操作SQLite数据库(引用SQLite3库)

SQLite轻量级数据库在移动应用中使用非常普遍,但是目前的库是C编写的,为了方便使用,对SQLite相关的操作用Swift进行了封装。这个封装代码使用了一个开源项目SQLiteDB,地址是:https://github.com/fahimf/sqlitedb 重要事…

如何在Clion中使用C++调用Python代码

在很多时候,我们需要在一个c工程项目中调用部分Python代码,这就需要我们实现Python和C之间的交互。交互方式有两种:1. 依靠 TCP 建立的网络通信交互;2. 嵌入式混合语言编程(Embedding Code)。这里主要介绍后…

.NET6之MiniAPI(二十四):用Polly重试

为了保障系统的稳定和安全,在调用三方服务时,可以增加重试和熔断。重试是调用一次失败后再试几试,避免下游服务一次闪断,就把整个链路终止;熔断是为了防止太多的次数的无效访问,导致系统不可知异常。Polly是…

CLion 中使用 C++ 版本的 OpenCV

配置环境: Windows 10CLion 2020OpenCV 3.4.1MinGW-w64 1. 下载 CLion 并配置好 MinGW CLion 下载地址:https://www.jetbrains.com/clion MinGW 安装包下载地址:链接:https://pan.baidu.com/s/1c00uHbcf_jGeDDrVg99jtA 提取码&…

如何理解 C# 中的 System.Void 类型?

咨询区 ordag我知道方法声明成 void 表示不返回什么东西,但我发现在 C# 中 void 不仅仅是一个关键词,而且还是一个真实的类型。void 是 System.Void 的别名,就像 int 的别名是 System.Int32 一样,但为什么不允许直接使用Void类型呢…

获得手机的ip

本文转载至 http://blog.csdn.net/showhilllee/article/details/8746114 iosip手机貌似ASI里获取ip地址的链接不可以了。也曾试过whatismyip,在其网站上的截图获取的ip是正确的,单不知道为什么在我这里却是错误的。所以,在这里分享一下获得手…

Idea maven项目不能新建package和class的解决

如图,新建的maven项目不能新建package 这是因为Java是普通的文件夹,要设置为 现在就可以了

基于文本知识库的强化学习技术——Learning to Win by Reading Manuals in a Monte-Carlo Framework

论文链接:http://people.csail.mit.edu/branavan/papers/acl2011.pdf 文章目录1. 背景介绍2. 将攻略文本引入值函数 Q(s,a)Q(s, a)Q(s,a) 评价2.1 复杂环境下使用传统 Q(s,a)Q(s, a)Q(s,a) 函数的缺陷2.2 设计 Q(s,a,d)Q(s, a, d)Q(s,a,d) 神经网络2.3 模型训练流程…

这是Blazor上传文件的最佳方式吗?

Blazor不得不说真是好东西,极大的提升了开发效率,很多的页面交互功能基本上只需要写很少的代码就能实现了,而且还是无js实现,你也绝对没有想到过,Blazor实现文件上传是有多么简单!先说结论:Blaz…

ubuntu 下安装五笔输入法

2019独角兽企业重金招聘Python工程师标准>>> 从两年开始用五笔的吧,自从我学会用五笔之后,基本上就没有用过拼音了,我记忆中使用拼音也就那么几次,好像都是在远程协助别人的时候,用他们电脑上的拼音。然后我…

openstack horizon国际化分析

2019独角兽企业重金招聘Python工程师标准>>> 参考 官网国际化介绍:https://docs.djangoproject.com/en/1.7/topics/i18n/translation/#module-django.conf.urls.i18n Django模板(网页多语种支持/国际化): http://blog.…

6. 堪比JMeter的.Net压测工具 - Crank 实战篇 - 收集诊断跟踪信息与如何分析瓶颈

1. 前言上面我们已经做到了接口以及场景压测,通过控制台输出结果,我们只需要将结果收集整理下来,最后汇总到excel上,此次压测报告就可以完成了,但收集报告也挺麻烦的,交给谁呢……找了一圈、没找到愿意接手…

被AI人机疯狂单杀?王者荣耀AI“绝悟”亲测体验

文章目录(一) 如何评测“绝悟”的智能程度?(二)“绝悟”个体操作能力分析2.1 草丛埋伏2.2 越塔强杀2.3 技能避伤2.4 技能combo(三)“绝悟”团队意识能力分析3.1 团队支援3.2 团队控龙3.3 反野意…

background意识(两)

今天看到了有关学习的价值的文章background于background-position该博客,现在与大家分享:语法: background-position : length || length background-position : position || position 取值: length:百分数 |由浮点数字…

js 月份加6个月_美国切削工具6月份订单较上月增加10.1

根据美国切削工具协会(USCTI)和AMT美国制造技术协会的数据,2020年6月,美国切削工具的总消费额为1.506亿美元。根据参与切削工具市场报告合作的公司报告,这一总额比5月份的1.368亿美元增长了10.1%,与2019年6月报告的1.997亿美元相比…

selenium 使用js执行脚本儿链接整理

2019独角兽企业重金招聘Python工程师标准>>> 使用Webdriver执行js小结:http://lijingshou.iteye.com/blog/2018929 SeleniumWebdriver学习(三)执行JS脚本:http://www.tuicool.com/articles/buIbeiN selenium webdriver 执行javascript代码&am…

接口返回json对象出现套娃递归问题 | System.Text.Json 版本

前言看到一篇文章《Asp-Net-Core开发笔记:接口返回json对象出现套娃递归问题》原文是使用 NewtonsoftJson 解决的返回json对象出现套娃递归问题:services.AddControllersWithViews().AddNewtonsoftJson(options > {options.SerializerSettings.Refere…