我正在使用移相器框架玩一点,并尝试制作一个简单的“倒下”游戏。目标是在没有被推到屏幕顶部的情况下快速下降:
要完成此操作,我将画布大小设置为 800x600 :
var game = new Phaser.Game(800, 600, ...);
并将create()
中的世界调整为 800x6000 :
game.world.resize(800, 6000);
在update()
我向下移动相机1
:
game.camera.y += 1;
并检查球是否仍在相机内:
if (!ball.inCamera) {
// ...
}
我的问题是:
在左侧和右侧,世界边界限制了球的可移动性(因为球不能离开相机)。如何防止球从底部的相机“掉落”,但仍然可以从顶部的相机中推出?
是否有与
相似的内容game.physics.arcade.checkCollision.down = true;
但对于相机界限?
修改
这就是球的创造方式:
ball = game.add.sprite(game.world.width / 2, 20, "ball");
game.physics.arcade.enable(ball);
ball.body.gravity.y = 1000;
为了移动球,我检查按键,然后更改ball.body.velocity
参数。
答案 0 :(得分:1)
物理学与相机无关(事实上它不应该),一个优雅的解决方案是创建一个看不见的身体,将其顶部与底部相机对齐并用相机移动它,因此仍然允许球被移出顶部的视图,但不允许它掉下来。