updateDirectionChange function
Implementation
void updateDirectionChange(
Direction dir, Snake snake, GameMap gameMap, Set<Food> foods) {
final didMove = snake.move(
dir,
walls: gameMap.walls,
);
if (!didMove) {
gameOver();
}
final updated = gameMap.updateEmptyPoints(snake.points);
if (!updated) {
gameOver();
}
if (foods.any((f) => f.point == snake.head)) {
eatFood(snake.head, foods, snake, gameMap);
}
}