当前位置: 首页 > 工具软件 > Phaser > 使用案例 >

Phaser API 总结

易嘉胜
2023-12-01
博主最近因开发需要在学习Phaser,总结了一些楼主用过的API,顺便推荐两个好用的Phaser开发工具:http://phasereditor.boniatillo.com/blog/downloadshttp://mightyfingers.com/,(博主争取不断更新该文,有误的地方请大家多多指正)原英文文档地址如下:https://www.phaser-china.com/docs/Phaser.html
  • Phaser.Animation
    • enableUpdate:布尔值,frame发生变化时是否触发onUpdate事件
    • generateFrameNames(prefix, start, stop, suffix, zeroPad):返回一个字符串数组,使用frame name生成动画数组,prefix是frame name的前缀,suffix是frame name的后缀,zero指用多少个0可以填充最小值或最大值,亦可理解为数值有多少位。
    • isPlaying:bool,动画播放时为true,动画播放完成时为false
    • loop:bool,指循环状态
    • loopCount:number,自从动画开始循环了多少次
    • onComplete:返回Phaser.Signal对象,动画结束的时候触发onComplete事件
    • onLoop:返回Phaser.Signal对象,动画循环的时候触发onLoop事件
    • onStart:返回Phaser.Signal对象,动画开始的时候触发onStart事件
    • play(frameRate, loop, killOnComplete):返回Phaser.Animation对象,运行动画,frameRate帧率,loop默认值为false,是否循环播放动画,killOnComplete默认值为false,如果设置为true,动画结束时parent sprite对象将被kill
  • Phaser.AnimationManager
    • add(name, frames, frameRate, loop, useNumericIndex):添加动画,返回一个Phaser.animation对象,以该方式添加的动画在play函数中会进行回放。name为字符串,即动画的名字;frames是一个字符串或数值数组,数组中包含frame id或frame name,如果为null则使用所有帧;frameRate即帧率,每秒多少帧,默认值为60;loop布尔值,默认为false,动画循环播放还是播放一次;useNumericIndex布尔值默认为true,给定帧是否使用数字索引
    • play(name, frameRate, loop, killOnComplete):返回一个Phaser.animation对象,运行一个名为name的动画。frameRate指动画运行的帧率;loop指是否循环播放动画,默认为false;killOnComplete默认值为false,如果设置为true,动画结束时parent sprite对象将被kill
    • stop(name, resetFrame):停止该动画。name为需停止的动画的名字,如果没有给定name,则停止当前运行的动画;resetFrame值为true,动画停止时当前帧设置为动画首帧,否则停止于动画运行的最后一帧
  • Phaser.Camera
    • flash(color,duration,force):产生一个相机拍摄闪烁效果,color指flash效果的颜色,默认0xffffff,duration指效果持续时间,默认500ms,force默认false,值为true时,如果当前存在一个camera flash效果在运行,则新的效果代替原来的并重置持续时间
    • shake(intensity, duration, force, direction, shakeBounds):产生一个相机拍摄抖动效果,intensity指抖动强度,默认0.05;duration指持续时间,默认500ms;force默认true,值为true时,如果当前存在一个camera shake效果在运行,则新的效果代替原来的并重置持续时间;direction指抖动方向,默认Phaser.Camera.SHAKE_BOTH,还有Phaser.Camera.SHAKE_HORIZONTAL 或 Phaser.Camera.SHAKE_VERTICAL;shakeBounds默认值为true,抖动效果是否超出边界
  • Phaser.Create
    • texture(key, data, pixelWidth, pixelHeight, palette):key指用于存储该texture的key,data指颜色数据的数组,pixelWidth指每像素的宽度,pixelHeight指每像素的高度,palette默认为0
  • Phaser.Events
    • onInputDown:返回Phaser.Signal对象,在inputEnabled设置为true的情况下,按下鼠标触发该事件
    • onInputOut:返回Phaser.Signal对象
    • onInputOver:返回Phaser.Signal对象
    • onInputUp:返回Phaser.Signal对象
  • Phaser.Game(该对象是游戏的核心)
    • new Phaser.Game(width, height, renderer, parent, state, transparent, antialias, physicsConfig):width默认值800;height默认值600;render指要使用的渲染器:phaser.auto将自动检测,phaser.webgl,phaser.canvas或phaser.headless;parent指将phaser插入哪个dom元素(dom的id),parent为空时插入body中;state指默认状态对象,一个由状态函数(preload、create、update(聚焦于游戏画布时会循环调用该函数)和render(循环调用))组成的对象或null;transparent指是否使用透明的canvas画布背景
    • add:返回Phaser.GameObjectFactory对象,用于添加音频、图像等元素
    • camera:返回Phaser.Camera对象
    • input:返回Phaser.Input对象
    • load:返回Phaser.Loader对象,用于加载游戏资源
    • make:返回Phaser.GameObjectCreator对象,创建一个新对象
    • physics:返回Phaser.Physics对象
    • rnd:返回一个Phaser.RandomDataGenerator对象
    • scale:返回Phaser.ScaleManager对象
    • sound:返回Phaser.SoundManager对象
    • state:返回Phaser.StateManager对象
    • time:返回Phaser.Time对象
    • world:返回Phaser.World对象
  • Phaser.GameObjectCreator
    • sprite(x, y, key, frame):返回Phaser.Sprite对象
  • Phaser.GameObjectFactory
    • audio(key, volume, loop, connect):返回Phaser.Sound对象,创建一个音频对象,volume音量,默认值为1,loop是否循环播放,默认值为false,connect布尔值,控制创建的音频对象在播放时是否连接SoundManager的主节点,默认为true
    • bitmapData(width, height, key, addToCache):返回一个BitmapData对象
    • bitmapText(x, y, font, text, size, group):返回Phaser.BitmapText对象,x和y指坐标,font指字体文件的key,text指需渲染的文本,size指字体大小
    • creature(x, y, key, group):返回Phaser.Creature对象,创建一个creature animation对象,使用时需先引入CreatureMeshBone.js 和gl-matrix.js
    • debug:返回Phaser.Utils.Debug对象
    • emitter(x, y, maxParticles):返回一个Phaser.Particles.Arcade.Emitter对象,创建一个emitter,产生粒子效果
    • existing(object):将一个存在的display object添加至world中,一般用于自定义类对象的添加
    • graphics(x, y, group):返回Phaser.Graphics对象,创建一个graphics对象
    • group(parent, name, addToStage, enableBody, physicsBodyType):返回Phaser.Group对象,创建一个group,group相当于为display object创建一个合并、回收、检测碰撞的容器。parent即设置parent group,如果值为null则该group不会被添加至display list,如果不指定则默认添加至World。name指group的name,默认值为“group”,常用于调试。addToStage默认值为false,如果设置为true,则该group添加至Game.Stage。enableBody默认值为false,如果值为true,则每个通过Group.create()和Group.createMultiple()创建的sprite对象都有一个physics body属性,通过physicsBody可改变其类型。physicsBody默认值为0,其他类型为Phaser.Physics.ARCADE, Phaser.Physics.P2, Phaser.Physics.NINJA等
    • rope(x, y, key, frame, points, group):返回一个Phaser. Rope对象
    • sprite(x,y,key,frame,group):返回Phaser.Sprite对象,在坐标(x,y)处创建一个sprite对象,x和y是相对于父元素的坐标值(number),key值为字符串、Phaser.RenderTexture、Phaser.BitmapData、Phaser.Video或PIXI.Texture,frame为指定的frame id或frame name,group指该对象添加的群组,没有指定时添加至World group
    • text(x, y, text, style, group):返回Phaser.Text对象,创建一个文本对象,x和y是相对于父元素的坐标,text是文本内容,style是一个样式对象,包含字体、大小等,例如style中boundsAlignH指文本在textBound内如何排列,center即水平居中,group指添加到哪个组,默认为World
    • tween(Object):返回Phaser.Tween对象
    • weapon(quantity, key, frame, group) :返回一个Phaser.Weapon对象,weapon提供了一个创造子弹库的能力,quantity默认为1,weapon产生子弹的数量,值为-1时可自动扩展;key指子弹的图像;frame指被用作子弹图像的帧id或frame name;group指weapon添加至哪个组
    • world:返回一个Phaser.World对象,每个游戏有一个world,它是一个抽象的存在,默认与stage大小一致。其width与height属性是整个游戏区的高度或宽度
  • Phaser.Graphics
    • beginFill(color,alpha):返回PIXI.Graphics对象,指定填充颜色和透明度
    • generateTexture(resolution, scaleMode, padding):返回PIXI.Texture对象,返回一个能用于创建sprite的texture,resolution指texture的分辨率,默认值为1,scaleMode默认值为0,padding默认值为0
  • Phaser.Group
    • callAll(method,context,args):为所有child(不管child是alive或dead)调用method方法
    • create(x, y, key, frame, exists, index):返回一个displayObject对象,创建一个Phaser.sprite对象并添加至该group,child元素自动添加在group顶部,如果group.enableBody已设置,则该对象也有一个physics body,如果Group.inputEnableChildren已设置,则该对象也有一个input处理器。x和y是相对于父元素的坐标值(number),key值为字符串、Phaser.RenderTexture、Phaser.BitmapData、Phaser.Video或PIXI.Texture,frame为指定的frame id或frame name,exists默认值为true,默认存在sprite的state属性。index控制child被插入至group第几层,0为最底层
    • createMultiple(quantity, key, frame, exists):返回一个Array对象,创建多个sprite对象并将其添加至group的顶部,quantity指sprite的数量,key指sprite的图片,frame指哪些帧应用于这些sprite,exists布尔值,默认false
    • forEach(callback, callbackContext, checkExists, args):对group内所有child调用callback函数,callback函数的第一个参数为调用函数的child,callbackContext指定函数执行环境,checkExist默认值为false,如果值为true则只有exists=true的child调用callback函数,其他child直接跳过,args指callback的函数参数
    • getChildAt(index):返回指定索引的child
    • remove(child, destroy, silent):返回布尔值,移除指定child,child指移除的child,destroy为true,则调用destroy函数,silent为true则不触发onRemovedFromGroup事件,否则触发
    • setAll(key, value, checkAlive, checkVisible, operation, force):为该group所有的child设置新属性值,新属性值仅改变当前group的child,不会递归影响下一层child。key指属性,value指属性值,checkAlive布尔值,默认false,如果设置为true则只更新alive=true的child,checkVisible布尔值,默认false,如果设置为true则只更新visible=true的child,operation控制值如何改变,默认为0,即用新值替代,1相加,2相减,3相乘,4相除,force默认为false,如果值为true,则不管child属性是否存在,都将设置其值,false则不进行任何操作
  • Phaser.Image
    • events:返回Phaser.Events对象
    • inputEnabled:默认游戏对象不处理任何input事件,将该值置为true则为游戏对象创建了一个inputHandler,它会处理click或touch事件
    • kill():kill一个对象,一个被kill的对象其alive、visible和exists属性均为false,但不会销毁该对象,如果游戏中不再需要该对象,应该使用destroy方法
    • smoothed:布尔值,默认为true,使texture平滑,仅当texture为image时该属性生效(感觉false时图片更清晰)
  • Phaser.Input
    • activePointer:返回Phaser.Point对象,获取位置pointer.position.x或y
    • keyboard:返回Phaser.Keyboard对象
    • onDown:返回一个Phaser.Signal对象,鼠标按下的时候触发
    • onTap:返回一个Phaser.Signal对象,按鼠标时触发
  • Phaser.InputHandler
    • enableDrag(lockCenter, bringToTop, pixelPerfect, alphaThreshold, boundsRect, boundsSprite):允许被鼠标拖拽
    • useHandCursor:布尔值,鼠标移至上方时出现手型
  • Phaser.Key
    • isDown:布尔值,按键按下时为true
  • Phaser.Keyboard
    • addKeys(keys):创建一个包含指定键的对象
    • createCursorKeys():创建并返回一个包含上下左右四个热键的Phaser.key对象,该对象包含up、down、left和right属性
    • removeKey(keycode):移除key object
  • Phaser.Loader
    • atlas(key, textureURL, atlasURL, atlasData, format):返回Phaser.Loader对象,key必须唯一,textureURL指texture atlas image的url,如果没有给定url,则默认为key.png,atlasURL指texture atlas data的URL,如果没有给定url,则默认为key.json,atlasData是一个JSON或XML对象,format指数据格式,默认为Phaser.Loader.TEXTURE_ATLAS_JSON_ARRAY,也可以是 Phaser.Loader.TEXTURE_ATLAS_JSON_HASH 或Phaser.Loader.TEXTURE_ATLAS_XML_STARLING
    • atlasJSONHash(key, textureURL, atlasURL, atlasData):返回Phaser.Loader对象,key必须唯一,textureURL指texture atlas image的url,如果没有给定url,则默认为key.png,atlasURL指texture atlas data的URL,如果没有给定url,则默认为key.json,atlasData是一个JSON对象
    • audio(key, urls, autoDecode):返回Phaser.Loader对象,autoDecode布尔值,音频是加载时解码还是运行时解码,默认值为true,即立即解码,音频只有解码后才能播放,解码是一个非阻塞的异步过程,但是会消耗大量CPU
    • image(key,url,overwrite):返回Phaser.Loader对象,往当前加载队列中添加图片,调用该方法时不会立即加载该文件,当loader启动时该文件会被加载至队列中等待被加载。加载图片类型包括png、jpg、gif和其他所有浏览器能处理的图片类型。key必须唯一,一旦加载成功,它将被用于添加文件至Phaser.Cache。Cache.getImage(key)可用于检索文件,url可以是绝对路径或相对路径,如果没有给定url,则默认为key.png。overwrite默认值为false,当key重复时,后者覆盖前者
    • json(key, url, overwrite):返回Phaser.Loader对象,往当前加载队列中添加json文件,调用该方法时不会立即加载该文件,当loader启动时该文件会被加载至队列中等待被加载。key必须唯一,一旦加载成功,它将被用于添加文件至Phaser.Cache。Cache.getJSON(key)可用于检索文件,url可以是绝对路径或相对路径,如果没有给定url,则默认为key.json。overwrite默认值为false,当key重复时,后者覆盖前者。
    • onFileComplete:返回一个Phaser.Signal对象,文件加载完成或文件加载失败时触发该事件,绑定于该事件的函数可以收到以下参数:progress,file key,success?,totalLoadedFiles,totalFiles等,progress值根据加载进度可为1~100
    • setPreloadSprite(sprite,direction):将sprite作为进度条图片加载,加载速度基于实际资源的加载速度,direction方向默认为0,即水平,如果为1,则是垂直的
    • spritesheet(key,uri,frameWidth,frameHeight,frameMax,margin,spacing):返回Phaser.Loader对象,往当前加载队列中添加sprite sheet。key必须唯一,一旦加载成功,它将被用于添加文件至Phaser.Cache。Cache.getImage(key)可用于检索文件,url可以是绝对路径或相对路径,如果没有给定url,则默认为key.png。frameWidth和frameHeight指每一帧的宽度和高度。frameMax指sprite sheet中有多少帧,默认值为-1,如果没有指定值将把整个image当成frame。margin与spacing默认值为0
  • Phaser.Particles.Arcade.Emitter
    • makeParticles(keys, frames, quantity, collide, collideWorldBounds):返回一个Phaser.Particles.Arcade.Emitter对象,collide与collideWorldBounds默认值为false
    • start(explode, lifespan, frequency, quantity, forceQuantity):返回一个Phaser.Particles.Arcade.Emitter对象,explode默认为true,立即发出许多例子,值为false时按一定频率释放;lifespan指粒子释放,后存在多久,默认值为0即永远,单位ms;frequency默认值250,单位ms,粒子释放频率;quantity指粒子数量,默认值为0,即Emitter.maxParticles;forceQuantity默认值为false
  • Phaser.Physics
    • arcade:返回一个Phaser.Physics. Arcade对象
    • enable(object, system, debug):为给定对象或数组创建一个默认的physics body,任何时候一个对象只有一个active的physics body,直到对象被destroy才会改变。object是一个对象或对象数组,system默认为Phaser.Physics.ARCADE,debug默认为false
    • startSystem(system):创建一个游戏物理仿真器的实例,默认运行Phaser.Physics.Arcade,还有Phaser.Physics.P2JS, Phaser.Physics.NINJA 或Phaser.Physics.BOX2D
  • Phaser.Physics.Arcade
    • angleBetween(source, target, world):返回基于world的source与target之间的弧度
    • angleToPointer(displayObject, pointer, world):返回一个number对象,找到鼠标与display object间的一个角度
    • angleToXY(displayObject, x, y, world):返回一个number对象,找到(x,y)与display object间的一个角度
    • collide(object1, object2, collideCallback, processCallback, callbackContext):检测两个游戏对象的碰撞,返回布尔值,参数中俩对象可以是不同类型对象的数组,这些对象会自动分离,如果不要求分离,则可用ArcadePhysics.overlap。当两个对象发生碰撞时在对象分离前调用processCallback函数,如果该函数返回true,则发生对象碰撞和分离,否则返回false并跳过该步骤。collideCallback函数在对象碰撞时被调用,如果设置了processCallback函数,只有该函数返回true才调用collideCallback。对于collideCallback和processCallback函数而言,object1和object2参数会按指定顺序被传入函数中,如果是group和sprite参数,则sprite始终是第一个参数。callbackContext是一个对象,用于运行回调函数
    • distanceToPointer(displayObject, pointer, world):返回对象与鼠标之间的距离
    • enable(object, children):开启object的物理引擎,children是一个布尔值,默认为true,即为object的children递归开启物理引擎
    • moveToObject(displayObject, destination, speed, maxTime):返回一个number对象,以一定速度向destination移动,speed默认为60,maxTime默认为0,如果设置了maxTime,则会根据时间调整速度
    • moveToPointer(displayObject, speed, pointer, maxTime):返回一个number(旋转的弧度),displayObject以一定速度向pointer所在位置移动,speed默认为60,pointer默认为Phaser.Input.activePointer,maxTime默认为0,单位ms,如果设置了maxTime,则会根据时间调整速度
    • overlap(object1, object2, overlapCallback, processCallback, callbackContext):检测两个对象是否重叠,返回布尔值,参数中俩对象可以是不同类型对象的数组,这些对象不会自动分离。对象重叠时调用overlapCallback函数,如果设置了processCallback函数,只有该函数返回true才调用overlapCallback。对于overlapCallback和processCallback函数而言,object1和object2参数会按指定顺序被传入函数中,如果是group和sprite参数,则sprite始终是第一个参数。callbackContext是一个对象,用于运行回调函数
  • Phaser.Physics.Arcade.Body
    • allowRotation:默认为true
    • bounce:返回Phaser.Point对象,指对象发生碰撞时的弹性,值为1时表示完全反弹,值为0.5时表示以一半的速度反弹
    • collideWorldBounds:布尔值,设置为true时碰撞至World边界则自动反弹,否则离开World
    • gravity:返回Phaser.Point对象,指对象的重力,除非body.allowGravity设置为false
    • touching:返回一个对象{none: true, up: false, down: false, left: false, right: false },touching.up=true时意味着body顶部发生了碰撞,touching.down=true意味着body底部发生了碰撞等
    • velocity:返回Phaser.Point对象,速度,有x和y属性,每秒改变的像素数
  • Phaser.RandomDataGenerator
    • integerInRange(min, max):生成一个位于min与max间的随机整数
  • Phaser.Rope
    • updateAnimation:一个function,每次update的时候调用该函数
  • Phaser.ScaleManager对象
    • isLandscape:只读属性,如果screen orientation处于landscape模式则返回true
    • pageAlignHorizontally:默认值false
    • pageAlignVertically:默认值false,值为true时使整个游戏场景居中于父容器
    • scaleMode:值为Phaser.ScaleManager.NO_SCALE(不会缩放)、Phaser.ScaleManager.EXACT_FIT(延伸至canvas父元素的大小)、Phaser.ScaleManager.SHOW_ALL(以原有的比例展示整个游戏区域)、Phaser.ScaleManager.RESIZE(用游戏区域大小去匹配容器大小)和Phaser.ScaleManager.USER_SCALE(根据用户指定比例缩放)
      setGameSize(width,height):设置游戏实际大小
  • Phaser.Signal
    • add(listener, listenerContext, priority, args):返回Phaser.SignalBinding对象,listener指事件触发时调用的函数;listenerContext是一个object,指定listener在哪个环境执行,即this值;priority指事件监听器的优先级,默认为0,优先级越高优先执行,优先级相同则按添加顺序执行,args指listener的函数参数
    • addOnce(listener, listenerContext, priority, args) :返回Phaser.SignalBinding对象,为事件添加一次性监听器,监听器执行一次以后自动移除
  • Phaser.Sound
    • allowMultiple:布尔值,允许同时播放多个音频
    • pause():暂停音频
    • play(marker, position, volume, loop, forceRestart):播放音频,marker在播放音频时做标记,position指音频播放的起始位置,默认值为0,volume播放音量,默认值为1,loop是否循环播放,默认值为false,forceRestart默认值为true,如果音频正在播放,可以强制重新开始
    • resume():重新播放音频
    • stop():停止音频
  • Phaser.SoundManager
    • setDecodedCallback(files, callback, callbackContext):files为数组或文件名,callback是文件解码完的回调函数
  • Phaser.Sprite
    • angle:相对原始方向旋转的角度,顺时针是正值
    • anchor.set(x,y):(x,y)为(0,0)则位于左上角,(1,1)则位于右下角,(0.5,0.5)则居中,如果没有设置y,则y=x
    • animations:返回一个Phaser.AnimationManager对象
    • body:返回Phaser.Physics.Arcade.Body|Phaser.Physics.P2.Body|Phaser.Physics.Ninja.Body|null
    • crop(rect,copy):截取显示矩形区域
    • events:返回Phaser.Events对象
    • frame:integer,动画的当前帧索引,如果给定帧索引不存在,则默认为第一帧
    • input:返回一个Phaser.InputHandler对象
    • inputEnabled:布尔值,默认不处理任何input事件,inputEnabled为true时创建一个inputHandler,开始处理click或touch事件
    • loadTexture(key, frame, stopAnimation):改变当前游戏对象的texture,移除旧的texture并引入新的texture,key指image或texture中的key,frame指帧索引或frame id,stopAnimation是布尔值,停止或启动动画,默认为true
    • pivot:定义旋转支点
    • play(name, frameRate, loop, killOnComplete):返回Phaser.Animation对象
    • setScaleMinMax(minX, minY, maxX, maxY):如果只传入一个参数,则四个参数值相同,如果传入两个参数,则minX=minY,maxX=maxY
    • updateCrop():更新crop显示区域
  • Phaser.Stage
    • backgroundColor:获取或设置背景色
  • Phaser.StateManager
    • add(key, state, autoStart):添加一个state,key是一个唯一值,state为Phaser.State | object | function,autoStart默认为false,如果为true,则添加完以后立即启动。state中的function顺序执行init、preload、create、update
    • start(key, clearWorld, clearCache, parameter):启动指定state,如果当前存在一个state在运行,则在切换至新state前调用State.shutDown,key指希望启动的state,clearWorld默认为true,清除world中所有display list,但是不包括stage中的元素。clearCache默认为false,如果为true且clearWorld为true,则清空所有加载的资源,parameter指传递给state.init的参数
  • Phaser.Text
    • destroy(destroyChildren):destroy文本对象,将其从group中移除,destroyChildren默认为true,即该对象的所有children均会被destroy
    • events:返回Phaser.Events对象
    • input:返回一个Phaser.InputHandler对象
    • inputEnabled:布尔值,默认不处理任何input事件,inputEnabled为true时创建一个inputHandler,开始处理click或touch事件
    • kill():返回一个PIXI.DisplayObject对象,kill一个文本对象,其alive, exists和visible属性均为false
    • setShadow(x, y, color, blur, shadowStroke, shadowFill):返回Phaser.Text对象,x和y分别指水平和垂直的阴影距离,默认为0,color指阴影颜色,默认为rgba(0,0,0,1),blur指阴影模糊程度,默认为0不模糊,shadowStroke与shadowFill默认为true,应用于文字描边与文字填充
    • setText(text, immediate):返回Phaser.Text对象,设置显示文本,immediate布尔值,默认为false,则在下一次render循环时自动更新文本,否则立即更新
    • setTextBounds(x, y, width, height) :设置文本边界,确定了文本样式中boundsAlignH与boundsAlignV属性值的基准线
  • Phaser.TileSprite
    • autoScroll(x,y):使tileSprite按给定的方向自动滚动,直至TileSprite.stopScroll()被调用,x指水平速度,y指垂直速度,-x向左,+x向右,-y向上,+y向下
    • tilePosition:Point对象,图片的位置
  • Phaser.Time
    • events:返回Phaser.Timer对象
  • Phaser.Timer
    • loop(delay, callback, callbackContext, arguments):返回一个Phaser.TimerEvent对象,给Timer添加一个循环的事件,直到Timer停止。delay,单位毫秒,基于Timer的开始时间,如果Timer已运行,则delay相对于Timer的当前时间计算。delay时间后触发该事件,调用callback函数,callbackContext是一个对象,指定callback函数调用的环境,arguments是callback函数的函数
  • Phaser.Tween
    • to(properties, duration, ease, autoStart, delay, repeat, yoyo):返回一个Phaser.Tween对象,为object对象创建一个tween对象,并根据给定属性等将当前tween修改为指定值,properties是一个object,包含修改的属性值;duration默认1000ms,指该变化的过程持续时间,如果Tween.frameBased为true,则duration指过去的帧数;ease指动画的速度函数,默认为Phaser.Easing.Linear.None;autoStart默认为false,如果为true,则自动开始动画,否则需要调用Tween.start();delay指动画开始前延时多少ms,默认为0;repeat默认为0,指在动画完成时是否重新开始,如果需要一直运行,需将其设置为-1,它只作用于单个动画,不会作用于链式动画;yoyo默认为false,如果值为true则自动反序播放,它不会触发onComplete事件,会触发onLoop事件
  • Phaser.Utils.Debug
    • geom(object, color, filled):渲染一个矩形
    • inputInfo(x, y, color):color默认为rgb(255,255,255)
    • spriteInfo(sprite, x, y, color):info包括name、bounds info、position等,color默认rgb(255,255,255)
    • text(text, x, y, color, font):text指文本,x和y指定位置坐标,color指文本颜色,font指字体
  • Phaser.Weapon
    • bulletAngleOffset:返回一个number类型,发射子弹的角度偏移
    • bulletAngleVariance:返回一个number类型,子弹发射角度的偏差
    • bulletSpeed:返回一个number类型,子弹发射的速度,pixels/s
    • fire(from,x,y):返回Phaser.Bullet对象,尝试发射单颗子弹,如果子弹库中没有子弹且子弹库不可扩展,则返回false,如果距离上一次发射子弹时间过短也返回false
    • fireAngle:返回一个integer类型,子弹发射角度
    • trackSprite(sprite, offsetX, offsetY, trackRotation):返回一个Phaser.Weapon对象,使weapon追踪给定的sprite或world中的对象,sprite指给定的追踪对象,即发射子弹的对象,offsetX指sprite与weapon间的水平偏移,默认为0,offsetY指sprite与weapon间的垂直偏移,默认为0,trackRotation默认为false,指是否应该追踪sprite的旋转。调用该函数时会重置Weapon.trackedPointer为null
  • Phaser.World
    • bringToTop(child):将child移至group最上面
    • randomY:只读属性,获取一个小于等于world当前高度的随机整数
    • resize(width, height):更新world的宽高
    • setBounds(x,y,width,height):更新world的边界
  • DisplayObject
    • body.allowGravity:布尔值,默认为true,允许受重力影响
    • body.checkCollision.up:值为false时上面的碰撞不处理,还有down、left和right等属性
    • body.immovable = true:一旦对象enableBody属性设置为true,即可访问body属性,也可调用game.physics.enable(object, system)或者game.physics.arcade.enable(object)开启对象的物理引擎,system默认为Phaser.Physics.Arcade。如果system为P2 or Ninja physics,则anchor属性为0.5,即physics body居中。immobable属性为true时该对象不受其他元素的影响。
    • scale.set(x,y):缩放,如果省略y,则y=x
    • scale.setTo(x,y):缩放,如果省略y,则y=x
 类似资料: