UNPKG

mineflayer

Version:

create minecraft bots with a stable, high level API

42 lines (35 loc) 946 B
module.exports = inject function inject (bot, options) { bot.isAlive = true bot._client.on('respawn', (packet) => { bot.isAlive = false bot.emit('respawn') }) bot._client.once('update_health', (packet) => { if (packet.health > 0) { bot.emit('spawn') } }) bot._client.on('update_health', (packet) => { bot.health = packet.health bot.food = packet.food bot.foodSaturation = packet.foodSaturation bot.emit('health') if (bot.health <= 0) { if (bot.isAlive) { bot.isAlive = false bot.emit('death') } if (!options.respawn) return bot.respawn() } else if (bot.health > 0 && !bot.isAlive) { bot.isAlive = true bot.emit('spawn') } }) const respawn = () => { if (bot.isAlive) return bot._client.write('client_command', bot.supportFeature('respawnIsPayload') ? { payload: 0 } : { actionId: 0 }) } bot.respawn = respawn }