feat(mover): ✨ add close(er) command to follow / come closer
This commit is contained in:
parent
8e719d5ccf
commit
69d0f5830d
|
@ -196,7 +196,14 @@ function command(username, message) {
|
||||||
subcommand("go follow " + message_parts.slice(2).join(" "))
|
subcommand("go follow " + message_parts.slice(2).join(" "))
|
||||||
break;
|
break;
|
||||||
case "come":
|
case "come":
|
||||||
|
switch (message_parts[1]) {
|
||||||
|
case "close":
|
||||||
|
case "closer":
|
||||||
|
subcommand("go follow close")
|
||||||
|
break
|
||||||
|
default:
|
||||||
subcommand("go follow once")
|
subcommand("go follow once")
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case "move":
|
case "move":
|
||||||
case "go":
|
case "go":
|
||||||
|
@ -252,11 +259,14 @@ function command(username, message) {
|
||||||
cfg.plugins.mover.follow(bot.nearestEntity())
|
cfg.plugins.mover.follow(bot.nearestEntity())
|
||||||
break
|
break
|
||||||
case 1:
|
case 1:
|
||||||
|
let dist = 3
|
||||||
switch (message_parts2[0]) {
|
switch (message_parts2[0]) {
|
||||||
|
case "close":
|
||||||
|
dist = 1
|
||||||
case "me":
|
case "me":
|
||||||
case "once":
|
case "once":
|
||||||
if (player) {
|
if (player) {
|
||||||
cfg.plugins.mover.follow(player, message_parts2[0] !== "once")
|
cfg.plugins.mover.follow(player, message_parts2[0] === "me", dist)
|
||||||
} else {
|
} else {
|
||||||
cfg.quiet || bot.chat("can't see you")
|
cfg.quiet || bot.chat("can't see you")
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,7 +37,7 @@ function moveNear(pos, distance = 3) {
|
||||||
bot.pathfinder.setGoal(new GoalNear(pos.x, pos.y, pos.z, distance))
|
bot.pathfinder.setGoal(new GoalNear(pos.x, pos.y, pos.z, distance))
|
||||||
}
|
}
|
||||||
|
|
||||||
function follow(entity, dynamic = true) {
|
function follow(entity, dynamic = true, distance = 3) {
|
||||||
console.assert(entity)
|
console.assert(entity)
|
||||||
const { GoalFollow } = require('mineflayer-pathfinder').goals
|
const { GoalFollow } = require('mineflayer-pathfinder').goals
|
||||||
|
|
||||||
|
@ -53,7 +53,7 @@ function follow(entity, dynamic = true) {
|
||||||
// console.log(entity)
|
// console.log(entity)
|
||||||
|
|
||||||
bot.pathfinder.setMovements(movements.defaultMove)
|
bot.pathfinder.setMovements(movements.defaultMove)
|
||||||
bot.pathfinder.setGoal(new GoalFollow(entity, 3), dynamic)
|
bot.pathfinder.setGoal(new GoalFollow(entity, distance), dynamic)
|
||||||
}
|
}
|
||||||
|
|
||||||
function hit(blockOrEntity) {
|
function hit(blockOrEntity) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user