Collections HaxeFlixel tilemap碰撞

Collections HaxeFlixel tilemap碰撞,collections,collision-detection,haxe,haxeflixel,Collections,Collision Detection,Haxe,Haxeflixel,我正在用HaxeFlixel框架开发一个Haxe游戏 我决定将地图分块,以便在运行时加载地图的新区域(无需加载屏幕)。为此,我将每个块放在FlxTilemap的一个实例中 现在我注意到,当我尝试移动FlxTilemap(通过更改其x和y属性)时,碰撞检测(使用FlxG.collide(英雄,地图))无法正常工作 为了测试为什么碰撞检测不起作用,我简单地在场景中添加了一个FlxTilemap,并将其与我的英雄碰撞: map = new FlxTilemap(); var mapData =

我正在用HaxeFlixel框架开发一个Haxe游戏

我决定将地图分块,以便在运行时加载地图的新区域(无需加载屏幕)。为此,我将每个块放在
FlxTilemap
的一个实例中

现在我注意到,当我尝试移动
FlxTilemap
(通过更改其
x
y
属性)时,碰撞检测(
使用FlxG.collide(英雄,地图)
)无法正常工作

为了测试为什么碰撞检测不起作用,我简单地在场景中添加了一个
FlxTilemap
,并将其与我的英雄碰撞:

map = new FlxTilemap();
    var mapData = "";
    for (y in 0...8) {
        for (x in 0...8) {
            mapData += "0,";
        }
        mapData += "\n";
    }

    map.loadMap(mapData, AssetPaths.tuxemon_sprites__png, 16, 16);

    for (x in 0...8) {
        map.setTile(x, 6, SpriteSheet.TILES.FENCE.LOOSE_1_RIGHT);
    }

    for (y in 0...8) {
        map.setTile(6, y, SpriteSheet.TILES.FENCE.LOOSE_1_RIGHT);
    }

    map.setPosition(
        map.x - map.width / 2,
        map.y - map.height / 2
    );

    add(map);
碰撞检测在状态的
update()
方法中处理:

override public function update():Void
{
    super.update();

    FlxG.collide(hero, map);
}   
我是做错了还是只是错过了什么

编辑:

HaxeFlixel碰撞检测中似乎存在问题。 只有当
FlxObject
s的
x
y
属性为正时,才会检测到碰撞。 我想要负的
x
/
y
位置


有人知道这个问题的解决方法吗?

尝试更改世界空间的边界。具体来说