fix: held item display was not updated after server/window GUI manipulation on inventory
This commit is contained in:
parent
03a26d5c70
commit
3329d0e75e
2 changed files with 11 additions and 1 deletions
|
|
@ -547,6 +547,15 @@ async function connect (connectOptions: ConnectOptions) {
|
|||
window.Vec3 = Vec3
|
||||
window.pathfinder = pathfinder
|
||||
|
||||
// patch mineflayer
|
||||
// todo move to mineflayer
|
||||
bot.inventory.on('updateSlot', (index) => {
|
||||
if ((index as unknown as number) === bot.quickBarSlot + bot.inventory.hotbarStart) {
|
||||
//@ts-expect-error
|
||||
bot.emit('heldItemChanged')
|
||||
}
|
||||
})
|
||||
|
||||
miscUiState.gameLoaded = true
|
||||
miscUiState.loadedServerIndex = connectOptions.serverIndex ?? ''
|
||||
customEvents.emit('gameLoaded')
|
||||
|
|
|
|||
|
|
@ -20,13 +20,14 @@ export default () => {
|
|||
return canvas.toDataURL('image/png')
|
||||
})
|
||||
|
||||
// TODO delete maps!
|
||||
const updateHeldMap = () => {
|
||||
setDataUrl(null)
|
||||
if (!bot.heldItem || !['filled_map', 'map'].includes(bot.heldItem.name)) return
|
||||
// setDataUrl(true)
|
||||
const mapNumber = (bot.heldItem?.nbt?.value as any)?.map?.value
|
||||
// if (!mapNumber) return
|
||||
setDataUrl(bot.mapDownloader.maps[mapNumber] as unknown as string)
|
||||
setDataUrl(bot.mapDownloader.maps?.[mapNumber] as unknown as string)
|
||||
}
|
||||
|
||||
bot.on('heldItemChanged' as any, () => {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue