GameObjectFactory

# GameObjectFactory

游戏对象工厂

一个辅助类,可以创建任何 Phaser 游戏对象并将它们添加到游戏世界。

GameObjectFactory 是创建许多常见游戏对象的快速方法

使用 game.add

创建的对象将自动添加到相应的管理器、世界或手动指定的父组。

构造函数

new GameObjectFactory(game);

game.add 引用此对象

# 属性

# game

# world

# 方法

# sprite()

创建一个具有特定位置和精灵表键的新精灵。

最基本的是,Sprite 由一组坐标和一个纹理组成,在渲染时使用。 它们还包含额外的属性,允许物理运动(通过 Sprite.body)、输入处理(通过 Sprite.input)。 事件(通过 Sprite.events),动画(通过 Sprite.animations),相机捕捉等等。请看使用案例的例子。

sprite(x, y, key, frame, group) → {Phaser.Sprite (opens new window)}

参数

  • x 【number】可选参数,默认 0
    • 该精灵的 X 坐标。该坐标是相对于该精灵可能所在的任何父容器而言的
  • y 【number】可选参数,默认 0
    • 该精灵的 Y 坐标。该坐标是相对于这个精灵可能在的任何父容器而言的
  • key 【string | Phaser.RenderTexture (opens new window) | Phaser.BitmapData (opens new window) | Phaser.Video (opens new window) | PIXI.Texture (opens new window)】可选参数
    • 该显示对象在渲染过程中作为纹理使用的图像。如果是一个字符串,Phaser 将在图像缓存中获取一个条目。或者它可以是 RenderTexture、BitmapData、Video 或 PIXI.Texture 的实例。
  • frame 【string | number】可选参数
    • 如果使用 Texture Atlas 或 Sprite Sheet,这允许你指定要使用的帧。使用一个整数作为框架 ID,或者使用一个字符串作为框架名称。
  • group 【Phaser.Group (opens new window)】可选参数
    • 用于添加对象的可选组。如果不指定,它将被添加到世界组
// 这将添加球到游戏,并将其呈现在屏幕上。前两个参数是要添加的画布的 x 和 y 坐标,第三个是我们之前定义的资产的名称。
// ball = game.add.sprite(50, 50, "ball");
ball = game.add.sprite(game.world.width * 0.5, game.world.height - 35, "ball");
ball.anchor.set(0.5);

# existing()

将现有显示对象添加到游戏世界。

existing(object){any}

# image()

创建一个新的图像对象。 图像是一种轻量级对象,可用于显示不需要物理或动画的任何内容。 它仍然可以旋转、缩放、裁剪和接收输入事件。 这使得它非常适合徽标、背景、简单按钮和其他非 Sprite 图形。

image(x, y, key, frame, group);

参数

  • x 【number】默认 0

    • 图像的 x 坐标。该坐标是相对于此图像可能位于的任何父容器的。
  • y 【number】默认 0

    • 图像的 y 坐标。该坐标是相对于此图像可能位于的任何父容器的。
  • key 【string | Phaser.RenderTexture | Phaser.BitmapData | Phaser.Video | PIXI.Texture】可选参数

    • 渲染期间此显示对象用作纹理的图像。如果字符串 Phaser 将在图像缓存中获取一个条目。或者它可以是 RenderTexture、BitmapData、Video 或 PIXI.Texture 的实例。
  • frame 【string | number】可选参数

    • 如果使用 Texture Atlas 或 Sprite Sheet,这允许您指定要使用的帧。使用整数作为帧 ID,或使用字符串作为帧名称。
  • group 【Phaser.Group】可选参数

    • 要将对象添加到的可选组。如果未指定,它将被添加到 World 组中。