Brikster / Chatty

Bukkit-compatible chat management system
MIT License
91 stars 50 forks source link

[v3] Поддержка ItemsAdder #275

Open s3nkwr opened 8 months ago

s3nkwr commented 8 months ago

Заполнители по типу :+1: не работают и просто не парсятся ItemsAdder'ом, Также команда \/e не работает. выдает ошибку про асинхронность. Возможно тут уже проблема ItemsAdder

[11:35:46 INFO]: SomeThings1 issued server command: /e pepe
[11:35:46 INFO]: [ru.brikster.chatty.chat.executor.LegacyEventExecutor] Early context processed for 1ms (event: 491137997)
[11:35:46 ERROR]: [ru.brikster.chatty.chat.executor.LegacyEventExecutor] Cannot handle chat event
java.lang.IllegalStateException: ChattyPreMessageEvent may only be triggered asynchronously.
        at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:40) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:126) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:617) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:?]
        at ru.brikster.chatty.chat.executor.LegacyEventExecutor.handleFinishedEarlyContextEvent(LegacyEventExecutor.java:180) ~[Chatty-3.0.0-SNAPSHOT.jar:?]
        at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor166.execute(Unknown Source) ~[?:?]
        at org.bukkit.plugin.EventExecutor$2.execute(EventExecutor.java:77) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:?]
        at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:77) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:git-Purpur-2124]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:?]
        at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:54) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:126) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:617) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:?]
        at io.papermc.paper.adventure.ChatProcessor.post(ChatProcessor.java:416) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at io.papermc.paper.adventure.ChatProcessor.process(ChatProcessor.java:102) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.chat(ServerGamePacketListenerImpl.java:2393) ~[?:?]
        at org.bukkit.craftbukkit.v1_20_R3.entity.CraftPlayer.chat(CraftPlayer.java:712) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at ia.m.hX.onCommand(SourceFile:49) ~[ItemsAdder_3.6.3-beta-7.jar:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:168) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.craftbukkit.v1_20_R3.CraftServer.dispatchCommand(CraftServer.java:1001) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at org.bukkit.craftbukkit.v1_20_R3.command.BukkitCommandWrapper.run(BukkitCommandWrapper.java:64) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at com.mojang.brigadier.context.ContextChain.runExecutable(ContextChain.java:73) ~[brigadier-1.2.9.jar:?]
        at net.minecraft.commands.execution.tasks.ExecuteCommand.execute(ExecuteCommand.java:32) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.commands.execution.tasks.ExecuteCommand.execute(ExecuteCommand.java:13) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.commands.execution.UnboundEntryAction.lambda$bind$0(UnboundEntryAction.java:8) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.commands.execution.CommandQueueEntry.a(CommandQueueEntry.java:5) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.commands.execution.ExecutionContext.runCommandQueue(ExecutionContext.java:101) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.commands.Commands.executeCommandInContext(Commands.java:443) ~[?:?]
        at net.minecraft.commands.Commands.performCommand(Commands.java:344) ~[?:?]
        at net.minecraft.commands.Commands.performCommand(Commands.java:331) ~[?:?]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.performChatCommand(ServerGamePacketListenerImpl.java:2305) ~[?:?]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.lambda$handleChatCommand$17(ServerGamePacketListenerImpl.java:2265) ~[?:?]
        at net.minecraft.util.thread.BlockableEventLoop.lambda$submitAsync$0(BlockableEventLoop.java:59) ~[?:?]
        at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
        at net.minecraft.server.TickTask.run(TickTask.java:18) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:153) ~[?:?]
        at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[?:?]
        at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1485) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:194) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:126) ~[?:?]
        at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1462) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1385) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:136) ~[?:?]
        at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1363) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1247) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:326) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at java.lang.Thread.run(Thread.java:833) ~[?:?]
Brikster commented 8 months ago

Предположительно, исправлено в 15522ff·

s3nkwr commented 7 months ago

Нет, также неработает. Даже изменение Приоритета листенера не помогает. Также пишет :gg: вместо эмодзи -> image И все также выдает ошибку при использовании /e:

