如何在javascript画布上使对象固定?

时间:2017-10-25 17:38:26

标签: javascript

我已经制作了使2个物体成为实体的功能(例如玩家和墙壁)。

所以我有点问题。如果我只从右边和左边走到墙上,它会改变我的位置,这个功能非常有效。如果仅从顶部和底部相同。但是当我结合所有这些功能时,我的英雄无法理解他的位置并且改变了我的位置,就像我来自顶部或底部,但实际上我是从左或右来的。我卡住了,出了什么问题?

    makeSolid(object1, object2)
{
    if(this.collisionDetectedBetween(object1, object2) && object1.x > object2.x - object2.width && object1.x < object2.x)
        object1.x = object2.x - object2.width;
    else if(this.collisionDetectedBetween(object1, object2) && object1.x < object2.x + object2.width && object1.x > object2.x)
        object1.x = object2.x + object2.width;
    else if(this.collisionDetectedBetween(object1, object2) && object1.y < object2.y + object2.height && object1.y > object2.y)
        object1.y = object2.y + object2.height;
    else if(this.collisionDetectedBetween(object1, object2) && object1.y > object2.y - object2.height && object1.y < object2.y)
        object1.y = object2.y - object2.height;
}

0 个答案:

没有答案