From 8de616b37137a25221953c8577b04c924376f5cd Mon Sep 17 00:00:00 2001 From: Neko Ayaka Date: Thu, 9 Jan 2025 16:03:07 +0800 Subject: [PATCH] fix: impl --- services/minecraft/src/mineflayer/echo.ts | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/services/minecraft/src/mineflayer/echo.ts b/services/minecraft/src/mineflayer/echo.ts index aa6799a9a..cf03105a7 100644 --- a/services/minecraft/src/mineflayer/echo.ts +++ b/services/minecraft/src/mineflayer/echo.ts @@ -1,27 +1,23 @@ -import type { Mineflayer } from '../libs/mineflayer' import type { MineflayerPlugin } from '../libs/mineflayer/plugin' import { useLogg } from '@guiiai/logg' import { formBotChat } from '../libs/mineflayer/message' export function Echo(): MineflayerPlugin { - let mineflayer: Mineflayer - let onChatHandler: (username: string, message: string) => void const logger = useLogg('Echo').useGlobalConfig() return { - created(_mineflayer) { - mineflayer = _mineflayer - onChatHandler = formBotChat(mineflayer.username, (username, message) => { + spawned(mineflayer) { + const onChatHandler = formBotChat(mineflayer.username, (username, message) => { logger.withFields({ username, message }).log('Chat message received') mineflayer.bot.chat(message) }) - }, - spawned() { + + this.beforeCleanup = () => { + mineflayer.bot.removeListener('chat', onChatHandler) + } + mineflayer.bot.on('chat', onChatHandler) }, - beforeCleanup() { - mineflayer.bot.removeListener('chat', onChatHandler) - }, } }