From 360eeff02f0ca09443b366b89b61c76b4de2e053 Mon Sep 17 00:00:00 2001 From: jay Date: Mon, 10 May 2021 17:52:53 +0500 Subject: [PATCH] feat(informer): :sparkles: add item info based on player Change the parameter order of `item` function to accomodate this --- lib/plugins/informer.js | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/lib/plugins/informer.js b/lib/plugins/informer.js index aa5cbe9..292827a 100644 --- a/lib/plugins/informer.js +++ b/lib/plugins/informer.js @@ -35,18 +35,18 @@ function block(entity = bot.entity, pos = entity?.position?.offset(0, -1, 0)) { } function item( - slot, - entity = bot.entity + entity = bot.entity, + slot = entity.heldItem ) { - const item = slot ? - bot.inventory.slots[parseInt(slot) + bot.QUICK_BAR_START] : - entity.heldItem - console.log(item) + const item = typeof slot === "number" ? + bot.inventory.slots[slot + bot.QUICK_BAR_START] : + slot + console.log("info item:", item) if (!item) { quiet || bot.chat("no item") return item } - let info = [item.type, item.name] + let info = [item.type, item.name, item.count] if (item.metadata) info.push("meta: " + item.metadata.length) if (item.nbt) { info.push(compound_value(item.nbt)) @@ -130,7 +130,15 @@ function command(message_parts, player) { switch (message_parts[0]) { case "i": case "item": - item(message_parts[1]) + switch (message_parts[1]) { + case "me": + item(player) + break + default: + const slot = parseInt(message_parts[1]) + slot && item(undefined, slot) + break + } break case "b": case "block":