Skip to main content
Version: 26.1.x

Client Chat Events

dev.architectury.event.events.client.ClientChatEvent

Intercept chat the client sends or receives.

Events

EventListener methodReturns
SENDsend(String message, Component component)EventResult - interrupt to cancel sending.
RECEIVEDprocess(ChatType.Bound type, Component message)CompoundEventResult<Component> - interrupt with a Component to override the displayed message.

For SEND, the decorated component may be null. For RECEIVED, return an interrupting CompoundEventResult carrying a replacement Component to change what's shown.

Examples

Stop the client from sending messages that start with a marker:

ClientChatEvent.SEND.register((message, component) -> {
if (message.startsWith("//")) {
return EventResult.interruptFalse(); // don't send it
}
return EventResult.pass();
});

Rewrite incoming messages:

ClientChatEvent.RECEIVED.register((type, message) -> {
Component edited = message.copy().append(" 🌟");
return CompoundEventResult.interruptTrue(edited);
});