如何使用自定义类在Phaser中添加Tiled对象

问题描述

如何使用平铺的Game.Unit.Coin类添加具有Tiled中定义的位置,图像和碰撞的硬币?

我创建了两层的平铺地图:

  • “硬币”对象
  • “墙”砖

Tiled screenshot

我在硬币上定义了自定义碰撞:

Tiled screenshot

我在Tiled中创建了一个自定义Coin类:

Game.Unit.Coin = class extends Phaser.Physics.Matter.Sprite {
    constructor(scene,x,y,texture) {
        super(scene.matter.world,texture);
        scene.add.existing(this);
    }
}

这是我的Phaser代码

// Loading assets
this.load.image("walls","assets/tilesets/walls.png");
this.load.image("coins","assets/tilesets/coins.png");
this.load.tilemapTiledJSON("test","assets/maps/test.json");

// Creating map
var map = this.make.tilemap({key: "test"});

// Creating walls
var wallsTileset = map.addTilesetimage("tileBlack_02","walls");
var wallsLayer = map.createStaticLayer("walls",wallsTileset,0);
wallsLayer.setCollisionBetween(1,11);
this.matter.world.convertTilemapLayer(wallsLayer);

// Creating coins
var coinsTileset = map.addTilesetimage("spritesheet_coins","coins");
// ???

版本
平铺的 1.4.2
移相器 3.24.1

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)