Содержание сгенерировано с помощью DocToc
- API
- Enums
- Classes
- Bot
- mineflayer.createBot(options)
- Properties
- bot.registry
- bot.world
- bot.entity
- bot.entities
- bot.username
- bot.spawnPoint
- bot.heldItem
- bot.usingHeldItem
- bot.game.levelType
- bot.game.dimension
- bot.game.difficulty
- bot.game.gameMode
- bot.game.hardcore
- bot.game.maxPlayers
- bot.game.serverBrand
- bot.game.minY
- bot.game.height
- bot.physicsEnabled
- bot.player
- bot.players
- bot.tablist
- bot.isRaining
- bot.rainState
- bot.thunderState
- bot.chatPatterns
- bot.settings.chat
- bot.settings.colorsEnabled
- bot.settings.viewDistance
- bot.settings.difficulty
- bot.settings.skinParts
- bot.settings.skinParts.showCape - boolean
- bot.settings.skinParts.showJacket - boolean
- bot.settings.skinParts.showLeftSleeve - boolean
- bot.settings.skinParts.showRightSleeve - boolean
- bot.settings.skinParts.showLeftPants - boolean
- bot.settings.skinParts.showRightPants - boolean
- bot.settings.skinParts.showHat - boolean
- bot.settings.enableTextFiltering - boolean
- bot.settings.enableServerListing - boolean
- bot.experience.level
- bot.experience.points
- bot.experience.progress
- bot.health
- bot.food
- bot.foodSaturation
- bot.oxygenLevel
- bot.physics
- bot.fireworkRocketDuration
- bot.simpleClick.leftMouse (slot)
- bot.simpleClick.rightMouse (slot)
- bot.time.doDaylightCycle
- bot.time.bigTime
- bot.time.time
- bot.time.timeOfDay
- bot.time.day
- bot.time.isDay
- bot.time.moonPhase
- bot.time.bigAge
- bot.time.age
- bot.quickBarSlot
- bot.inventory
- bot.targetDigBlock
- bot.isSleeping
- bot.scoreboards
- bot.scoreboard
- bot.teams
- bot.teamMap
- bot.controlState
- Events
- "chat" (username, message, translate, jsonMsg, matches)
- "whisper" (username, message, translate, jsonMsg, matches)
- "actionBar" (jsonMsg, verified)
- "message" (jsonMsg, position, sender, verified)
- "messagestr" (message, messagePosition, jsonMsg, sender, verified)
- "inject_allowed"
- "login"
- "spawn"
- "respawn"
- "game"
- "resourcePack" (url, hash)
- "title" (title, type)
- "rain"
- "weatherUpdate"
- "time"
- "kicked" (reason, loggedIn)
- "end" (reason)
- "error" (err)
- "spawnReset"
- "death"
- "health"
- "breath"
- "entityAttributes" (entity)
- "entitySwingArm" (entity)
- "entityHurt" (entity)
- "entityDead" (entity)
- "entityTaming" (entity)
- "entityTamed" (entity)
- "entityShakingOffWater" (entity)
- "entityEatingGrass" (entity)
- "entityHandSwap" (entity)
- "entityWake" (entity)
- "entityEat" (entity)
- "entityCriticalEffect" (entity)
- "entityMagicCriticalEffect" (entity)
- "entityCrouch" (entity)
- "entityUncrouch" (entity)
- "entityEquip" (entity)
- "entitySleep" (entity)
- "entitySpawn" (entity)
- "entityElytraFlew" (entity)
- "itemDrop" (entity)
- "playerCollect" (collector, collected)
- "entityGone" (entity)
- "entityMoved" (entity)
- "entityDetach" (entity, vehicle)
- "entityAttach" (entity, vehicle)
- "entityUpdate" (entity)
- "entityEffect" (entity, effect)
- "entityEffectEnd" (entity, effect)
- "playerJoined" (player)
- "playerUpdated" (player)
- "playerLeft" (player)
- "blockUpdate" (oldBlock, newBlock)
- "blockUpdate:(x, y, z)" (oldBlock, newBlock)
- "blockPlaced" (oldBlock, newBlock)
- "chunkColumnLoad" (point)
- "chunkColumnUnload" (point)
- "soundEffectHeard" (soundName, position, volume, pitch)
- "hardcodedSoundEffectHeard" (soundId, soundCategory, position, volume, pitch)
- "noteHeard" (block, instrument, pitch)
- "pistonMove" (block, isPulling, direction)
- "chestLidMove" (block, isOpen, block2)
- "blockBreakProgressObserved" (block, destroyStage, entity)
- "blockBreakProgressEnd" (block, entity)
- "diggingCompleted" (block)
- "diggingAborted" (block)
- "usedFirework"
- "move"
- "forcedMove"
- "mount"
- "dismount" (vehicle)
- "windowOpen" (window)
- "windowClose" (window)
- "sleep"
- "wake"
- "experience"
- "scoreboardCreated" (scoreboard)
- "scoreboardDeleted" (scoreboard)
- "scoreboardTitleChanged" (scoreboard)
- "scoreUpdated" (scoreboard, item)
- "scoreRemoved" (scoreboard, item)
- "scoreboardPosition" (position, scoreboard)
- "teamCreated" (team)
- "teamRemoved" (team)
- "teamUpdated" (team)
- "teamMemberAdded" (team)
- "teamMemberRemoved" (team)
- "bossBarCreated" (bossBar)
- "bossBarDeleted" (bossBar)
- "bossBarUpdated" (bossBar)
- "heldItemChanged" (heldItem)
- "physicsTick" ()
- "chat:name" (matches)
- "particle"
- Functions
- bot.blockAt(point, extraInfos=true)
- bot.waitForChunksToLoad()
- bot.blockInSight(maxSteps, vectorLength)
- bot.blockAtCursor(maxDistance=256)
- bot.entityAtCursor(maxDistance=3.5)
- bot.blockAtEntityCursor(entity=bot.entity, maxDistance=256)
- bot.canSeeBlock(block)
- bot.findBlocks(options)
- bot.findBlock(options)
- bot.canDigBlock(block)
- bot.recipesFor(itemType, metadata, minResultCount, craftingTable)
- bot.recipesAll(itemType, metadata, craftingTable)
- bot.nearestEntity(match = (entity) => { return true })
- Methods
- bot.end(reason)
- bot.quit(reason)
- bot.tabComplete(str, [assumeCommand], [sendBlockInSight])
- bot.chat(message)
- bot.whisper(username, message)
- bot.chatAddPattern(pattern, chatType, description)
- bot.addChatPattern(name, pattern, chatPatternOptions)
- bot.addChatPatternSet(name, patterns, chatPatternOptions)
- bot.removeChatPattern(name)
- bot.awaitMessage(...args)
- bot.setSettings(options)
- bot.loadPlugin(plugin)
- bot.loadPlugins(plugins)
- bot.hasPlugin(plugin)
- bot.sleep(bedBlock)
- bot.isABed(bedBlock)
- bot.wake()
- bot.setControlState(control, state)
- bot.getControlState(control)
- bot.clearControlStates()
- bot.getExplosionDamages(entity, position, radius, [rawDamages])
- bot.lookAt(point, [force])
- bot.look(yaw, pitch, [force])
- bot.updateSign(block, text, back = false)
- bot.equip(item, destination)
- bot.unequip(destination)
- bot.tossStack(item)
- bot.toss(itemType, metadata, count)
- bot.elytraFly()
- bot.dig(block, [forceLook = true], [digFace])
- bot.stopDigging()
- bot.digTime(block)
- bot.acceptResourcePack()
- bot.denyResourcePack()
- bot.placeBlock(referenceBlock, faceVector)
- bot.placeEntity(referenceBlock, faceVector)
- bot.activateBlock(block, direction?: Vec3, cursorPos?: Vec3)
- bot.activateEntity(entity)
- bot.activateEntityAt(entity, position)
- bot.consume()
- bot.fish()
- bot.activateItem(offHand=false)
- bot.deactivateItem()
- bot.useOn(targetEntity)
- bot.attack(entity, swing = true)
- bot.swingArm([hand], showHand)
- bot.mount(entity)
- bot.dismount()
- bot.moveVehicle(left,forward)
- bot.setQuickBarSlot(slot)
- bot.craft(recipe, count, craftingTable)
- bot.writeBook(slot, pages)
- bot.openContainer(containerBlock or containerEntity, direction?, cursorPos?)
- bot.openChest(chestBlock or minecartchestEntity, direction?, cursorPos?)
- bot.openFurnace(furnaceBlock)
- bot.openDispenser(dispenserBlock)
- bot.openEnchantmentTable(enchantmentTableBlock)
- bot.openAnvil(anvilBlock)
- bot.openVillager(villagerEntity)
- bot.trade(villagerInstance, tradeIndex, [times])
- bot.setCommandBlock(pos, command, [options])
- bot.supportFeature(name)
- bot.waitForTicks(ticks)
- Lower level inventory methods
- bot.clickWindow(slot, mouseButton, mode)
- bot.putSelectedItemRange(start, end, window, slot)
- bot.putAway(slot)
- bot.closeWindow(window)
- bot.transfer(options)
- bot.openBlock(block, direction?: Vec3, cursorPos?: Vec3)
- bot.openEntity(entity)
- bot.moveSlotItem(sourceSlot, destSlot)
- bot.updateHeldItem()
- bot.getEquipmentDestSlot(destination)
- bot.creative
Эти данные хранятся независимо от проекта minecraft-data, и доступны через node-minecraft-data.
Данные доступны в модуле node-minecraft-data.
Используйте require('minecraft-data')(bot.version)
.
Идентификация блоков по ID.
Идентификация предметов по ID.
Название материала и объект, который содержит информацию об инструментах и их эффективности разрушения..
Идентификация крафтов по ID.
Идентификация инструментов по ID.
Идентификация биомов по ID.
Идентификация существ по ID.
Смотрите andrewrk/node-vec3.
Все координаты библиотеки Mineflayer используют данный класс.
x
- Юг.y
- Вверх.z
- Запад.
Функции и методы, требующие точного аргумента позиции, как правило, используют Vec3
,
а также массив с тремя значениями и объект с x
, y
, z
.
Энтити (существо) - это игроки, мобы и объекты. Вы также можете получить доступ
к своему существу, используя bot.entity
.
Смотрите prismarine-entity.
Данные скина хранятся в свойстве skinData
объекта игрока, если имеются.
// player.skinData
{
url: 'http://textures.minecraft.net/texture/...',
model: 'slim' // или 'classic'
}
Смотрите prismarine-block.
block.blockEntity
является дополнительным полем с данными блок-существ в виде Object
.
// sign.blockEntity
{
x: -53,
y: 88,
z: 66,
id: 'minecraft:sign', // 'Sign' в 1.10
Text1: { toString: Function }, // ChatMessage object
Text2: { toString: Function }, // ChatMessage object
Text3: { toString: Function }, // ChatMessage object
Text4: { toString: Function } // ChatMessage object
}
Смотрите prismarine-biome.
Смотрите prismarine-item.
Смотрите prismarine-windows.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
itemType
- Числовой ID предмета.metadata
- Числовое значение мета-данных.null
означает любой вид.count
- Сколько предметов класть.null
будет равно1
.nbt
- Совпадение по нбт.null
отключает это.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении. Выдаёт ошибку, если нет места в инвентаре.
itemType
- Числовой ID предмета.metadata
- Числовое значение мета-данных.null
означает любой вид.count
- Сколько предметов брать.null
будет равно1
.nbt
- Совпадение по нбт.null
отключает это.
Закрывает окно.
Смотрите prismarine-recipe.
Дополнение к windows.Window
для сундуков, раздатчиков и прочих.
Смотрите bot.openContainer(chestBlock или minecartchestEntity)
.
Дополнение к windows.Window
для печки, плавильни и прочих.
Смотрите bot.openFurnace(furnaceBlock)
.
Срабатывает при обновлении furnace.fuel
и/или furnace.progress
.
Срабатывает, когда в печи обновляется слот для плавки.
Эта функция возвращает Promise
с item
в качестве аргумента при завершении.
Эта функция возвращает Promise
с item
в качестве аргумента при завершении.
Эта функция возвращает Promise
с item
в качестве аргумента при завершении.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
Возвращает предмет, который плавится, в виде Item
.
Возвращает топливо в виде Item
.
Возвращает результат плавки в виде Item
.
Возвращает количество оставшегося топлива от 0
до 1
.
Возвращает прогресс плавки предмета от 0
до 1
.
Дополнение к windows.Window
для стола зачарований.
Смотрите bot.openEnchantmentTable(enchantmentTableBlock)
.
Срабатывает, когда enchantmentTable.enchantments
полностью заполнен, и вы
можете сделать выбор, вызвав enchantmentTable.enchant(choice)
.
Возвращает текущий предмет в столе зачарования. Этот метод может использоваться, чтобы положить или забрать предмет.
16-битный xpseed, отправленный сервером.
Возвращает массив из трёх зачарований, доступных для выбора.
level
может быть -1
, если сервер ещё не отправил данные.
Пример:
[
{
level: 3
},
{
level: 4
},
{
level: 9
}
]
Возращает Promise
с item
в качестве аргумента после зачарования.
choice
- [0-2], индекс зачарования, которое вы выбираете.
Возращает Promise
с item
в качестве аргумента при завершении.
Возращает Promise
с void
в качестве аргумента при завершении.
Возращает Promise
с void
в качестве аргумента при завершении.
Дополнение к windows.Window
для наковальни.
Смотрите bot.openAnvil(anvilBlock)
.
Возращает Promise
с void
в качестве аргумента при завершении.
Возращает Promise
с void
в качестве аргумента при завершении.
Срабатывает, когда villager.trades
был загружен.
Массив с вариантами торговли.
Пример:
[
{
firstInput: Item,
output: Item,
hasSecondItem: false,
secondaryInput: null,
disabled: false,
tooluses: 0,
maxTradeuses: 7
},
{
firstInput: Item,
output: Item,
hasSecondItem: false,
secondaryInput: null,
disabled: false,
tooluses: 0,
maxTradeuses: 7
},
{
firstInput: Item,
output: Item,
hasSecondItem: true,
secondaryInput: Item,
disabled: false,
tooluses: 0,
maxTradeuses: 7
}
]
Подобно bot.trade(villagerInstance, tradeIndex, [times])
Имя скорборда.
Заголовок скорборда (может не совпадать с именем).
Объект со всеми элементами скорборда.
Пример:
{
wvffle: { name: 'wvffle', value: 3 },
dzikoysk: { name: 'dzikoysk', value: 6 }
}
Массив со всеми отсортированными элементами скорборда.
Пример:
[
{ name: 'dzikoysk', value: 6 },
{ name: 'wvffle', value: 3 }
]
Название команды.
Определяет, включен ли огонь по своим.
Может быть always
, hideForOtherTeams
, hideForOwnTeam
.
Может быть always
, pushOtherTeams
, pushOwnTeam
.
Цвет (или форматирование) названия команды, например dark_green
, red
, underlined
.
Компонент чата, содержащий префикс команды.
Компонент чата, содержащий суффикс команды.
Массив с участниками команды. Ники игроков и UUID существ.
Название боссбара, передается в ChatMessage
.
Количество здоровья от 0
до 1
.
Количество ячеек, может быть 0
, 6
, 10
, 12
, 20
.
UUID существа, который определяется боссом.
Определяет, стоит ли затемнять небо.
Определяет, является ли боссбар - боссбаром Дракона Края.
Определяет, стоит ли создават туман.
Определяет цвет боссбара. Может быть pink
, blue
, red
, green
, yellow
, purple
, white
.
Идентификатор частицы, который прописан в протоколе.
Название частицы, которое прописано в протоколе.
Расположение частицы в Vec3.
Смещение частицы в Vec3.
Определяет, следует ли принудительно отображать частицу, несмотря на настройки частиц клиента, и увеличивает максимальную дальность прорисовки с 256 до 65536.
Количество созданных частиц.
Скорость частиц в случайном направлении.
Создаёт и возвращает экземпляр класса бота.
options
- это объект, который содержит в себе :
username
: Ник игрока, по умолчанию"Player"
.port
: Порт сервера, по умолчанию25565
.password
: Пароль может быть пропущен, если подключение осуществляется к пиратскому серверу.host
: Айпи сервера, по умолчанию"localhost"
.version
: По умолчанию версия сервера определяется автоматически. Пример использования :"1.12.2"
.auth
: Вид аутентификации, по умолчанию"mojang"
, может быть"microsoft"
.clientToken
: Генерируется, если задан пароль.accessToken
: Генерируется, если задан пароль.logErrors
: По умолчанию включено, используется для отлова и логирования ошибок.hideErrors
: По умолчанию включено, не логирует ошибки (даже если включенlogErrors
).keepAlive
: Отправка пакета активности, по умолчанию включено.checkTimeoutInterval
: По умолчанию30*1000
(30 сек.), проверяет, получен ли пакет активности, иначе отключается.loadInternalPlugins
: Загрузка плагинов, по умолчанию включено.storageBuilder
: Необязательная функция, принимающая в качестве аргумента версию и название мира (worldName
) и возвращающая экземпляр чего-либо с тем же API, что иprismarine-provider-anvil
. Будет использовано для сохранения мира.client
: Экземплярnode-minecraft-protocol
, если не указан, mineflayer создает свой собственный клиент. Это может быть нужно для использования mineflayer через прокси многих клиентов или ванильного клиента и mineflayer клиента.brand
: Название версии, которое будет использовать клиент. По умолчаниюvanilla
. Может использоваться для имитации пользовательских клиентов для серверов, которым это требуется.respawn
: Отвечает за автоматическое возрождение бота, по умолчанию включено.plugins
: Объект : По умолчанию{}
pluginName
:false
: Не загружать плагин с заданным именемpluginName
.pluginName
:true
: Загрузить плагин с заданным именемpluginName
, даже еслиloadInternalplugins
отключен.pluginName
: Функция ввода внешнего плагина : загружает сторонний плагин, переопределяет внутренний плагин с заданным именемpluginName
.
physicsEnabled
: По умолчанию включено. Должна ли физика влиять на бота? Можно изменить с помощьюbot.physicsEnabled
.- chat
- colorsEnabled
- viewDistance
- difficulty
- skinParts
- enableTextFiltering
- enableServerListing
chatLengthLimit
: Максимальное количество символов, отправляемое в чат. Если не установлено, будет установлено следующее: 100 в < 1.11 и 256 в >= 1.11.defaultChatPatterns
: По умолчанию включено, добавляет шаблоны, такие как общий чат и личные сообщения.
Экземпляр minecraft-data
используемый ботом. Передайте это конструкторам, которые ожидают minecraft-data
, таким как prismarine-block
.
Синхронное представление мира. Смотрите prismarine-world.
Срабатывает при обновлении блока. oldBlock
и newBlock
предоставляются для сравнения.
oldBlock
может быть null
при обычном обновлении блока.
Срабатывает в определенной точке. oldBlock
и newBlock
предоставляются для сравнения. Все слушатели получают null
для oldBlock
и newBlock
и автоматически удаляются при выгрузке мира.
oldBlock
может быть null
при обычном обновлении блока.
Ваше собственное существо. Смотрите Entity
.
Все близлежащие существа. Этот объект представляет собой сопоставление entityId
с entity
.
Используйте это, чтобы узнать имя бота.
Показывает координаты спавна бота, на которые указывает компас.
Предмет, который держит бот. Представляет экземпляр prismarine-item, основанный на мета-данных, нбт-данных и т.д.
Использует ли бот предмет, который он держит в руках, например, ест пищу или использует щит.
Тип генерации.
Текущее измерение бота, может быть overworld
, the_end
или the_nether
.
Сложность на сервере.
Игровой режим.
Включен ли режим хардкода.
Ядро сервера.
Минимальная высота Y в мире.
Максимальная высота мира.
Включает физику бота, по умолчанию true
.
Объект игрока.
Пример:
{
username: 'player',
displayName: { toString: Function }, // Объект ChatMessage.
gamemode: 0,
ping: 28,
entity: entity // null, если Вы находитесь слишком далеко
}
Пинг игрока изначально равен 0
, нужно подождать, пока сервер отправит его пинг.
Показывает всех игроков, которые находятся на сервере.
Объект таблиста бота, содержит header
и footer
.
Пример:
{
header: { toString: Function }, // Объект ChatMessage.
footer: { toString: Function } // Объект ChatMessage.
}
Определяет, идёт ли дождь.
Число, указывающее текущий уровень дождя. Когда дождя нет, значение будет равно 0. Когда начнется дождь, значение будет постепенно увеличиваться до 1. Когда дождь прекращается, значение постепенно возвращается к 0.
Каждый раз, когда изменяется bot.rainState
, срабатывает событие "weatherUpdate"
.
Число, указывающее текущий уровень грозы. Когда грозы нет, значение будет равно 0. Когда начнется гроза, значение будет постепенно увеличиваться до 1. Когда гроза прекращается, значение постепенно возвращается к 0.
Каждый раз, когда изменяется bot.thunderState
, срабатывает событие "weatherUpdate"
.
Это то же самое, что и bot.rainState
, но для грозы.
Во время грозы изменяются значения bot.rainState
и bot.thunderState
.
Массив шаблонов следующего формата: [/regex/, "chattype", "description"]
/regex/
- Шаблон регулярного выражения, который должен иметь как минимум две группы.'chattype'
- Тип чата, который может является "chat" или "whisper".'description'
- Описание шаблона, необязательно.
Выбор:
enabled
- Включен (по умолчанию).commandsOnly
- Только команды.disabled
- Выключен.
По умолчанию активно, используется для отображения цветов в чате.
Выбор прорисовки:
far
- Дальняя (по умолчанию).normal
- Нормальная.short
- Малая.tiny
- Минимальная.
Сложность. Вернет то же, что и в server.properties
.
Должны ли отображаться дополнительные детали скинов игроков.
Отображение плаща.
Отображение куртки.
Отображение левого рукава.
Отображение правого рукава.
Отображение левой штанины.
Отображение правой штанины.
Отображение головного убора.
Не используется. По умолчанию выключен в ванильном клиенте.
Этот параметр отправляется на сервер, чтобы определить, должен ли игрок отображаться в списке серверов.
Уровень опыта.
Общее количество очков опыта.
Значение от 0
до 1
- число для перехода на следующий уровень.
Число от 0
до 20
. Каждое число является половиной ячейки здоровья в игре.
Число от 0
до 20
. Каждое число является половиной ячейки голода в игре.
Показывает насыщенность. Голод не уменьшается, если насыщенность больше нуля. Игроки, зашедшие на сервер, автоматически получают насыщенность 5,0
. Еда увеличивает как насыщенность, так и голод.
Число от 0
до 20
. Каждое число отображает количество значков воды, известных как уровень кислорода.
Изменение значений скорости, отдачи, скорости прыжка и т.д. Изменяйте на свой страх и риск!
Сколько физических тиков осталось до окончания ускорения от фейерверка.
То же, что и bot.clickWindow(slot, 0, 0)
.
То же, что и bot.clickWindow(slot, 1, 0)
.
Отображает включено ли игровое правило doDaylightCycle
.
Количество тиков с нулевого дня в мире.
Это значение имеет тип BigInt
и является точным даже при очень больших значениях (более 2^51 - 1 тиков).
Количество тиков с нулевого дня в мире.
Поскольку ограничение Number
в Javascript составляет 2^51 - 1, значение bot.time.time
становится неточным при превышении этого ограничения, рекомендуется использовать bot.time.bigTime
.
Вероятно вам никогда не понадобится bot.time.bigTime
, так как 2^51 - 1 тиков это примерно 14280821 настоящих лет.
Время суток в тиках.
Время основано на тиках, где каждую секунду происходит 20 тиков. 24000 тиков - 1 игровой день, или же 20 реальных минут.
Время суток основано на тиках. 0
- восход, 6000
- полдень, 12000
- закат, а 18000
- полночь.
Отображает, какой день в мире.
Определяет, сейчас день (true
) или ночь (false
).
Основано на времени между 13000
и 23000
тиками.
Фаза луны.
Значение от 0
до 7
, где 0
- полнолуние.
Возраст мира в тиках.
Это значение имеет тип BigInt
и является точным даже при очень больших значениях. (более 2^51 - 1 тиков)
Возраст мира в тиках.
Поскольку ограничение Number
в Javascript составляет 2^51 - 1, значение bot.time.age
становится неточным при превышении этого ограничения, рекомендуется использовать bot.time.bigAge
.
Вероятно вам никогда не понадобится bot.time.bigAge
, так как 2^51 - 1 тиков это примерно 14280821 настоящих лет.
Показывает, какой слот сейчас выбран (0-8).
Экземпляр Window
, который представляет ваш инвентарь.
Показывает блок, который вы сейчас копаете, или же null
.
Возвращает true
или false
, в зависимости от того,
лежите вы в кровати или нет.
Показывает все скорборды в виде объекта: name -> scoreboard
.
Показывает все скорборды в виде объекта: scoreboard displaySlot -> scoreboard
.
belowName
- Cкорборд размещен снизу никнейма.sidebar
- Cкорборд размещен на боковой панели.list
- Cкорборд помещен в список игроков.0-18
- Cлоты, определённые в протоколе.
Все команды (Подобно /team list
).
Список участников команды. Использует никнеймы для игроков и UUID для существ.
Объект, состоящий из основных элементов управления: ['forward', 'back', 'left', 'right', 'jump', 'sprint', 'sneak'].
Установка значения для этого объекта вызовет bot.setControlState.
При получении сообщения в чате от игрока.
username
- Имя отправителя (сравните сbot.username
, если вы не хотите видеть собственные сообщения).message
- Сообщение, очищенное от всех цветовых кодов.translate
- Тип сообщения. В большинстве случаев являетсяnull
.jsonMsg
- Сообщение в формате JSON.matches
- Массив совпадений в регулярных выражениях. Может являтьсяnull
.
При получении сообщения в личных сообщениях от игрока.
username
- И отправителя.message
- Сообщение, очищенное от всех цветовых кодов.translate
- Тип сообщения. В большинстве являетсяnull
.jsonMsg
- Сообщение в формате JSON.matches
- Массив совпадений в регулярных выражениях. Может являтьсяnull
.
При появлении сообщения от сервера над хотбаром.
jsonMsg
- Сообщение в формате JSON.verified
- Если не подтверждено -null
, если подтверждено и правильно -true
, если подтверждено, но не правильно -false
.
При появлении любого серверного сообщения, включая чаты.
jsonMsg
- Объект ChatMessage содержащий форматированное сообщение. Дополнительно может обладать следующими свойствами:- unsigned - Неподтверждённый объект
ChatMessage
. Только для версий 1.19.2+, когда сервер разрешает "небезопасный" чат или сервер изменяет сообщения без подписи игрока.
- unsigned - Неподтверждённый объект
position
- (> = 1.8.1): Положение сообщения в чате может бытьchat
system
game_info
sender
- UUID отправителя, если известно (1.16+), иначеnull
.verified
- Если не подтверждено -null
, если подтверждено и правильно -true
, если подтверждено, но не правильно -false
.
То же самое, что и "message"
, но вызывает .toString()
в объекте prismarine-message
, чтобы сразу получить сообщение.
sender
- UUID отправителя, если известно (1.16+), иначеnull
.verified
- Если не подтверждено -null
, если подтверждено и правильно -true
, если подтверждено, но не правильно -false
.
Срабатывает, когда главный файл загружен, здесь вы можете загрузить mcData
и плагины, но лучше подождать событие "spawn"
.
Срабатывает при успешном подключении к серверу.
Возможно, вам потребуется дождаться события "spawn"
, прежде чем что-либо делать на сервере.
Срабатывает один раз после того, как вы вошли на сервер и появились в мире, а также срабатывает при респавне после смерти.
В большинстве случаев это событие, которое вы хотите прослушать, прежде чем что-либо делать на сервере.
Срабатывает при смене миров и после появления в мире.
В большинстве случаев вам нужно сначала дождаться события "spawn"
вместо этого.
Срабатывает, если сервер меняет свойства в server.properties
.
Срабатывает, когда сервер отправляет ресурспак.
Срабатывает, когда сервер отправляет текст по центру экрана.
title
- Текст на экране.type
- Тип текста "subtitle" или "title"
Срабатывает, когда начинается или прекращается дождь. Если вы присоединитесь к серверу, на котором уже идет дождь, это событие также сработает.
Срабатывает, когда bot.thunderState
или bot.rainState
изменяются.
Если вы присоединитесь к серверу, на котором уже идет дождь, это событие также сработает.
Срабатывает, когда сервер отправляет время. Смотрите bot.time
.
Срабатывает при кике с сервера.
reason
- Причина отключения.loggedIn
-true
, если вы были кикнуты после успешного входа на сервер, илиfalse
, если отключение произошло во время подключения.
Срабатывает, когда вы отключены от сервера.
reason
- причина отключения. (обычно'socketClosed'
)
Срабатывает, когда происходит какая-либо ошибка.
Срабатывает, когда вы не можете заспавниться у своей кровати, и ваша точка появления сбрасывается.
Срабатывает, когда вы умираете.
Срабатывает, когда значения здоровья или голода изменяются.
Срабатывает, когда значение запаса воздуха изменяется.
Срабатывает при изменении атрибутов (свойств) существа.
Если существо начало летать на элитрах.
Если существо подняло предмет.
collector
- Существо, поднявшее предмет.collected
- Существо, которое являлось поднятым предметом.
Если существо сидит в транспортном средстве, таком как лодка или вагонетка.
entity
- Существо, которое сидит в транспортном средстве.vehicle
- Существо, которое является транспортным средством.
(Лучше использовать это событие от bot.world
, чем напрямую от бота)
Срабатывает при обновлении блока. oldBlock
и newBlock
можно сравнить.
Стоит заметить, что oldBlock
может быть null
.
(Лучше использовать это событие от bot.world
, чем напрямую от бота)
Срабатывает при обновлении блока в определенном месте. oldBlock
и newBlock
можно сравнить.
Стоит заметить, что oldBlock
может быть null
.
Срабатывает при установке блока. oldBlock
и newBlock
можно сравнить.
Стоит заметить, что oldBlock
может быть null
.
Срабатывает при обновлении чанка. point
является координатами угла чанка с наименьшими значениями x
, y
, и z
.
Срабатывает, когда вы слышите звуковой эффект.
soundName
- Имя звукового эффекта.position
- Координаты в видеVec3
, где был проигран звук.volume
- Уровень звука в видеfloat
,1.0
является 100%.pitch
- Искажение звука в видеinteger
,63
является 100%.
Срабатывает, когда вы слышите нестандартный звуковой эффект.
soundId
- ID звукового эффекта.soundCategory
- Категория звукового эффекта.position
- Координаты в видеVec3
, где был проигран звук.volume
- Уровень звука в видеfloat
,1.0
является 100%.pitch
- Искажение звука в видеinteger
,63
является 100%.
Срабатывает, когда был проигран звук нотного блока.
block
- Блок, который проиграл звук.instrument
: Объектid
: ID в видеinteger
.name
: Один из видов звука.
pitch
- Высота ноты (от 0 до 24 включительно, где 0 - это самая низкая, а 24 - самая высокая). Больше информации об этом можно найти на оффициальной Minecraft википедии.
block
- Блок, который был открыт. Если это двойной сундук - то отмечается правый блок.isOpen
- Число игроков, открывших сундук. 0, если он закрыт.block2
: Второй блок, который является частью двойного сундук.null
, если это не двойной сундук.
Срабатывает, когда вы наблюдаете процесс разрушения блока
block
- Блок, который ломают.destroyStage
- Уровень прогресса (0-9).entity
- Существо, которое ломает блок.
Срабатывает, когда процесс разрушения блока прекращен. Происходит при прекращении разрушения блока или после его полного разрушения.
block
- Блок, который перестали ломать.entity
- Существо, которое перестало ломать блок.
block
- Блок, который был разрушен.
block
- Блок, который не был разрушен.
Срабатывает при использовании фейерверка во время полёта на элитрах.
Срабатывает при движении бота. Если вы хотите узнать текущее положение, используйте bot.entity.position
, если вы хотите узнать предыдущее положение, используйте bot.entity.position.minus(bot.entity.velocity)
.
Срабатывает при принудительном перемещении бота сервером (телепорт, спавн и т.д.). Если вы хотите узнать текущее положение, используйте bot.entity.position
.
Срабатывает, если вы поставили существо, например вагонетку. Чтобы получить доступ к ней,
используйте bot.vehicle
.
Чтобы сесть в неё, используйте mount
.
Срабатывает, если вы слезли с существа.
Срабатывает, если вы открываете верстак, сундук и т.д.
Срабатывает, если вы закрыли верстак, сундук и т.д.
Срабатывает, если вы легли спать.
Срабатывает, если вы проснулись.
Срабатывает, если значение bot.experience.*
было обновлено.
Срабатывает, если скорборд был создан.
Срабатывает, если скорборд был удален.
Срабатывает, если название скорборда было обновлено.
Срабатывает, если значение в скорборде было обновлено.
Срабатывает, если значение в скорборде было удалено.
Срабатывает, если позиция скорборда была обновлена.
Срабатывает, если команда была создана.
Срабатывает, если команда была удалена.
Срабатывает, если команда была обновлена.
Срабатывает, если участник(и) были добавлены в команду.
Срабатывает, если участник(и) были удалены из команды.
Срабатывает, если боссбар был создан.
Срабатывает, если боссбар был удален.
Срабатывает, если боссбар был обновлен.
Срабатывает, если предмет в руке был изменён.
Срабатывает каждый тик, если bot.physicsEnabled
включен.
Срабатывает, если все регулярные выражения шаблона чата совпадают.
Срабатывает, если появилась частица.
Возвращает блок в point
или null
, если эта точка не загружена. Если значение extraInfos
равно true
, возращает информацию о табличках, картинах, сундуках, шалкерах и т.д. (медленнее).
Смотрите Block
.
Эта функция возвращает Promise
с void
в качестве аргумента, когда все чанки были загружены.
Неподдерживается, используйте blockAtCursor
.
Возвращает блок, на который смотрит бот, либо null
.
maxSteps
- Количество блоков, по умолчанию 256.vectorLength
- Длина вектора, по умолчанию5/16
.
Возвращает блок, на который смотрит бот, либо null
.
maxDistance
- Максимальное расстояние от глаз до блока, по умолчанию 256.
Возвращает существо, на которое смотрит бот, либо null
.
maxDistance
- Максимальное расстояние от глаз до существа, по умолчанию 3,5.
Возвращает блок, на который смотрит существо, либо null
.
entity
- Существо в видеObject
.maxDistance
- Максимальное расстояние от глаз до блока, по умолчанию 256.
Возвращает true
или false
, в зависимости от того,
видит ли бот указанный блок, или нет.
Находит ближайшие блоки от заданной точки.
options
- Параметры для поиска:point
- Начальная позиция поиска (центр). По умолчанию позиция бота.matching
- Функция, которая возращаетtrue
, если данный блок совпадает. Также поддерживает значение в виде ID блока или массива с ID нескольких блоков.useExtraInfo
- Для сохранения обратной совместимости может привести к двум вариантам поведения в зависимости от типа- boolean - Предсталяет функции
matching
больше информации - медленнее. - function - Создаёт двойную функцию проверки, если блок проходит через функцию
matching
, то далее проходит черезuseExtraInfo
с дополнительной информацией.
- boolean - Предсталяет функции
maxDistance
- Самое дальнее расстояние для поиска, по умолчанию 16.count
- Количество блоков, которые нужно найти. По умолчанию 1. Может вернуть меньше, если будет найдено недостаточно блоков.
Возвращает массив (может быть пустым) с координатами найденных блоков (не сами блоки). Массив отсортирован (от ближайших до дальних блоков).
То же самое, что и bot.blockAt(bot.findBlocks(options)[0])
. Возращает один блок, либо null
.
Возвращает, можно ли сломать блок и находится ли в пределах диапозона бота.
Возвращает список рецептов(Recipe
), которые вы можете использовать для крафта
предмета(itemType
) с мета-данными(metadata
).
itemType
- Числовой ID предмета, который вы хотите создать.metadata
- Числовое значение мета-данных создаваемого предмета,null
соответствует любым мета-даннымminResultCount
- Количество создаваемых предметов, на основе ресурсов из вашего инвентаря,null
эквивалентно 1 предмету.craftingTable
- Верстак (или подобный блок) в виде экземпляраBlock
. Еслиnull
, то будут работать только те рецепты, которые можно выполнить в окне инвентаря.
То же, что и bot.recipesFor
, но без проверки количества материала, требуемого для изготовления предмета.
Возвращает ближайшее к боту существо, подходящий по функции (по умолчанию находит любое существо). Возвращает null
, если существо не найдено.
Пример:
const cow = bot.nearestEntity(entity => entity.name.toLowerCase() === 'cow') // используем .toLowercase(), потому что в 1.8 "cow" пишется с большой буквы, что может вызвать несовместимость с новыми версиями
Закрывает соединение с сервером.
reason
- Необязательная строка, в которой указывается причина отключения.
Принудительно завершает соединение по собственной причине (по умолчанию 'disconnect.quitting'
).
Эта функция возвращает Promise
с matches
в качестве аргумента при завершении.
Запрашивает подсказки к командам/аргументам в чате от сервера.
str
- Строка для завершения через подсказки.assumeCommand
- Поле отправляемое серверу, по умолчаниюfalse
.sendBlockInSight
- Поле отправляемое серверу, по умолчаниюtrue
. Установите для этого параметра значениеfalse
, если вы хотите повысить производительность.
Отправляет сообщение в чат. При необходимости разбивает большое сообщение на несколько маленьких.
Аналог "/tell <никнейм>". Все разделенные сообщения будут отправлятся пользователю.
Неподдерживается, используйте addChatPattern
.
Добавляет шаблон чата с помощью регулярных выражений. Полезно, если формат чата сильно меняется за счёт плагинов.
pattern
- Регулярное выражение для совпадения с сообщением.chatType
- Вид сообщения. Является названием события, который будет срабатывать при совпадении с шаблоном. Например: "chat" или "whisper".description
- Необязательно, описание шаблона.
** то же самое, что и bot.addChatPatternSet(name, [pattern], chatPatternOptions)
Создаёт событие, который вызывается каждый раз, когда сообщение совпадает с шаблоном.
Событие будет называться "chat:name"
, где название - это значение name
name
- Название, используемое для прослушивания события.pattern
- Регулярное выражение для совпадения с сообщением.chatPatternOptions
- Объект:repeat
- По умолчаниюtrue
. Нужно ли прослушивать событие после первого совпадения.parse
- Вместо самого сообщения, которое совпало с шаблоном, возвращает группы из регулярного выражения.deprecated
- (нестабильно) используется методомbot.chatAddPattern
для сохранения совместимости, вероятно, будет удален.
Возвращает число, которое используется методом bot.removeChatPattern()
лишь для того, чтобы можно было удалить этот шаблон.
Создаёт событие, который вызывается каждый раз, когда сообщения совпадают с шаблонами.
Событие будет называться "chat:name"
, где название - это значение name
.
name
- Название, используемое для прослушивания события.patterns
- Массив с регулярными выражениями для совпадения с сообщениями.chatPatternOptions
- Объект:repeat
- По умолчаниюtrue
. Нужно ли прослушивать событие после первого совпадения.parse
- Вместо самого сообщения, которое совпало с шаблоном, возвращает группы из регулярного выражения.
Возвращает число, которое используется методом bot.removeChatPattern()
лишь для того, чтобы можно было удалить этот шаблон.
Удаляет шаблон(ы) чата.
name
- Строка или число.
Если name
- строка, все шаблоны с этим названием будут удалены.
Если name
- число, удаляет только определённый шаблон.
Промис, который срабатывает, когда сообщение совпадает с переданными аргументами.
Пример:
async function wait () {
await bot.awaitMessage('<flatbot> hello world') // срабатывает на "hello world" в чате от flatbot
await bot.awaitMessage(['<flatbot> hello', '<flatbot> world']) // срабатывает на "hello" или "world" в чате от flatbot
await bot.awaitMessage(['<flatbot> hello', '<flatbot> world'], ['<flatbot> im', '<flatbot> batman']) // срабатывает на "hello" или "world" или "im" или "batman" в чате от flatbot
await bot.awaitMessage('<flatbot> hello', '<flatbot> world') // срабатывает на "hello" или "world" в чате от flatbot
await bot.awaitMessage(/<flatbot> (.+)/) // срабатывает на первое сообщение подходящее по шаблону
}
Устанавливает значения для bot.settings
.
Загружает плагин. Ничего не делает, если плагин уже был загружен.
plugin
- Функция.
function somePlugin (bot, options) {
function someFunction () {
bot.chat('Yay!')
}
bot.someFunction = someFunction
}
const bot = mineflayer.createBot({})
bot.loadPlugin(somePlugin)
bot.once('login', () => {
bot.someFunction() // Yay!
})
О загрузке плагинов смотрите в bot.loadPlugin
.
plugins
- Массив функций.
Проверяет, загружен ли плагин (или планирует загружаться) для данного бота.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
Отправляет бота спать. bedBlock
должен быть экземпляром Block
, который является кроватью.
Возвращает true
, если bedBlock
является кроватью.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
Поднимает бота с кровати.
Это основной способ управлять ботом. Работает как нажатия кнопок в майнкрафте.
Например, forward
со значением true
будет перемещать бота вперёд. forward
со значением false
остановит бота от движения вперёд.
Вы можете использовать bot.lookAt
вместе с этой функцией. jumper.js показывает на примере, как это можно использовать.
control
- Одно из ['forward', 'back', 'left', 'right', 'jump', 'sprint', 'sneak'].state
-true
илиfalse
.
Возращает true
, если определённый элемент управления включен.
control
- Одно из ['forward', 'back', 'left', 'right', 'jump', 'sprint', 'sneak'].
Отключает элементы управления.
Возвращает, какой урон будет нанесен существу в радиусе вокруг места взрыва.
Будет возвращать null
, если у существа нет брони и rawDamages
является true
, потому что функция не может рассчитать урон с броней без самой брони.
entity
- Экземпляр существа.position
- Экземпляр Vec3.radius
- Радиус взрыва в виде числа.rawDamages
- Необязательно, еслиtrue
, то при рассчётах не считает броню.
Эта функция возвращает Promise
с void
в качестве аргумента, когда вы смотрите в указанную точку.
point
- Экземпляр Vec3. Поворачивает голову к указанной точке.force
- Смотритеforce
вbot.look
.
Эта функция возвращает Promise
с void
в качестве аргумента, когда вы смотрите с указанным yaw
и pitch
.
Устанавливает направление головы.
yaw
- Количество радианов по горизонтальной оси, начиная с востока по часовой стрелке.pitch
- Количество радианов для поворота вверх или вниз.0
- строго вперед.pi / 2
- смотреть вверх.-pi / 2
- смотреть вниз.force
- Если установленtrue
, плавного поворота не будет. Укажите значениеtrue
, если хотите передать серверу куда вы целитесь, например при бросании предметов или выстреле с лука. Это не требуется для вычислений на стороне клиента, таких как направление ходьбы.
Изменяет текст на табличке. В Майнкрафте 1.20 и выше будет пытаться изменить текст с обратной стороны, если табличка не прикреплена к стене (Значение back
).
Эта функция возвращает Promise
с void
в качестве аргумента, когда вы надели предмет или когда узнаёте, что вам не удалось надеть предмет.
Надевает предмет из вашего инвентаря. Если аргумент item
является экземпляром Item
, то функция будет пытаться надеть указанный предмет из слота окна. Если аргумент item
является числом, то функция будет пытаться надеть первый попавшийся предмет в инвентаре с этим ID. (Проверка хотбара идёт последней. Слоты брони, крафта, результата крафта и второй руки не проверяются).
item
- ЭкземплярItem
или число с ID предмета. Смотритеwindow.items()
.destination
"hand"
- (ведущая рука)null
альтернатива к этому."head"
- (шлем)"torso"
- (нагрудник)"legs"
- (поножи)"feet"
- (ботинки)"off-hand"
- (вторая рука) Если доступно.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
Снимает предмет.
Эта функция возвращает Promise
с void
в качестве аргумента при выбрасывании.
item
- Cтак предметов, которые вы хотите выбросить.
Эта функция возвращает Promise
с void
в качестве аргумента при одном выбрасывании.
itemType
- Числовой ID предмета, который вы хотите выбросить.metadata
- Мета-данные предмета. Используйтеnull
, чтобы выбрать любые мета-данные.count
- Количество предметов, которые вы хотите выбросить.null
равно1
.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении полёта на элитрах.
В случае сбоя выдаёт сообщение об ошибке.
Эта функция возвращает Promise
с void
в качестве аргумента, когда блок был сломан или разрушение было прервано.
Начинает ломать блок предметом, который находится в руке.
Смотрите также события "diggingCompleted"
и "diggingAborted"
.
Обратите внимание, что вы не сможете ломать другие блоки, пока выбранный блок не будет сломан, либо не будет вызвана функция bot.stopDigging()
.
block
- Блок, который нужно сломать.forceLook
- (необязательно) еслиtrue
, сразу смотрит на блок и начинает ломать. Еслиtrue
, бот плавно поворачивается к блоку, который нужно сломать. Кроме того, можно присвоить значение'ignore'
, чтобы бот вообще не двигал головой. Также можно присвоить значение'raycast'
для поворота головы бота до места, куда бот смотрит.digFace
- (необязательно) По умолчанию'auto'
, смотрит на центр блока и ломает верхнюю грань. Также может быть вектором vec3 для направления бота при разрушении блока. Например:vec3(0, 1, 0)
, когда копаешь сверху. Кроме того, может быть'raycast'
, оно проверяет, видна ли сторона для бота и копает с этим направлением. Полезно для серверов с анти-читом.
Останавливает разрушение блока.
Покажет время, которое нужно потратить, чтобы сломать блок в миллисекундах.
Подтверждает загрузку ресурс-пака.
Отклоняет загрузку ресурс-пака.
Эта функция возвращает Promise
с void
в качестве аргумента, когда сервер подтверждает, что блок поставлен.
referenceBlock
- Блок, на котором вы хотите разместить свой блок.faceVector
- Одно из шести направлений (Например:new Vec3(0, 1, 0)
для верхней грани), указывающее, на какую граньreferenceBlock
будет установлен новый блок.
Новый блок будет размещен на referenceBlock.position.plus(faceVector)
.
Эта функция возвращает Promise
с Entity
в качестве аргумента при завершении.
referenceBlock
- Блок, на котором вы хотите разместить существо.faceVector
- Одно из шести направлений (Например:new Vec3(0, 1, 0)
для верхней грани), указывающее, на какую граньreferenceBlock
будет установлено существо.
Новое существо будет размещено на referenceBlock.position.plus(faceVector)
.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
Ударяет нотный блок, открывает дверь и т.д.
block
- Блок для активации.direction
- (необязательно) По умолчаниюnew Vec3(0, 1, 0)
(сверху). Вектор, отвечающий с какой стороны будет активироваться блок. Ничего не делает, когда целью является существо-хранилище.cursorPos
- (необязательно) По умолчаниюnew Vec3(0.5, 0.5, 0.5)
(центр блока). Является точкой, куда будет смотреть бот при активации блока. Отправляется с пакетом активации блока. Ничего не делает, когда целью является существо-хранилище.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
Нажимает на существо, например житель, или NPC.
entity
- Существо для активации.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
Нажимает на существо с указанной позицией, полезно при взаимодействии с стойками для брони.
entity
- Существо для активации.position
- Позиция для клика.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении употребления.
Съедает/выпивает предмет, который находится в руке.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении рыбалки.
Использует удочку.
Активирует предмет, который находится в руке. Используется для выстрела из лука, бросания яиц, использования фейерверков и т.д.
offHand
- Во второй ли руке находится предмет для активации.
Деактивирует предмет, который находится в руке. Например для прекращения натягивания тетевы лука и т.д.
Использует предмет, который находится в руке, на существе. Например, одеть седло или использовать ножницы.
Атакует игрока или моба.
entity
- Тип существа. Чтобы получить конкретное существо, используйте bot.nearestEntity() или bot.entities.swing
- По умолчаниюtrue
. Еслиfalse
анимация руки при ударе не будет отображаться.
Проигрывает анимацию руки при ударе.
hand
- Может бытьleft
илиright
, в зависимости от того, какую руку нужно анимировать. По умолчанию:right
.showHand
- Нужно ли добавлять руку в пакет. По умолчанию:true
.
Сесть в транспортное средство. Чтобы слезть, используйте bot.dismount
.
Вылезти из транспортного средства.
Двигаться в транспортном средстве:
left
- Может быть -1 или 1 : -1 означает вправо, 1 означает влево.forward
- Может быть -1 или 1 : -1 означает назад, 1 означает вперед.
Направление относительно того, куда смотрит бот.
Выбирает слот в хотбаре.
slot
- Слот в хотбаре (0-8).
Эта функция возвращает Promise
с void
в качестве аргумента при завершении крафта и обновлении инвентаря.
recipe
- Рецепт крафта (экземплярRecipe
). Смотритеbot.recipesFor
.count
- Количество операций для крафта. Например: Если вы хотите скрафтить 8 палок из досок, вы должны установитьcount
на2
.null
является1
.craftingTable
- Блок верстака (экземплярBlock
), Вы можете использоватьnull
, если рецепт можно использовать в инвентаре.
Эта функция возвращает Promise
с void
в качестве аргумента, когда написание было выполнено успешно или произошла ошибка.
slot
- Слот в инвентаре (например, 36 - первый слот в хотбаре).pages
- Массив со страницами.
Открывает хранилище блока или существа.
containerBlock
илиcontainerEntity
- Экземпляр блока или существа для открытия.direction
- (необязательно) По умолчаниюnew Vec3(0, 1, 0)
(сверху). Вектор, отвечающий с какой стороны будет активироваться блок. Ничего не делает, когда целью является существо-хранилище.cursorPos
- (необязательно) По умолчаниюnew Vec3(0.5, 0.5, 0.5)
(центр блока). Является точкой, куда будет смотреть бот при активации блока. Отправляется с пакетом активации блока. Ничего не делает, когда целью является существо-хранилище.
Вовзращает Promise
с экземпляром Container
, которое представляет хранилище, которое вы открываете.
Устарело. То же самое, что openContainer
.
Возвращает Promise
с экземпляром Furnace
, представляющий печь, которую вы открываете.
Устарело. То же самое, что openContainer
.
Возвращает Promise
с экземпляром EnchantmentTable
, представляющий стол зачарований, который вы открываете.
Возвращает Promise
с экземпляром anvil
, представляющий наковальню, которую вы открываете.
Возвращает Promise
с экземпляром Villager
, представляющий жителя, с которым вы торгуете.
Вы можете прослушивать события ready
для этого Villager
, чтобы знать, когда он готов торговаться.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
villagerInstance
- Житель, с которым вы торгуете.tradeIndex
- Номер предложения.times
- Сколько раз произвести торговлю.
Устанавливает настройки командного блока в позиции pos
.
Пример аргумента options
:
{
mode: 2,
trackOutput: true,
conditional: false,
alwaysActive: true
}
options.mode
может иметь 3 значения: 0 (Цепной), 1 (Цикличный), 2 (Импульсный)
Все дополнительные настройки по умолчанию false
, кроме mode
, который равен 2 (для повторения командного блока по умолчанию в Майнкрафте).
Может использоваться для проверки особой для текущей версии Майнкрафт возможности. Обычно это требуется только для обработки функций, зависящих от версии.
Список возможностей можно найти в файле ./lib/features.json.
Это функция основана на промисе. Она ожидает определённое количество игровых тиков перед продолжением. Может быть полезно для быстрых таймеров, который требуют особых задержек, независимо от заданной физической скорости тиканья бота. Это похоже на стандартную функцию Javascript setTimeout
, но выполняется специально по физическому таймеру бота.
Эти методы могут быть иногда полезны, но мы рекомендуем использовать методы, описанные выше.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
Единственное действительное значение для mode
- 0. Нажатие с шифтом или перемещение через мышь не реализовано.
Нажимает на текущее окно. Подробнее - https://wiki.vg/Protocol#Click_Container
Рекомендуется использовать bot.simpleClick.*
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
Помещает предмет в слот в указаном диапазоне.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
Помещает предмет в слот инвентаря.
Закрывает окно.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
Перемещает предмет с одного диапазона в другой. options
это объект, содержащий :
window
: (необязательно) Окно, куда требуется положить предмет.itemType
: Тип предмета.metadata
: (необязательно) Мета-данные предмета.sourceStart
иsourceEnd
: Старый диапозон.sourceEnd
необязателен и будет по умолчанию равенsourceStart
+ 1.destStart
иdestEnd
: Новый диапозон.destEnd
необязателен и будет по умолчанию равенdestStart
+ 1.count
: Количество предметов. По умолчанию:1
.nbt
: Нбт-данные предмета. По умолчанию:nullish
(игнорирует нбт).
Открывает блок, например сундук. Возвращает Promise
с открытым окном (Window
).
block
- Блок, который нужно открыть боту.direction
- (необязательно) По умолчаниюnew Vec3(0, 1, 0)
(сверху). Вектор, отвечающий с какой стороны будет активироваться блок. Ничего не делает, когда целью является существо-хранилище.cursorPos
- (необязательно) По умолчаниюnew Vec3(0.5, 0.5, 0.5)
(центр блока). Является точкой, куда будет смотреть бот при активации блока. Отправляется с пакетом активации блока. Ничего не делает, когда целью является существо-хранилище.
Открывает GUI существа, например жителя. Возвращает Promise
с открытым окном (Window
).
entity
- Существо, GUI которого нужно открыть.
Эта функция возвращает Promise
с void
в качестве аргумента при завершении.
Помещает предмет со слота sourceSlot
в слот destSlot
в открытом окне.
Обновляет bot.heldItem
.
Получает ID слота экипировки по названию.
Доступны:
- head (шлем)
- torso (нагрудник)
- legs (поножи)
- feet (ботинки)
- hand (главная рука)
- off-hand (вторая рука)
Эта коллекция API полезна в творческом режиме. Обнаружение и изменение игровых режимов здесь не реализовано, но предполагается и часто требуется, чтобы бот находился в творческом режиме для работы этих функций.
Эта функция возвращает Promise
с void
в качестве аргумента, когда сервер выдаёт предмет в слот.
Выдёт боту указанный предмет в слоте инвентаря.
slot
- Номер слота (например: 36 - первый слот в хотбаре).item
- Экземпляр prismarine-item, содержащий мета-данные, нбт-данные и т.д. Еслиitem
равенnull
, предмет в указанном слоте удаляется.
Если этот метод что-либо изменит, вы можете узнать об этом через bot.inventory.on("updateSlot")
.
Эта функция возвращает Promise
с void
в качестве аргумента, когда сервер очищает слот.
Устанавливает значение null
для предмета в заданном слоте.
slot
- Номер слота (например: 36 - первый слот в хотбаре).
Эта функция возвращает Promise
с void
в качестве аргумента, когда сервер очищает слоты.
Эта функция возвращает Promise
с void
в качестве аргумента, когда бот достигает точки назначения.
Вызывает startFlying()
и движется к месту назначения по прямой.
destination
- это Vec3
. Координаты x
и z
обычно заканчиваются на .5
.
Функция не будет работать, если на пути присутствуют препятствия.
Рекомендуется отправлять на небольшие расстояния.
Этот метод не пытается найти путь до точки. Ожидается, что реализация поиска пути будет использовать этот метод для перемещения на <2 блоков одновременно.
Чтобы остановить полет, используйте stopFlying()
.
Устанавливает bot.physics.gravity
на 0
.
Чтобы остановить полет, используйте stopFlying()
.
Этот метод полезен, если вы хотите летать, копая землю под собой.
Нет необходимости вызывать эту функцию перед вызовом flyTo()
.
Обратите внимание, что во время полета bot.entity.velocity
не будет точным.
Восстанавливает bot.physics.gravity
к исходному значению.