From a0893f2b291a268561ef86eb352709158aec26a3 Mon Sep 17 00:00:00 2001 From: jay Date: Thu, 28 Jan 2021 02:50:08 +0500 Subject: [PATCH] feat(mover): :sparkles: allow riding specific entity by name --- lib/plugins/mover.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/plugins/mover.js b/lib/plugins/mover.js index 3f1c51f..92b947c 100644 --- a/lib/plugins/mover.js +++ b/lib/plugins/mover.js @@ -85,14 +85,15 @@ function follow(entity, dynamic = true, distance = 3) { function ride(entity) { entity = entity?.entity || entity const ridableMobs = ["Horse", "Donkey", "Pig", "Strider"] - const vehicle = entity ? entity : bot.nearestEntity(e => { + const vehicle = entity && typeof entity !== "string" ? entity : bot.nearestEntity(e => { + if (typeof entity === "string") return e.name === entity const maybeRidableMob = e.mobType?.split(" ") return e.kind == "Vehicles" || ridableMobs.includes(e.mobType) || maybeRidableMob && ridableMobs.includes(maybeRidableMob[maybeRidableMob.length - 1]) }) if (!vehicle) { - return cfg.quiet || bot.chat(`Nothing to ${message_parts[0]}`) + return cfg.quiet || bot.chat(`nothing to ride!`) } else if ((dist = bot.entity.position.distanceSquared(vehicle.position)) > 36) { bot.lookAt(vehicle.position) follow(vehicle, false) @@ -227,7 +228,7 @@ function command(message_parts, player) { break case "ride": case "mount": - ride() + ride(message_parts2[0]) break case "w": case "f":