Class MessageHandler
java.lang.Object
net.minecraft.client.network.message.MessageHandler
Handles received messages, including chat messages and game messages.
- Mappings:
Namespace Name named net/minecraft/client/network/message/MessageHandlerintermediary net/minecraft/class_7594official fzz
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final recordA message to be processed. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate longprivate final MinecraftClientprivate final Deque<MessageHandler.ProcessableMessage> private longprivate static final Text -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidaddToChatLog(SignedMessage message, MessageType.Parameters params, com.mojang.authlib.GameProfile sender, MessageTrustStatus trustStatus) private voidaddToChatLog(Text message, Instant timestamp) private UUIDextractSender(Text text) private MessageTrustStatusgetStatus(SignedMessage message, Text decorated, Instant receptionTimestamp) Returns the trust status ofmessage.longReturns the number of delayed messages that are not processed yet.private booleanisAlwaysTrusted(UUID sender) Returns whether messages fromsenderare always trusted.private voidnarrate(MessageType.Parameters params, Text message) Narratesmessage.voidonChatMessage(SignedMessage message, com.mojang.authlib.GameProfile sender, MessageType.Parameters params) voidonGameMessage(Text message, boolean overlay) Called when a game message is received.voidonProfilelessMessage(Text content, MessageType.Parameters params) voidonUnverifiedMessage(UUID sender, MessageType.Parameters parameters) voidprocess()Processes one delayed message from the queue's beginning.private voidprocess(@Nullable MessageSignatureData signature, BooleanSupplier processor) Queuesprocessorduring the chat delay, otherwise runs the processor.voidProcesses all delayed messages from the queue.private booleanprocessChatMessageInternal(MessageType.Parameters params, SignedMessage message, Text decorated, com.mojang.authlib.GameProfile sender, boolean onlyShowSecureChat, Instant receptionTimestamp) Processes a chat message.voidProcesses all delayed messages until one of them fails to process if the delay has passed, and otherwise does nothing.booleanremoveDelayedMessage(MessageSignatureData signature) Removes a delayed message whose signature matchessignature.voidsetChatDelay(double chatDelay) Sets the chat delay tochatDelayseconds.private booleanReturns if the chat delay is set and the message should be delayed.
-
Field Details
-
VALIDATION_ERROR_TEXT
- Mappings:
Namespace Name Mixin selector named VALIDATION_ERROR_TEXTLnet/minecraft/client/network/message/MessageHandler;VALIDATION_ERROR_TEXT:Lnet/minecraft/text/Text;intermediary field_45950Lnet/minecraft/class_7594;field_45950:Lnet/minecraft/class_2561;official aLfzz;a:Lwz;
-
client
- Mappings:
Namespace Name Mixin selector named clientLnet/minecraft/client/network/message/MessageHandler;client:Lnet/minecraft/client/MinecraftClient;intermediary field_39779Lnet/minecraft/class_7594;field_39779:Lnet/minecraft/class_310;official bLfzz;b:Lfgo;
-
delayedMessages
- Mappings:
Namespace Name Mixin selector named delayedMessagesLnet/minecraft/client/network/message/MessageHandler;delayedMessages:Ljava/util/Deque;intermediary field_39796Lnet/minecraft/class_7594;field_39796:Ljava/util/Deque;official cLfzz;c:Ljava/util/Deque;
-
chatDelay
private long chatDelay- Mappings:
Namespace Name Mixin selector named chatDelayLnet/minecraft/client/network/message/MessageHandler;chatDelay:Jintermediary field_39797Lnet/minecraft/class_7594;field_39797:Jofficial dLfzz;d:J
-
lastProcessTime
private long lastProcessTime- Mappings:
Namespace Name Mixin selector named lastProcessTimeLnet/minecraft/client/network/message/MessageHandler;lastProcessTime:Jintermediary field_39798Lnet/minecraft/class_7594;field_39798:Jofficial eLfzz;e:J
-
-
Constructor Details
-
MessageHandler
- Mappings:
Namespace Name Mixin selector named <init>Lnet/minecraft/client/network/message/MessageHandler;<init>(Lnet/minecraft/client/MinecraftClient;)Vintermediary <init>Lnet/minecraft/class_7594;<init>(Lnet/minecraft/class_310;)Vofficial <init>Lfzz;<init>(Lfgo;)V
-
-
Method Details
-
processDelayedMessages
public void processDelayedMessages()Processes all delayed messages until one of them fails to process if the delay has passed, and otherwise does nothing.- Mappings:
Namespace Name Mixin selector named processDelayedMessagesLnet/minecraft/client/network/message/MessageHandler;processDelayedMessages()Vintermediary method_44765Lnet/minecraft/class_7594;method_44765()Vofficial aLfzz;a()V
-
setChatDelay
public void setChatDelay(double chatDelay) Sets the chat delay tochatDelayseconds. If the chat delay was changed to0, this also processes all queued messages.- Mappings:
Namespace Name Mixin selector named setChatDelayLnet/minecraft/client/network/message/MessageHandler;setChatDelay(D)Vintermediary method_44766Lnet/minecraft/class_7594;method_44766(D)Vofficial aLfzz;a(D)V
-
process
public void process()Processes one delayed message from the queue's beginning.- Mappings:
Namespace Name Mixin selector named processLnet/minecraft/client/network/message/MessageHandler;process()Vintermediary method_44769Lnet/minecraft/class_7594;method_44769()Vofficial bLfzz;b()V
-
getUnprocessedMessageCount
public long getUnprocessedMessageCount()Returns the number of delayed messages that are not processed yet.- Returns:
- the number of delayed messages that are not processed yet
- Mappings:
Namespace Name Mixin selector named getUnprocessedMessageCountLnet/minecraft/client/network/message/MessageHandler;getUnprocessedMessageCount()Jintermediary method_44944Lnet/minecraft/class_7594;method_44944()Jofficial cLfzz;c()J
-
processAll
public void processAll()Processes all delayed messages from the queue.- Mappings:
Namespace Name Mixin selector named processAllLnet/minecraft/client/network/message/MessageHandler;processAll()Vintermediary method_44945Lnet/minecraft/class_7594;method_44945()Vofficial dLfzz;d()V
-
removeDelayedMessage
Removes a delayed message whose signature matchessignature. If this returnsfalse, either the message is not received or it it already on the hud.- Returns:
- whether the message was removed
- Mappings:
Namespace Name Mixin selector named removeDelayedMessageLnet/minecraft/client/network/message/MessageHandler;removeDelayedMessage(Lnet/minecraft/network/message/MessageSignatureData;)Zintermediary method_44819Lnet/minecraft/class_7594;method_44819(Lnet/minecraft/class_7469;)Zofficial aLfzz;a(Lxl;)Z
-
shouldDelay
private boolean shouldDelay()Returns if the chat delay is set and the message should be delayed.- Returns:
- if the chat delay is set and the message should be delayed
- Mappings:
Namespace Name Mixin selector named shouldDelayLnet/minecraft/client/network/message/MessageHandler;shouldDelay()Zintermediary method_44775Lnet/minecraft/class_7594;method_44775()Zofficial eLfzz;e()Z
-
process
Queuesprocessorduring the chat delay, otherwise runs the processor.- Mappings:
Namespace Name Mixin selector named processLnet/minecraft/client/network/message/MessageHandler;process(Lnet/minecraft/network/message/MessageSignatureData;Ljava/util/function/BooleanSupplier;)Vintermediary method_44818Lnet/minecraft/class_7594;method_44818(Lnet/minecraft/class_7469;Ljava/util/function/BooleanSupplier;)Vofficial aLfzz;a(Lxl;Ljava/util/function/BooleanSupplier;)V
-
onChatMessage
public void onChatMessage(SignedMessage message, com.mojang.authlib.GameProfile sender, MessageType.Parameters params) - Mappings:
Namespace Name Mixin selector named onChatMessageLnet/minecraft/client/network/message/MessageHandler;onChatMessage(Lnet/minecraft/network/message/SignedMessage;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/network/message/MessageType$Parameters;)Vintermediary method_45748Lnet/minecraft/class_7594;method_45748(Lnet/minecraft/class_7471;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_2556$class_7602;)Vofficial aLfzz;a(Lxp;Lcom/mojang/authlib/GameProfile;Lwv$a;)V
-
onUnverifiedMessage
- Mappings:
Namespace Name Mixin selector named onUnverifiedMessageLnet/minecraft/client/network/message/MessageHandler;onUnverifiedMessage(Ljava/util/UUID;Lnet/minecraft/network/message/MessageType$Parameters;)Vintermediary method_53488Lnet/minecraft/class_7594;method_53488(Ljava/util/UUID;Lnet/minecraft/class_2556$class_7602;)Vofficial aLfzz;a(Ljava/util/UUID;Lwv$a;)V
-
onProfilelessMessage
- Mappings:
Namespace Name Mixin selector named onProfilelessMessageLnet/minecraft/client/network/message/MessageHandler;onProfilelessMessage(Lnet/minecraft/text/Text;Lnet/minecraft/network/message/MessageType$Parameters;)Vintermediary method_45746Lnet/minecraft/class_7594;method_45746(Lnet/minecraft/class_2561;Lnet/minecraft/class_2556$class_7602;)Vofficial aLfzz;a(Lwz;Lwv$a;)V
-
processChatMessageInternal
private boolean processChatMessageInternal(MessageType.Parameters params, SignedMessage message, Text decorated, com.mojang.authlib.GameProfile sender, boolean onlyShowSecureChat, Instant receptionTimestamp) Processes a chat message.If the message cannot be verified due to a broken chain, this disconnects the client from the server.
The message can still end up not being displayed if the verification fails and
onlyShowSecureChatistrueor if the sender is blocked via the social interactions screen.This adds the message to the hud, narrates it, and appends it to the chat log.
- Parameters:
receptionTimestamp- the timestamp when the message was received by this client- Returns:
- whether the message was actually displayed
- Mappings:
Namespace Name Mixin selector named processChatMessageInternalLnet/minecraft/client/network/message/MessageHandler;processChatMessageInternal(Lnet/minecraft/network/message/MessageType$Parameters;Lnet/minecraft/network/message/SignedMessage;Lnet/minecraft/text/Text;Lcom/mojang/authlib/GameProfile;ZLjava/time/Instant;)Zintermediary method_44943Lnet/minecraft/class_7594;method_44943(Lnet/minecraft/class_2556$class_7602;Lnet/minecraft/class_7471;Lnet/minecraft/class_2561;Lcom/mojang/authlib/GameProfile;ZLjava/time/Instant;)Zofficial aLfzz;a(Lwv$a;Lxp;Lwz;Lcom/mojang/authlib/GameProfile;ZLjava/time/Instant;)Z
-
narrate
Narratesmessage.- See Also:
- Mappings:
Namespace Name Mixin selector named narrateLnet/minecraft/client/network/message/MessageHandler;narrate(Lnet/minecraft/network/message/MessageType$Parameters;Lnet/minecraft/text/Text;)Vintermediary method_44772Lnet/minecraft/class_7594;method_44772(Lnet/minecraft/class_2556$class_7602;Lnet/minecraft/class_2561;)Vofficial aLfzz;a(Lwv$a;Lwz;)V
-
getStatus
private MessageTrustStatus getStatus(SignedMessage message, Text decorated, Instant receptionTimestamp) Returns the trust status ofmessage.This returns
MessageTrustStatus.SECUREfor messages that are considered to be always trusted.- Returns:
- the trust status of
message - See Also:
- Mappings:
Namespace Name Mixin selector named getStatusLnet/minecraft/client/network/message/MessageHandler;getStatus(Lnet/minecraft/network/message/SignedMessage;Lnet/minecraft/text/Text;Ljava/time/Instant;)Lnet/minecraft/client/network/message/MessageTrustStatus;intermediary method_44732Lnet/minecraft/class_7594;method_44732(Lnet/minecraft/class_7471;Lnet/minecraft/class_2561;Ljava/time/Instant;)Lnet/minecraft/class_7595;official aLfzz;a(Lxp;Lwz;Ljava/time/Instant;)Lgab;
-
addToChatLog
private void addToChatLog(SignedMessage message, MessageType.Parameters params, com.mojang.authlib.GameProfile sender, MessageTrustStatus trustStatus) - Mappings:
Namespace Name Mixin selector named addToChatLogLnet/minecraft/client/network/message/MessageHandler;addToChatLog(Lnet/minecraft/network/message/SignedMessage;Lnet/minecraft/network/message/MessageType$Parameters;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/client/network/message/MessageTrustStatus;)Vintermediary method_44737Lnet/minecraft/class_7594;method_44737(Lnet/minecraft/class_7471;Lnet/minecraft/class_2556$class_7602;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_7595;)Vofficial aLfzz;a(Lxp;Lwv$a;Lcom/mojang/authlib/GameProfile;Lgab;)V
-
addToChatLog
- Mappings:
Namespace Name Mixin selector named addToChatLogLnet/minecraft/client/network/message/MessageHandler;addToChatLog(Lnet/minecraft/text/Text;Ljava/time/Instant;)Vintermediary method_44735Lnet/minecraft/class_7594;method_44735(Lnet/minecraft/class_2561;Ljava/time/Instant;)Vofficial aLfzz;a(Lwz;Ljava/time/Instant;)V
-
onGameMessage
Called when a game message is received.Game messages ignore chat delay.
- Mappings:
Namespace Name Mixin selector named onGameMessageLnet/minecraft/client/network/message/MessageHandler;onGameMessage(Lnet/minecraft/text/Text;Z)Vintermediary method_44736Lnet/minecraft/class_7594;method_44736(Lnet/minecraft/class_2561;Z)Vofficial aLfzz;a(Lwz;Z)V
-
extractSender
- Mappings:
Namespace Name Mixin selector named extractSenderLnet/minecraft/client/network/message/MessageHandler;extractSender(Lnet/minecraft/text/Text;)Ljava/util/UUID;intermediary method_44734Lnet/minecraft/class_7594;method_44734(Lnet/minecraft/class_2561;)Ljava/util/UUID;official aLfzz;a(Lwz;)Ljava/util/UUID;
-
isAlwaysTrusted
Returns whether messages fromsenderare always trusted.Messages from this client's player in a singleplayer world are always trusted.
- Returns:
- whether messages from
senderare always trusted - Mappings:
Namespace Name Mixin selector named isAlwaysTrustedLnet/minecraft/client/network/message/MessageHandler;isAlwaysTrusted(Ljava/util/UUID;)Zintermediary method_44738Lnet/minecraft/class_7594;method_44738(Ljava/util/UUID;)Zofficial aLfzz;a(Ljava/util/UUID;)Z
-