0

我正在使用 Phaser 2.1.3。我用 Tiled 0.9.1 创建了一个平铺地图,只有一个默认图层和一个瓦片集图像(4 个 colr 瓦片 32x32)。 在此处输入图像描述

我想让橙色的瓷砖变成实心的,玩家不能穿过这种瓷砖。

但是在我的游戏中,玩家不能通过舞台上的橙色方块和红色方块。我不明白为什么红色瓷砖块是实心的。

这是我的一些代码,完整代码在这里:https ://github.com/q...sets/js/game.js

var map = this.add.tilemap('map1');
map.addTilesetImage('tileset');
map.setCollisionByExclusion([1]); // set orange tile solid
this.layer1 = map.createLayer('Tile Layer 1');
this.layer1.resizeWorld();
map.setTileIndexCallback(4, this.reachedDoorEvent, this); // when player reached black block, reachedDoorEvent function will invoke.

你可以在这里测试它:http: //qichunren.github.io/game1/index.html用箭头键移动玩家(糖果)。

是相位器错误还是我遗漏了什么?

4

1 回答 1

1

你正在使用map.setCollisionByExclusion. 从文档:

“在给定层中的所有图块上设置碰撞,给定数组中的那些 ID 除外。'collides' 参数控制是否启用(true)或禁用(false)碰撞。”

(强调我的)

如果您只想要橙色瓷砖固体,您应该使用map.setCollision.

于 2014-11-20T23:23:16.720 回答