directionThePlayerIsIn method
Implementation
Direction? directionThePlayerIsIn() {
Player? player = this.gameRef.player;
if (player == null) return null;
var diffX = position.center.dx - player.position.center.dx;
var diffPositiveX = diffX < 0 ? diffX *= -1 : diffX;
var diffY = position.center.dy - player.position.center.dy;
var diffPositiveY = diffY < 0 ? diffY *= -1 : diffY;
if (diffPositiveX > diffPositiveY) {
if (player.position.center.dx > position.center.dx) {
return Direction.right;
} else if (player.position.center.dx < position.center.dx) {
return Direction.left;
}
} else {
if (player.position.center.dy > position.center.dy) {
return Direction.down;
} else if (player.position.center.dy < position.center.dy) {
return Direction.up;
}
}
return Direction.left;
}