mirror of
https://github.com/kolbytn/mindcraft.git
synced 2025-08-21 22:53:45 +02:00
will now give self item in creative mode
This commit is contained in:
parent
6935035c7a
commit
7e71f12026
4 changed files with 14 additions and 2 deletions
|
@ -12,6 +12,7 @@
|
|||
"mineflayer-pvp": "^1.3.2",
|
||||
"openai": "^4.4.0",
|
||||
"patch-package": "^8.0.0",
|
||||
"prismarine-item": "^1.14.0",
|
||||
"replicate": "^0.29.4",
|
||||
"vec3": "^0.1.10",
|
||||
"yargs": "^17.7.2"
|
||||
|
|
|
@ -525,7 +525,7 @@ export async function placeBlock(bot, blockType, x, y, z, placeOn='bottom', dont
|
|||
blockType += `[facing=${face}]`;
|
||||
}
|
||||
}
|
||||
if (blockType === 'repeater' || blockType === 'comparator') {
|
||||
if (blockType === 'ladder' || blockType === 'repeater' || blockType === 'comparator') {
|
||||
blockType += `[facing=${face}]`;
|
||||
}
|
||||
|
||||
|
@ -540,6 +540,10 @@ export async function placeBlock(bot, blockType, x, y, z, placeOn='bottom', dont
|
|||
}
|
||||
|
||||
let block = bot.inventory.items().find(item => item.name === blockType);
|
||||
if (!block && bot.game.gameMode === 'creative') {
|
||||
await bot.creative.setInventorySlot(36, mc.makeItem(blockType, 1)); // 36 is first hotbar slot
|
||||
block = bot.inventory.items().find(item => item.name === blockType);
|
||||
}
|
||||
if (!block) {
|
||||
log(bot, `Don't have any ${blockType} to place.`);
|
||||
return false;
|
||||
|
|
|
@ -261,6 +261,8 @@ export function shouldPlaceTorch(bot) {
|
|||
const pos = getPosition(bot);
|
||||
// TODO: check light level instead of nearby torches, block.light is broken
|
||||
let nearest_torch = getNearestBlock(bot, 'torch', 6);
|
||||
if (!nearest_torch)
|
||||
nearest_torch = getNearestBlock(bot, 'wall_torch', 6);
|
||||
if (!nearest_torch) {
|
||||
const block = bot.blockAt(pos);
|
||||
let has_torch = bot.inventory.items().find(item => item.name === 'torch');
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
import minecraftData from 'minecraft-data';
|
||||
import settings from '../../settings.js';
|
||||
import { createBot } from 'mineflayer';
|
||||
import prismarine_items from 'prismarine-item';
|
||||
import { pathfinder } from 'mineflayer-pathfinder';
|
||||
import { plugin as pvp } from 'mineflayer-pvp';
|
||||
import { plugin as collectblock } from 'mineflayer-collectblock';
|
||||
|
@ -10,7 +11,7 @@ const armorManager = plugin;
|
|||
|
||||
const mc_version = settings.minecraft_version;
|
||||
const mcdata = minecraftData(mc_version);
|
||||
|
||||
const Item = prismarine_items(mc_version);
|
||||
|
||||
export const WOOD_TYPES = ['oak', 'spruce', 'birch', 'jungle', 'acacia', 'dark_oak'];
|
||||
export const MATCHING_WOOD_BLOCKS = [
|
||||
|
@ -236,4 +237,8 @@ export function getBlockTool(blockName) {
|
|||
return null;
|
||||
}
|
||||
return getItemName(Object.keys(block.harvestTools)[0]); // Double check first tool is always simplest
|
||||
}
|
||||
|
||||
export function makeItem(name, amount=1) {
|
||||
return new Item(getItemId(name), amount);
|
||||
}
|
Loading…
Add table
Reference in a new issue