refactor(mover): 🚚 move commands inside mover plugin itself
This reduces the code inside the command plugin. Most of the logic was only relevant to moving anyway. Command aliases like `come` and `follow` still remain in command plugin.
This commit is contained in:
@@ -219,100 +219,7 @@ function command(username, message) {
|
||||
break;
|
||||
case "move":
|
||||
case "go":
|
||||
// TODO move most of the subcommands into mover.js?
|
||||
const message_parts2 = message_parts.slice(2)
|
||||
switch (message_parts[1]) {
|
||||
case "init":
|
||||
cfg.plugins.mover.initMoves()
|
||||
break
|
||||
case "near":
|
||||
// message_parts2 = message_parts.slice(2)
|
||||
switch (message_parts2.length) {
|
||||
case 0:
|
||||
cfg.plugins.mover.moveNear(bot.nearestEntity().position)
|
||||
break
|
||||
case 1:
|
||||
switch (message_parts2[0]) {
|
||||
case "me":
|
||||
if (player) {
|
||||
cfg.plugins.mover.moveNear(player.position)
|
||||
} else {
|
||||
cfg.quiet || bot.chat("can't see you")
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
const aPlayer = bot.players[message_parts[2]] ? bot.players[message_parts[2]].entity : null
|
||||
if (aPlayer) {
|
||||
cfg.plugins.mover.moveNear(aPlayer.position)
|
||||
} else {
|
||||
cfg.quiet || bot.chat(`can't see ${message_parts[2]}`)
|
||||
}
|
||||
break;
|
||||
}
|
||||
break
|
||||
case 2:
|
||||
//TODO this isn't near
|
||||
cfg.plugins.mover.moveXZ(message_parts2)
|
||||
break
|
||||
case 3:
|
||||
//TODO more checks
|
||||
cfg.plugins.mover.moveNear(message_parts2)
|
||||
break
|
||||
default:
|
||||
break
|
||||
}
|
||||
break
|
||||
|
||||
case "follow":
|
||||
// message_parts2 = message_parts.slice(2)
|
||||
switch (message_parts2.length) {
|
||||
case 0:
|
||||
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] === "me", dist)
|
||||
} else {
|
||||
cfg.quiet || bot.chat("can't see you")
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
const aPlayer = bot.players[message_parts[2]] ? bot.players[message_parts[2]].entity : null
|
||||
if (aPlayer) {
|
||||
cfg.plugins.mover.follow(aPlayer)
|
||||
} else {
|
||||
cfg.quiet || bot.chat(`can't see ${message_parts[2]}`)
|
||||
}
|
||||
break;
|
||||
}
|
||||
break
|
||||
// case 2:
|
||||
// bot.lookAt({}) goalxz?
|
||||
// break
|
||||
// case 3:
|
||||
//TODO more checks
|
||||
// cfg.plugins.mover.moveNear(message_parts2)
|
||||
// break
|
||||
default:
|
||||
todo()
|
||||
break
|
||||
}
|
||||
break
|
||||
case "stop":
|
||||
cfg.plugins.mover.stop()
|
||||
break
|
||||
default:
|
||||
return todo()
|
||||
break;
|
||||
}
|
||||
cfg.plugins.mover.command(message_parts.slice(1), player)
|
||||
break;
|
||||
|
||||
case "attack":
|
||||
|
Reference in New Issue
Block a user