我正在进行2D平台游戏,而且我不知道如何设置与我的角色和平台的碰撞。
我基本上想要当fireboy1点击basePlatform时,fireboy1无法再进一步
到目前为止,我已经有了这个代码,我只是在努力理解if语句本身的内容。 我评论过我不确定的部分。
我不确定这是不是正确的方法。
public function platformCollision():void
{
if (fireboy1.hitTestObject(basePlatform))
{
fireboy1.y = fireboy1.y = //current position on screen?
}
}
答案 0 :(得分:0)
如果您不希望fireboy1
超过basePlatform
,您应该执行以下操作:
fireboy1.y = basePlatform.y - fireboy1.height
请注意,这一切都取决于具有左上角方向的fireboy1和basePlatform。
答案 1 :(得分:0)
不需要hitTestObject .... 让我们假设fireboy和基础平台的注册点位于其中心:
public function loop(e:Event){
if(fireboy1.y + fireboy1.height > basePlatform.y - basePlatform.height){
fireboy1.y = basePlatform.y - fireboy1.height;
}
}