用EC5/EC6自定义class的区别及用法 -- Phaser3网页游戏框架
EC6 自定义class
class Brain extends Phaser.GameObjects.Sprite {
constructor (scene, x, y)
{
super(scene, x, y);
this.setTexture('brain');
this.setPosition(x, y);
}
preUpdate (time, delta)
{
super.preUpdate(time, delta);
this.rotation += 0.01;
}
}
EC5 自定义class
var Bunny = new Phaser.Class({
Extends:Phaser.GameObjects.Sprite,
initialize:function Bunny(scene,x,y,speed){
Phaser.GameObjects.Sprite.call(this,scene);
this.setTexture('bunny');
this.setPosition(x, y);
this.setScale(0.3);
this.speed = speed;
},
preUpdate(time,delta){
this.rotation += (0.01+ this.speed * 0.0001) ;
}
});
完整代码:
var Bunny = new Phaser.Class({
Extends:Phaser.GameObjects.Sprite,
initialize:function Bunny(scene,x,y,speed){
Phaser.GameObjects.Sprite.call(this,scene);
this.setTexture('bunny');
this.setPosition(x, y);
this.setScale(0.3);
this.speed = speed;
},
preUpdate(time,delta){
this.rotation += (0.01+ this.speed * 0.0001) ;
}
});
var config = {
type: Phaser.AUTO,
width: 600,
height: 480,
parent: 'phaser-example',
scene: {
preload: preload,
create: create
}
};
var game = new Phaser.Game(config);
function preload (){
//http://www.ifiero.com/uploads/ifiero-logo_512x512.png
// this.load.image('bunny', 'http://www.ifiero.com/images/ifiero-logo_512x512.png');
this.load.setBaseURL('http://labs.phaser.io');
this.load.image('bg', 'assets/pics/purple-dots.png');
this.load.image('bunny', 'assets/sprites/bunny.png');
}
function create (){
this.add.image(0, 0, 'bg').setOrigin(0).setScale(0.8);
this.add.existing(new Bunny(this, 150, 150,100));
this.add.existing(new Bunny(this, 250, 250,200));
this.add.existing(new Bunny(this, 350, 350,300));
}
更多游戏教学:www.iFIERO.com -- 为游戏开发深感自豪
用EC5/EC6自定义class的区别及用法 -- Phaser3网页游戏框架的更多相关文章
- MySQL存储过程/存储过程与自定义函数的区别
语法: 创建存储过程: CREATE [definer = {user|current_user}] PROCEDURE sp_name ([ proc_parameter [,proc_parame ...
- (转)MySQL存储过程/存储过程与自定义函数的区别
转自:http://www.cnblogs.com/caoruiy/p/4486249.html 语法: 创建存储过程: CREATE [definer = {user|current_user}] ...
- 【存储过程】MySQL存储过程/存储过程与自定义函数的区别
---------------------------存储过程-------------------- 语法: 创建存储过程: CREATE [definer = {user|current_user ...
- 【读书笔记《Android游戏编程之从零开始》】11.游戏开发基础(SurfaceView 游戏框架、View 和 SurfaceView 的区别)
1. SurfaceView 游戏框架实例 实例效果:就是屏幕上的文本跟着点击的地方移动,效果图如下: 步骤: 新建项目“GameSurfaceView”,首先自定义一个类"MySurfac ...
- select into from 和 insert into select 的区别和用法及 SQL SELECT INTO 中Undeclared variable错误解决办法
今天试了一下数据表中的数据备份到另一个空的数据表,然后使用了SQL SELECT INTO语句,然后提示Undeclared variable......错误,现在在这里做下总结并给出解决办法. 应用 ...
- 简述Linq中.ToList(), .AsEnumerable(), AsQueryable()的区别和用法
[TOC] 这3个方法的功能完全不同, 应按照具体业务场景使用. AsQueryable() 先说说什么是 IQueryable IQueryable 是当前的 data provider 返回的类型 ...
- SQL Server连接查询之Cross Apply和Outer Apply的区别及用法(转载)
先简单了解下cross apply的语法以及会产生什么样的结果集吧!示例表: SELECT * FROM tableA CROSS APPLY tableB 两张表直接连接,不需要任何的关联条件,产生 ...
- Java容器类List、ArrayList、Vector及map、HashTable、HashMap的区别与用法
Java容器类List.ArrayList.Vector及map.HashTable.HashMap的区别与用法 ArrayList 和Vector是采用数组方式存储数据,此数组元素数大于实际存储的数 ...
- C# DataSet与DataTable的区别和用法 ---转载
C# DataSet与DataTable的区别和用法 转载:https://www.cnblogs.com/liuyi-li/p/6340411.html DataSet是数据集,DataTable是 ...
随机推荐
- 使用appassembler插件生成启动脚本
appassemblermaven插件可以自动生成跨平台的启动脚本,省去了手工写脚本的麻烦,而且还可以生成jsw的后台运行程序.插件官网:http://www.mojohaus.org/appasse ...
- POJ 3762 The Bonus Salary!(最小K覆盖)
POJ 3762 The Bonus Salary! 题目链接 题意:给定一些任务.每一个任务有一个时间,有k天.一个时间仅仅能运行一个任务,每一个任务有一个价值.问怎么安排能得到最多价值 思路:典型 ...
- Redmine使用学习
注:陈刚在公司架设了 Redmine xx公司产品档案管理系统,并且与tortoisegit集成了在一起:真心不错!比如git:192.168.10.46,而redmine:192.168.10.46 ...
- 基于oracle数据库存储过程的创建及调用
1.PLSQL编程 1.1概念和目的 PL/SQL(Procedure Language/SQL) PLSQL是Oracle对sql语言的过程化扩展 指在SQL命令语言中增加了过程处理语句(如分支.循 ...
- MySQL索引优化经验总结
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引 ...
- C#设计模式 —— 单例模式
嗯,这是本人的第一篇随笔,就从最简单的单例模式开始,一步一步地记录自己的成长. 单例模式是最常见的设计模式之一,在项目代码中几乎随处可见.这个设计模式的目的就是为了保证实例只能存在一个.单例模式往下还 ...
- ES module 实现方式
随着js社区不断发展,js功能更加强大,细数js的几种 module 方式. 整理了七种模块化方式 1.作为新手,练习小的demo,比较喜欢的方式.不适合大的项目. <!--html--> ...
- Python 基础 模块
python 中模块和保定 概念 如果将代码分才投入多个py 文件,好处: 同一个变量名也互不影响. python 模块导入 要使用一个模块,我们必须先导入该模块.python 使用import ...
- 1010 一元多项式求导(用while接收输入)
题目: 知识点for me: 该题的输入并非是按回车后数据输入完毕也不是给定数据长度,而是输入到文件末尾.可以有以下三种写法: (1)while(cin>>a) (2)while(sca ...
- eclipse 打开一个新工程的基本设置
1.代码自动提示 Window -> Preferences -> Java -> Editor -> Content Assist -> Auto Activation ...