Class MessageHandler
java.lang.Object
net.minecraft.client.network.message.MessageHandler
Handles received messages, including chat messages and game messages.
- Mappings:
Namespace Name official fevintermediary net/minecraft/class_7594named net/minecraft/client/network/message/MessageHandler
-
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 long -
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) 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
-
client
- Mappings:
Namespace Name Mixin selector official aLfev;a:Lenf;intermediary field_39779Lnet/minecraft/class_7594;field_39779:Lnet/minecraft/class_310;named clientLnet/minecraft/client/network/message/MessageHandler;client:Lnet/minecraft/client/MinecraftClient;
-
delayedMessages
- Mappings:
Namespace Name Mixin selector official bLfev;b:Ljava/util/Deque;intermediary field_39796Lnet/minecraft/class_7594;field_39796:Ljava/util/Deque;named delayedMessagesLnet/minecraft/client/network/message/MessageHandler;delayedMessages:Ljava/util/Deque;
-
chatDelay
private long chatDelay- Mappings:
Namespace Name Mixin selector official cLfev;c:Jintermediary field_39797Lnet/minecraft/class_7594;field_39797:Jnamed chatDelayLnet/minecraft/client/network/message/MessageHandler;chatDelay:J
-
lastProcessTime
private long lastProcessTime- Mappings:
Namespace Name Mixin selector official dLfev;d:Jintermediary field_39798Lnet/minecraft/class_7594;field_39798:Jnamed lastProcessTimeLnet/minecraft/client/network/message/MessageHandler;lastProcessTime:J
-
-
Constructor Details
-
MessageHandler
- Mappings:
Namespace Name Mixin selector official <init>Lfev;<init>(Lenf;)Vintermediary <init>Lnet/minecraft/class_7594;<init>(Lnet/minecraft/class_310;)Vnamed <init>Lnet/minecraft/client/network/message/MessageHandler;<init>(Lnet/minecraft/client/MinecraftClient;)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 official aLfev;a()Vintermediary method_44765Lnet/minecraft/class_7594;method_44765()Vnamed processDelayedMessagesLnet/minecraft/client/network/message/MessageHandler;processDelayedMessages()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 official aLfev;a(D)Vintermediary method_44766Lnet/minecraft/class_7594;method_44766(D)Vnamed setChatDelayLnet/minecraft/client/network/message/MessageHandler;setChatDelay(D)V
-
process
public void process()Processes one delayed message from the queue's beginning.- Mappings:
Namespace Name Mixin selector official bLfev;b()Vintermediary method_44769Lnet/minecraft/class_7594;method_44769()Vnamed processLnet/minecraft/client/network/message/MessageHandler;process()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 official cLfev;c()Jintermediary method_44944Lnet/minecraft/class_7594;method_44944()Jnamed getUnprocessedMessageCountLnet/minecraft/client/network/message/MessageHandler;getUnprocessedMessageCount()J
-
processAll
public void processAll()Processes all delayed messages from the queue.- Mappings:
Namespace Name Mixin selector official dLfev;d()Vintermediary method_44945Lnet/minecraft/class_7594;method_44945()Vnamed processAllLnet/minecraft/client/network/message/MessageHandler;processAll()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 official aLfev;a(Lth;)Zintermediary method_44819Lnet/minecraft/class_7594;method_44819(Lnet/minecraft/class_7469;)Znamed removeDelayedMessageLnet/minecraft/client/network/message/MessageHandler;removeDelayedMessage(Lnet/minecraft/network/message/MessageSignatureData;)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 official eLfev;e()Zintermediary method_44775Lnet/minecraft/class_7594;method_44775()Znamed shouldDelayLnet/minecraft/client/network/message/MessageHandler;shouldDelay()Z
-
process
Queuesprocessorduring the chat delay, otherwise runs the processor.- Mappings:
Namespace Name Mixin selector official aLfev;a(Lth;Ljava/util/function/BooleanSupplier;)Vintermediary method_44818Lnet/minecraft/class_7594;method_44818(Lnet/minecraft/class_7469;Ljava/util/function/BooleanSupplier;)Vnamed processLnet/minecraft/client/network/message/MessageHandler;process(Lnet/minecraft/network/message/MessageSignatureData;Ljava/util/function/BooleanSupplier;)V
-
onChatMessage
public void onChatMessage(SignedMessage message, com.mojang.authlib.GameProfile sender, MessageType.Parameters params) - Mappings:
Namespace Name Mixin selector official aLfev;a(Ltl;Lcom/mojang/authlib/GameProfile;Lss$a;)Vintermediary method_45748Lnet/minecraft/class_7594;method_45748(Lnet/minecraft/class_7471;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_2556$class_7602;)Vnamed onChatMessageLnet/minecraft/client/network/message/MessageHandler;onChatMessage(Lnet/minecraft/network/message/SignedMessage;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/network/message/MessageType$Parameters;)V
-
onProfilelessMessage
- Mappings:
Namespace Name Mixin selector official aLfev;a(Lsw;Lss$a;)Vintermediary method_45746Lnet/minecraft/class_7594;method_45746(Lnet/minecraft/class_2561;Lnet/minecraft/class_2556$class_7602;)Vnamed onProfilelessMessageLnet/minecraft/client/network/message/MessageHandler;onProfilelessMessage(Lnet/minecraft/text/Text;Lnet/minecraft/network/message/MessageType$Parameters;)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 official aLfev;a(Lss$a;Ltl;Lsw;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;)Znamed 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;)Z
-
narrate
Narratesmessage.- See Also:
- Mappings:
Namespace Name Mixin selector official aLfev;a(Lss$a;Lsw;)Vintermediary method_44772Lnet/minecraft/class_7594;method_44772(Lnet/minecraft/class_2556$class_7602;Lnet/minecraft/class_2561;)Vnamed narrateLnet/minecraft/client/network/message/MessageHandler;narrate(Lnet/minecraft/network/message/MessageType$Parameters;Lnet/minecraft/text/Text;)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 official aLfev;a(Ltl;Lsw;Ljava/time/Instant;)Lfex;intermediary method_44732Lnet/minecraft/class_7594;method_44732(Lnet/minecraft/class_7471;Lnet/minecraft/class_2561;Ljava/time/Instant;)Lnet/minecraft/class_7595;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;
-
addToChatLog
private void addToChatLog(SignedMessage message, MessageType.Parameters params, com.mojang.authlib.GameProfile sender, MessageTrustStatus trustStatus) - Mappings:
Namespace Name Mixin selector official aLfev;a(Ltl;Lss$a;Lcom/mojang/authlib/GameProfile;Lfex;)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;)Vnamed 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;)V
-
addToChatLog
- Mappings:
Namespace Name Mixin selector official aLfev;a(Lsw;Ljava/time/Instant;)Vintermediary method_44735Lnet/minecraft/class_7594;method_44735(Lnet/minecraft/class_2561;Ljava/time/Instant;)Vnamed addToChatLogLnet/minecraft/client/network/message/MessageHandler;addToChatLog(Lnet/minecraft/text/Text;Ljava/time/Instant;)V
-
onGameMessage
Called when a game message is received.Game messages ignore chat delay.
- Mappings:
Namespace Name Mixin selector official aLfev;a(Lsw;Z)Vintermediary method_44736Lnet/minecraft/class_7594;method_44736(Lnet/minecraft/class_2561;Z)Vnamed onGameMessageLnet/minecraft/client/network/message/MessageHandler;onGameMessage(Lnet/minecraft/text/Text;Z)V
-
extractSender
- Mappings:
Namespace Name Mixin selector official aLfev;a(Lsw;)Ljava/util/UUID;intermediary method_44734Lnet/minecraft/class_7594;method_44734(Lnet/minecraft/class_2561;)Ljava/util/UUID;named extractSenderLnet/minecraft/client/network/message/MessageHandler;extractSender(Lnet/minecraft/text/Text;)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 official aLfev;a(Ljava/util/UUID;)Zintermediary method_44738Lnet/minecraft/class_7594;method_44738(Ljava/util/UUID;)Znamed isAlwaysTrustedLnet/minecraft/client/network/message/MessageHandler;isAlwaysTrusted(Ljava/util/UUID;)Z
-