物体不落下

时间:2014-11-22 20:18:16

标签: haxe haxeflixel nape

我创造了一个有重力和两个物体的空间:

var napeWorld:Space=new Space(new Vec2(0,500));
var ground:FlxNapeSprite = addBox(320, 480, 640, 20, BodyType.STATIC, FlxColor.BLUE);
var hero=addBox(320,60,20,20,BodyType.DYNAMIC, FlxColor.RED);

这是我的addBox()功能:

private function addBox(x:Float, y:Float, w:Float, h:Float,bodyType:BodyType, color:Int):FlxNapeSprite {
    var sprite:FlxNapeSprite = new FlxNapeSprite(x, y);
    sprite.makeGraphic(Math.ceil(w), Math.ceil(h), color);
    sprite.body.type = bodyType;
    sprite.body.space = napeWorld;
    //sprite.createRectangularBody(w, h, bodyType);
    sprite.setBodyMaterial();
    add(sprite);
    return sprite;
}

我在update()方法中调用了步骤:

override public function update():Void
{
    super.update();
    napeWorld.step(1/30);
}

我不明白为什么我的动态形状不会倒在地上......

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

因为您将其设置为BodyType.STATIC的静态正文。

您需要BodyType.DYNAMIC让事情自行移动。