LookAtMySuitBot/js/node_modules/mineflayer/examples/python/basic.py

42 lines
1.0 KiB
Python

from javascript import require, On
mineflayer = require('mineflayer')
pathfinder = require('mineflayer-pathfinder')
RANGE_GOAL = 1
BOT_USERNAME = 'python'
bot = mineflayer.createBot({
'host': '127.0.0.1',
'port': 25565,
'username': BOT_USERNAME
})
bot.loadPlugin(pathfinder.pathfinder)
print("Started mineflayer")
@On(bot, 'spawn')
def handle(*args):
print("I spawned 👋")
movements = pathfinder.Movements(bot)
@On(bot, 'chat')
def handleMsg(this, sender, message, *args):
print("Got message", sender, message)
if sender and (sender != BOT_USERNAME):
bot.chat('Hi, you said ' + message)
if 'come' in message:
player = bot.players[sender]
print("Target", player)
target = player.entity
if not target:
bot.chat("I don't see you !")
return
pos = target.position
bot.pathfinder.setMovements(movements)
bot.pathfinder.setGoal(pathfinder.goals.GoalNear(pos.x, pos.y, pos.z, RANGE_GOAL))
@On(bot, "end")
def handle(*args):
print("Bot ended!", args)