Explorar o código

We forgot to add player into ChatEvent#SERVER

shedaniel %!s(int64=4) %!d(string=hai) anos
pai
achega
cd641029c3

+ 2 - 1
common/src/main/java/me/shedaniel/architectury/event/events/ChatEvent.java

@@ -22,6 +22,7 @@ import net.fabricmc.api.EnvType;
 import net.fabricmc.api.Environment;
 import net.minecraft.network.chat.ChatType;
 import net.minecraft.network.chat.Component;
+import net.minecraft.server.level.ServerPlayer;
 import net.minecraft.world.InteractionResultHolder;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -56,6 +57,6 @@ public interface ChatEvent {
     
     interface Server {
         @NotNull
-        InteractionResultHolder<Component> process(String message, Component component);
+        InteractionResultHolder<Component> process(ServerPlayer player, String message, Component component);
     }
 }

+ 1 - 1
fabric/src/main/java/me/shedaniel/architectury/mixin/fabric/MixinServerGamePacketListenerImpl.java

@@ -51,7 +51,7 @@ public abstract class MixinServerGamePacketListenerImpl {
     private void handleChat(ServerboundChatPacket packet, CallbackInfo ci) {
         String string = StringUtils.normalizeSpace(packet.getMessage());
         Component component = new TranslatableComponent("chat.type.text", this.player.getDisplayName(), string);
-        InteractionResultHolder<Component> process = ChatEvent.SERVER.invoker().process(string, component);
+        InteractionResultHolder<Component> process = ChatEvent.SERVER.invoker().process(this.player, string, component);
         if (process.getResult() == InteractionResult.FAIL)
             ci.cancel();
         else if (process.getObject() != null && !process.getObject().equals(component)) {

+ 1 - 1
forge/src/main/java/me/shedaniel/architectury/event/forge/EventFactoryImpl.java

@@ -227,7 +227,7 @@ public class EventFactoryImpl implements EventFactory.Impl {
         
         @SubscribeEvent
         public static void event(ServerChatEvent event) {
-            ActionResult<ITextComponent> process = ChatEvent.SERVER.invoker().process(event.getMessage(), event.getComponent());
+            ActionResult<ITextComponent> process = ChatEvent.SERVER.invoker().process(event.getPlayer(), event.getMessage(), event.getComponent());
             if (process.getObject() != null)
                 event.setComponent(process.getObject());
             if (process.getResult() == ActionResultType.FAIL)