Код: Выделить всё
bot.on('path_update', (r) => {
console.log('Goal updated');
});
bot.on('goal_reached', (goal) => {
console.log('Here I am');
});
else if (message.startsWith('goto')) {
const cmd = message.split('');
if (cmd.length === 4) {
const x = parseInt(cmd[1], 10);
const y = parseInt(cmd[2], 10);
const z = parseInt(cmd[3], 10);
bot.pathfinder.setMovements(DefaultMove);
bot.pathfinder.setGoal(new GoalBlock(x, y, z));
} else if (cmd.length === 3) {
const x = parseInt(cmd[1], 10);
const z = parseInt(cmd[3], 10);
bot.pathfinder.setMovements(DefaultMove);
bot.pathfinder.setGoal(new GoalXZ(x, z));
} else if (cmd.length === 2) {
const y = parseInt(cmd[1], 10);
bot.pathfinder.setMovements(DefaultMove);
bot.pathfinder.setGoal(new GoalY(y));
}
}
Вот фрагмент события «goto», где, если я наберу «goto», [x] [y] [z]' Я хочу, чтобы бот перешел к этой конкретной координате в мире Minecraft.
Однако, когда я пытаюсь выполнить это событие, он даже не зарегистрироваться в терминале, что наводит меня на подозрение, что с эту часть кода.
Код: Выделить всё
else if (message.startsWith('goto'))
Я пробовал искать и даже скопировать реальный код из github mineflayer-pathfinder сама страница, но все равно не работает
Вот видео, где я воспроизвожу проблему
https://imgur.com/a/IFb1gak
Подробнее здесь: https://stackoverflow.com/questions/793 ... neflayer-b