Столкновение Физики Аркады не сталкивается со стеной горизонтально? - PullRequest
0 голосов
/ 02 апреля 2020

У меня есть эта ошибка / логика c ошибка, которую я не мог понять. Мой игрок обнаруживает столкновение с плитками сверху и снизу, но не по бокам. Плеер является экземпляром класса, который расширяет Phaser.GameObjects.Rectangle. Я попытался изменить его на Phaser.GameObjects.Sprite, но возникает та же проблема.

this.player.body.collideWorldBounds = true
this.foregroundLayer.setCollisionBetween(1, 200)
this.physics.add.collider(this.player, this.foregroundLayer)

В методе обновления

this.physics.collide(this.player, this.foregroundLayer)

enter image description here

Оранжевый - это debugGraphics, и, как вы можете видеть, игрок (бокс) не сталкивается с плитками по горизонтали. Чем это вызвано? ТИА.

1 Ответ

1 голос
/ 02 апреля 2020

Welp, ошибка была в том, как я определил движение. Я должен использовать

this.body.x += this.speed

вместо

this.x += this.speed
...