[06:51:31 ERROR]: [ru.brikster.chatty.chat.executor.LegacyEventExecutor] Cannot handle chat event
java.lang.IllegalStateException: ChattyMessageEvent may only be triggered asynchronously.
        at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:40) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:126) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:617) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:?]
        at ru.brikster.chatty.chat.executor.LegacyEventExecutor.handleFinishedEarlyContextEvent(LegacyEventExecutor.java:204) ~[Chatty-3.0.0-SNAPSHOT.jar:?]
        at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor227.execute(Unknown Source) ~[?:?]
        at org.bukkit.plugin.EventExecutor$2.execute(EventExecutor.java:77) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:?]
        at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:77) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:git-Purpur-2124]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:?]
        at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:54) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:126) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:617) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:?]
        at io.papermc.paper.adventure.ChatProcessor.post(ChatProcessor.java:416) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at io.papermc.paper.adventure.ChatProcessor.process(ChatProcessor.java:102) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.chat(ServerGamePacketListenerImpl.java:2393) ~[?:?]
        at org.bukkit.craftbukkit.v1_20_R3.entity.CraftPlayer.chat(CraftPlayer.java:712) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at ia.m.hX.onCommand(SourceFile:49) ~[ItemsAdder_3.6.3-beta-7.jar:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:168) ~[purpur-api-1.20.4-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.craftbukkit.v1_20_R3.CraftServer.dispatchCommand(CraftServer.java:1001) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at org.bukkit.craftbukkit.v1_20_R3.command.BukkitCommandWrapper.run(BukkitCommandWrapper.java:64) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at com.mojang.brigadier.context.ContextChain.runExecutable(ContextChain.java:73) ~[brigadier-1.2.9.jar:?]
        at net.minecraft.commands.execution.tasks.ExecuteCommand.execute(ExecuteCommand.java:32) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.commands.execution.tasks.ExecuteCommand.execute(ExecuteCommand.java:13) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.commands.execution.UnboundEntryAction.lambda$bind$0(UnboundEntryAction.java:8) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.commands.execution.CommandQueueEntry.a(CommandQueueEntry.java:5) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.commands.execution.ExecutionContext.runCommandQueue(ExecutionContext.java:101) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.commands.Commands.executeCommandInContext(Commands.java:443) ~[?:?]
        at net.minecraft.commands.Commands.performCommand(Commands.java:344) ~[?:?]
        at net.minecraft.commands.Commands.performCommand(Commands.java:331) ~[?:?]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.performChatCommand(ServerGamePacketListenerImpl.java:2305) ~[?:?]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.lambda$handleChatCommand$17(ServerGamePacketListenerImpl.java:2265) ~[?:?]
        at net.minecraft.util.thread.BlockableEventLoop.lambda$submitAsync$0(BlockableEventLoop.java:59) ~[?:?]
        at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
        at net.minecraft.server.TickTask.run(TickTask.java:18) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:153) ~[?:?]
        at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[?:?]
        at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1485) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:194) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:126) ~[?:?]
        at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1462) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1385) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:136) ~[?:?]
        at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1363) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1247) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:326) ~[purpur-1.20.4.jar:git-Purpur-2124]
        at java.lang.Thread.run(Thread.java:833) ~[?:?]
s3nkwr commented 7 months ago

Первое пофиксили в другом плагине добавлением FontImageWrapper.replaceFontImages(player, message) https://itemsadder.devs.beer/compatibility-with-other-plugins/compatible/chatcontrol-red

s3nkwr commented 7 months ago

https://github.com/s3nkwr/c-v3/blob/v3/spigot/src/main/java/ru/brikster/chatty/chat/executor/LegacyEventExecutor.java также вот моя недо имплементация для использования плейсхолдеров IA в чате, так как IA добавляет &r и &f, а это не поддерживает MiniMessage. Также в ней не работает отображение hover'а при наведении на Эмодзи.

s3nkwr commented 7 months ago

Оказывается у меня был не обновлен IA на новую версию. С обновлением починилось отображение его плейсхолдеров, даже без моего Билда. :mute: -> image Остается проблема с /e

Intercrus commented 7 months ago

Так когда пофиксят /e ??