У меня ошибка от ESlint, но я не понимаю, почему. Я прочитал это:
и this:
Я до сих пор не понимаю, что я делаю не так.
Мой класс
/* eslint-disable no-plusplus */
/* eslint-disable no-undef */
class Player {
constructor(imagePlayer, name, score, positionY, positionX) {
this.imagePlayer = imagePlayer;
this.name = name;
this.score = score;
this.x = positionX;
this.y = positionY;
}
drawPlayer() {
app.map.mapGame[this.y][this.x] = this.imagePlayer;
}
obstacle(y, x) {
let colision = false;
if (app.map.mapGame[y][x] === 1) {
console.log("evaluación");
colision = true;
}
return colision;
}
lastPosition(oldPosition, direction) {
if (direction === left || direction === right) {
app.map.mapGame[this.y][this.x - oldPosition] = 0;
} else {
app.map.mapGame[this.y - oldPosition][this.x] = 0;
}
}
// movements players
movement(direction) {
switch (direction) {
case up:
if (this.y > 0) {
if (this.obstacle(this.y - 1, this.x) === false) {
this.y--;
this.lastPosition(-1, direction);
}
}
break;
case down:
if (this.y < 9) {
if (this.obstacle(this.y + 1, this.x) === false) {
this.y++;
this.lastPosition(+1, direction);
}
}
break;
case left:
if (this.x > 0) {
this.x--;
this.lastPosition(-1, direction);
}
break;
case right:
if (this.x < 14) {
this.x++;
this.lastPosition(+1, direction);
}
break;
default:
console.log("muro");
break;
}
} // movement
}
Ошибка:
Ожидалось, что 'this' будет использоваться методом класса 'препятствие
Метод препятствий не является Рассмотрены полные дела только по двум из них.