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(" "))
|
||||
break;
|
||||
case "come":
|
||||
subcommand("go follow once")
|
||||
switch (message_parts[1]) {
|
||||
case "close":
|
||||
case "closer":
|
||||
subcommand("go follow close")
|
||||
break
|
||||
default:
|
||||
subcommand("go follow once")
|
||||
}
|
||||
break;
|
||||
case "move":
|
||||
case "go":
|
||||
|
@ -252,11 +259,14 @@ function command(username, message) {
|
|||
cfg.plugins.mover.follow(bot.nearestEntity())
|
||||
break
|
||||
case 1:
|
||||
let dist = 3
|
||||
switch (message_parts2[0]) {
|
||||
case "close":
|
||||
dist = 1
|
||||
case "me":
|
||||
case "once":
|
||||
if (player) {
|
||||
cfg.plugins.mover.follow(player, message_parts2[0] !== "once")
|
||||
cfg.plugins.mover.follow(player, message_parts2[0] === "me", dist)
|
||||
} else {
|
||||
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))
|
||||
}
|
||||
|
||||
function follow(entity, dynamic = true) {
|
||||
function follow(entity, dynamic = true, distance = 3) {
|
||||
console.assert(entity)
|
||||
const { GoalFollow } = require('mineflayer-pathfinder').goals
|
||||
|
||||
|
@ -53,7 +53,7 @@ function follow(entity, dynamic = true) {
|
|||
// console.log(entity)
|
||||
|
||||
bot.pathfinder.setMovements(movements.defaultMove)
|
||||
bot.pathfinder.setGoal(new GoalFollow(entity, 3), dynamic)
|
||||
bot.pathfinder.setGoal(new GoalFollow(entity, distance), dynamic)
|
||||
}
|
||||
|
||||
function hit(blockOrEntity) {
|
||||
|
|
Loading…
Reference in New Issue
Block a user