mirror of
https://github.com/architectury/architectury-api.git
synced 2026-03-30 13:05:25 -05:00
@@ -25,6 +25,7 @@ import dev.architectury.event.EventResult;
|
||||
import dev.architectury.event.events.client.ClientChatEvent;
|
||||
import dev.architectury.event.events.client.*;
|
||||
import dev.architectury.event.events.common.InteractionEvent;
|
||||
import dev.architectury.impl.ChatProcessorImpl;
|
||||
import dev.architectury.impl.ScreenAccessImpl;
|
||||
import dev.architectury.impl.TooltipEventColorContextImpl;
|
||||
import dev.architectury.impl.TooltipEventPositionContextImpl;
|
||||
@@ -99,15 +100,24 @@ public class EventHandlerImplClient {
|
||||
|
||||
@SubscribeEvent(priority = EventPriority.HIGH)
|
||||
public static void event(net.minecraftforge.client.event.ClientChatEvent event) {
|
||||
EventResult process = ClientChatEvent.SEND.invoker().send(event.getMessage(), null);
|
||||
if (process.isFalse()) {
|
||||
event.setCanceled(true);
|
||||
ChatProcessorImpl processor = new ChatProcessorImpl(event.getMessage(), null);
|
||||
EventResult process = ClientChatEvent.PROCESS.invoker().process(processor);
|
||||
if (process.isPresent()) {
|
||||
if (process.isFalse())
|
||||
event.setCanceled(true);
|
||||
else {
|
||||
event.setMessage(processor.getMessage());
|
||||
|
||||
if (process.isTrue()) {
|
||||
event.setCanceled(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@SubscribeEvent(priority = EventPriority.HIGH)
|
||||
public static void event(ClientChatReceivedEvent event) {
|
||||
CompoundEventResult<Component> process = ClientChatEvent.RECEIVED.invoker().process(event.getBoundChatType(), event.getMessage());
|
||||
CompoundEventResult<Component> process = ClientChatEvent.RECEIVED.invoker().process(event.getType(), event.getMessage(), event.getChatSender());
|
||||
if (process.isPresent()) {
|
||||
if (process.isFalse())
|
||||
event.setCanceled(true);
|
||||
|
||||
@@ -102,7 +102,7 @@ public class EventHandlerImplCommon {
|
||||
|
||||
@SubscribeEvent(priority = EventPriority.HIGH)
|
||||
public static void event(RegisterCommandsEvent event) {
|
||||
CommandRegistrationEvent.EVENT.invoker().register(event.getDispatcher(), event.getBuildContext(), event.getCommandSelection());
|
||||
CommandRegistrationEvent.EVENT.invoker().register(event.getDispatcher(), event.getCommandSelection());
|
||||
}
|
||||
|
||||
@SubscribeEvent(priority = EventPriority.HIGH)
|
||||
@@ -140,24 +140,30 @@ public class EventHandlerImplCommon {
|
||||
}
|
||||
|
||||
@SubscribeEvent(priority = EventPriority.HIGH)
|
||||
public static void event(ServerChatEvent.Preview event) {
|
||||
public static void event(ServerChatEvent event) {
|
||||
class ChatComponentImpl implements ChatEvent.ChatComponent {
|
||||
@Override
|
||||
public Component get() {
|
||||
return event.getMessage();
|
||||
public Component getRaw() {
|
||||
return Component.literal(event.getMessage());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void set(Component component) {
|
||||
event.setMessage(component);
|
||||
public Component getFiltered() {
|
||||
return event.getComponent();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setRaw(Component raw) {
|
||||
// NO-OP
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setFiltered(Component filtered) {
|
||||
event.setComponent(filtered);
|
||||
}
|
||||
}
|
||||
ChatEvent.DECORATE.invoker().decorate(event.getPlayer(), new ChatComponentImpl());
|
||||
}
|
||||
|
||||
@SubscribeEvent(priority = EventPriority.HIGH)
|
||||
public static void event(ServerChatEvent.Submitted event) {
|
||||
EventResult process = ChatEvent.RECEIVED.invoker().received(event.getPlayer(), event.getMessage());
|
||||
|
||||
EventResult process = ChatEvent.SERVER.invoker().process(event.getPlayer(), new ChatComponentImpl());
|
||||
if (process.isFalse())
|
||||
event.setCanceled(true);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user