1.19.1-pre5 client networking (#3249)

* 1.19.1-pre5 client networking

* Fix typo
This commit is contained in:
apple502j 2022-07-21 01:56:22 +09:00 committed by GitHub
parent 3da00e352d
commit b2fcb1d7f5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
17 changed files with 323 additions and 35 deletions

View File

@ -77,6 +77,13 @@ CLASS net/minecraft/class_4717 net/minecraft/client/gui/screen/ChatInputSuggesto
METHOD method_44278 getNodeAt (ILcom/mojang/brigadier/context/CommandContextBuilder;)Lcom/mojang/brigadier/tree/CommandNode;
ARG 0 cursor
ARG 1 builder
METHOD method_44931 clearWindow ()V
METHOD method_44932 renderMessages (Lnet/minecraft/class_4587;)V
ARG 1 matrices
METHOD method_44933 tryRenderWindow (Lnet/minecraft/class_4587;II)Z
ARG 1 matrices
ARG 2 mouseX
ARG 3 mouseY
CLASS class_464 SuggestionWindow
FIELD field_21630 lastNarrationIndex I
FIELD field_25709 suggestions Ljava/util/List;

View File

@ -0,0 +1,19 @@
CLASS net/minecraft/class_7625 net/minecraft/client/gui/screen/ChatPreviewBackground
FIELD field_39845 MAX_FADE_TIME J
FIELD field_39846 previewText Lnet/minecraft/class_2561;
FIELD field_39847 currentFadeTime J
FIELD field_39848 lastRenderTime J
METHOD method_44922 init (J)V
ARG 1 currentTime
METHOD method_44923 computeRenderData (JLnet/minecraft/class_2561;)Lnet/minecraft/class_7625$class_7626;
ARG 1 currentTime
ARG 3 previewText
METHOD method_44924 computeRenderDataWithoutText (J)Lnet/minecraft/class_7625$class_7626;
ARG 1 timeDelta
METHOD method_44925 computeRenderDataWithText (JLnet/minecraft/class_2561;)Lnet/minecraft/class_7625$class_7626;
ARG 1 timeDelta
ARG 3 previewText
METHOD method_44926 toAlpha (J)F
ARG 0 timeDelta
CLASS class_7626 RenderData
FIELD field_39849 EMPTY Lnet/minecraft/class_7625$class_7626;

View File

@ -6,7 +6,7 @@ CLASS net/minecraft/class_408 net/minecraft/client/gui/screen/ChatScreen
COMMENT
COMMENT @see net.minecraft.client.gui.hud.ChatHud
FIELD field_18973 originalChatText Ljava/lang/String;
FIELD field_21616 commandSuggestor Lnet/minecraft/class_4717;
FIELD field_21616 chatInputSuggestor Lnet/minecraft/class_4717;
FIELD field_2382 chatField Lnet/minecraft/class_342;
FIELD field_2387 messageHistorySize I
FIELD field_2389 chatLastMessage Ljava/lang/String;
@ -19,6 +19,15 @@ CLASS net/minecraft/class_408 net/minecraft/client/gui/screen/ChatScreen
FIELD field_39345 CHAT_PREVIEW_WARNING_TOAST_TEXT Lnet/minecraft/class_2561;
FIELD field_39347 chatPreviewer Lnet/minecraft/class_7479;
FIELD field_39774 MAX_INDICATOR_TOOLTIP_WIDTH I
FIELD field_39850 chatPreviewMode Lnet/minecraft/class_7628;
FIELD field_39851 missingPreview Z
FIELD field_39852 chatPreviewBackground Lnet/minecraft/class_7625;
FIELD field_39853 PREVIEW_PENDING_COLOR I
FIELD field_39854 PREVIEW_CONSUMABLE_COLOR I
FIELD field_39855 CHAT_PREVIEW_INPUT_TEXT Lnet/minecraft/class_2561;
FIELD field_39856 EVENT_HIGHLIGHT_COLOR I
METHOD <init> (Ljava/lang/String;)V
ARG 1 originalChatText
METHOD method_2108 setText (Ljava/lang/String;)V
ARG 1 text
METHOD method_2114 setChatFromHistory (I)V
@ -31,6 +40,10 @@ CLASS net/minecraft/class_408 net/minecraft/client/gui/screen/ChatScreen
ARG 1 x
ARG 3 y
METHOD method_44053 renderChatPreview (Lnet/minecraft/class_4587;Lnet/minecraft/class_2561;FZ)V
ARG 1 matrices
ARG 2 previewText
ARG 3 alpha
ARG 4 signable
METHOD method_44054 normalize (Ljava/lang/String;)Ljava/lang/String;
COMMENT {@return the {@code message} normalized by trimming it and then normalizing spaces}
ARG 1 chatText
@ -62,3 +75,13 @@ CLASS net/minecraft/class_408 net/minecraft/client/gui/screen/ChatScreen
ARG 1 chatText
METHOD method_44281 tryRequestCommandPreview (Ljava/lang/String;)V
ARG 1 chatText
METHOD method_44934 drawEventHighlight (Lnet/minecraft/class_4587;Lnet/minecraft/class_5481;II)V
ARG 1 matrices
ARG 2 text
ARG 3 y
ARG 4 alpha
METHOD method_44935 wrapPreviewText (Lnet/minecraft/class_2561;)Ljava/util/List;
ARG 1 preview
METHOD method_44936 (Lnet/minecraft/class_2583;)Z
ARG 0 style
METHOD method_44937 getPreviewText ()Lnet/minecraft/class_2561;

View File

@ -11,3 +11,4 @@ CLASS net/minecraft/class_7483 net/minecraft/client/gui/screen/multiplayer/ChatP
METHOD method_44067 (Lnet/minecraft/class_4185;)V
ARG 1 button
METHOD method_44069 acknowledge ()V
METHOD method_44938 getWarningContent ()Lnet/minecraft/class_2561;

View File

@ -34,6 +34,7 @@ CLASS net/minecraft/class_7479 net/minecraft/client/network/ChatPreviewer
COMMENT @implNote This sets the last response if the requester {@linkplain
COMMENT ChatPreviewRequester#handleResponse successfully handled} the response.
ARG 1 id
ARG 2 previewText
METHOD method_44036 clear ()V
COMMENT Clears the last response and the requester's state.
METHOD method_44037 tryConsumeResponse (Ljava/lang/String;)Lnet/minecraft/class_7479$class_7481;
@ -61,14 +62,22 @@ CLASS net/minecraft/class_7479 net/minecraft/client/network/ChatPreviewer
COMMENT can be requested by calling {@link #tryRequestPending()}.
ARG 1 message
METHOD method_44275 disablePreview ()V
COMMENT Sets {@link #shouldRenderPreview} to {@code false} and clears this previewer.
COMMENT Clears this previewer.
METHOD method_44276 tryRequestInternal (Ljava/lang/String;)V
ARG 1 message
METHOD method_44927 equalsLastPreviewed (Ljava/lang/String;)Z
COMMENT {@return whether normalized {@code text} equals the last previewed text}
ARG 1 text
METHOD method_44928 cannotConsumePreview ()Z
COMMENT {@return whether the previewer cannot consume the preview (because the preview
COMMENT response hasn't arrived or because of the cooldown)}
CLASS class_7481 Response
COMMENT A response to the preview query.
FIELD comp_826 receptionTimestamp J
FIELD comp_827 Ljava/lang/String;
COMMENT the message that was queried to preview
FIELD comp_828 previewText Lnet/minecraft/class_2561;
METHOD comp_826 receptionTimestamp ()J
METHOD comp_828 previewText ()Lnet/minecraft/class_2561;
METHOD method_44045 canConsume (Ljava/lang/String;)Z
COMMENT {@return whether the response can be consumed for the {@code message}}
@ -76,3 +85,11 @@ CLASS net/minecraft/class_7479 net/minecraft/client/network/ChatPreviewer
COMMENT <p>This returns {@code true} if the {@code message} equals the queried message and
COMMENT the cooldown has passed.
ARG 1 message
METHOD method_44929 queryEquals (Ljava/lang/String;)Z
COMMENT {@return whether normalized {@code query} equals the response query}
ARG 1 query
METHOD method_44930 hasCooldownPassed ()Z
COMMENT {@return the cooldown for consuming the preview has passed}
COMMENT
COMMENT @see #canConsume
COMMENT @see ChatPreviewer#tryConsumeResponse

View File

@ -21,7 +21,15 @@ CLASS net/minecraft/class_634 net/minecraft/client/network/ClientPlayNetworkHand
FIELD field_3700 advancementHandler Lnet/minecraft/class_632;
FIELD field_3701 loginScreen Lnet/minecraft/class_437;
FIELD field_39808 messagePacker Lnet/minecraft/class_7610$class_7612;
FIELD field_39857 MAX_PENDING_ACKNOWLEDGMENTS I
FIELD field_39858 lastSeenMessagesCollector Lnet/minecraft/class_7637;
FIELD field_39859 lastReceivedMessage Ljava/util/Optional;
FIELD field_39860 pendingAcknowledgments I
COMMENT The number of messages whose acknowledgments aren't sent to the server yet.
COMMENT They are sent when the count reaches {@value #MAX_PENDING_ACKNOWLEDGMENTS}
COMMENT or when the client sends a message, and this count is reset to zero in those cases.
METHOD <init> (Lnet/minecraft/class_310;Lnet/minecraft/class_437;Lnet/minecraft/class_2535;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_6628;)V
ARG 1 client
ARG 2 screen
ARG 3 connection
ARG 4 profile
@ -116,3 +124,12 @@ CLASS net/minecraft/class_634 net/minecraft/client/network/ClientPlayNetworkHand
METHOD method_44072 (Lnet/minecraft/class_642;Lnet/minecraft/class_2561;)V
ARG 1 description
METHOD method_44816 getMessagePacker ()Lnet/minecraft/class_7610$class_7612;
METHOD method_44940 acknowledge (Lnet/minecraft/class_7471;Z)V
ARG 1 message
ARG 2 displayed
METHOD method_44941 consumeAcknowledgment ()Lnet/minecraft/class_7635$class_7636;
COMMENT {@return the consumed acknowledgment}
COMMENT
COMMENT <p>This resets {@link #pendingAcknowledgments} to {@code 0}.
COMMENT
COMMENT @see #pendingAcknowledgments

View File

@ -99,6 +99,8 @@ CLASS net/minecraft/class_746 net/minecraft/client/network/ClientPlayerEntity
COMMENT Signs the chat message. If the chat message cannot be signed, this will return
COMMENT {@link MessageSignatureData#EMPTY}.
ARG 1 metadata
ARG 2 content
ARG 3 lastSeenMessages
METHOD method_43786 signArguments (Lnet/minecraft/class_7470;Lcom/mojang/brigadier/ParseResults;Lnet/minecraft/class_2561;Lnet/minecraft/class_7635;)Lnet/minecraft/class_7450;
COMMENT Signs the command arguments. If the arguments cannot be signed or if there is no
COMMENT arguments to sign, this will return {@link ArgumentSignatureDataMap#EMPTY}.
@ -106,6 +108,7 @@ CLASS net/minecraft/class_746 net/minecraft/client/network/ClientPlayerEntity
ARG 2 parseResults
ARG 3 preview
COMMENT the previewed argument value; if supplied, will be used for all signed arguments
ARG 4 lastSeenMessages
METHOD method_43787 sendCommandInternal (Ljava/lang/String;Lnet/minecraft/class_2561;)V
COMMENT Signs and sends {@code command} to the server.
ARG 1 command
@ -127,6 +130,7 @@ CLASS net/minecraft/class_746 net/minecraft/client/network/ClientPlayerEntity
ARG 2 preview
METHOD method_44097 sendChatMessagePacket (Ljava/lang/String;Lnet/minecraft/class_2561;)V
ARG 1 content
ARG 2 preview
METHOD method_44098 sendCommand (Ljava/lang/String;Lnet/minecraft/class_2561;)V
COMMENT Signs and sends {@code command} to the server.
ARG 1 command
@ -136,6 +140,15 @@ CLASS net/minecraft/class_746 net/minecraft/client/network/ClientPlayerEntity
COMMENT Sends an unsigned command to the server.
ARG 1 command
COMMENT the command (without the leading slash)
METHOD method_44297 (Lnet/minecraft/class_2561;Lnet/minecraft/class_7501;Lnet/minecraft/class_7470;Lnet/minecraft/class_7635;Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_7469;
ARG 5 argumentName
ARG 6 value
METHOD method_44826 createMessageMetadata ()Lnet/minecraft/class_7470;
METHOD method_44970 shouldPreview (Ljava/lang/String;)Z
COMMENT {@return whether to preview {@code command}}
COMMENT
COMMENT @see ArgumentSignatureDataMap#shouldPreview
ARG 1 command
COMMENT the command (without the leading slash)
METHOD method_7290 dropSelectedItem (Z)Z
ARG 1 entireStack

View File

@ -7,12 +7,29 @@ CLASS net/minecraft/class_7594 net/minecraft/client/network/message/MessageHandl
METHOD <init> (Lnet/minecraft/class_310;)V
ARG 1 client
METHOD method_44731 getPlayerListEntry (Ljava/util/UUID;)Lnet/minecraft/class_640;
COMMENT {@return the player list entry for {@code sender}, or {@code null} if the sender's
COMMENT UUID did not correspond to any known players}
ARG 1 sender
METHOD method_44732 getStatus (Lnet/minecraft/class_7471;Lnet/minecraft/class_2561;Lnet/minecraft/class_640;Ljava/time/Instant;)Lnet/minecraft/class_7595;
COMMENT {@return the trust status of {@code message}}
COMMENT
COMMENT <p>This returns {@link MessageTrustStatus#SECURE} for messages that are
COMMENT considered to be {@linkplain #isAlwaysTrusted always trusted}.
COMMENT
COMMENT @see #isAlwaysTrusted
COMMENT @see MessageTrustStatus#getStatus
ARG 1 message
ARG 2 decorated
ARG 3 senderEntry
ARG 4 receptionTimestamp
METHOD method_44733 onChatMessage (Lnet/minecraft/class_7471;Lnet/minecraft/class_2556$class_7602;)V
COMMENT Called when a chat message is received.
COMMENT
COMMENT <p>This enqueues the message to be processed after the chat delay set in
COMMENT options, if any.
COMMENT
COMMENT @see #processChatMessage
ARG 1 message
ARG 2 params
METHOD method_44734 extractSender (Lnet/minecraft/class_2561;)Ljava/util/UUID;
ARG 1 text
@ -20,6 +37,9 @@ CLASS net/minecraft/class_7594 net/minecraft/client/network/message/MessageHandl
ARG 1 message
ARG 2 timestamp
METHOD method_44736 onGameMessage (Lnet/minecraft/class_2561;Z)V
COMMENT Called when a game message is received.
COMMENT
COMMENT <p>Game messages ignore chat delay.
ARG 1 message
ARG 2 overlay
METHOD method_44737 addToChatLog (Lnet/minecraft/class_7471;Lnet/minecraft/class_2556$class_7602;Lnet/minecraft/class_640;Lnet/minecraft/class_7595;)V
@ -28,6 +48,9 @@ CLASS net/minecraft/class_7594 net/minecraft/client/network/message/MessageHandl
ARG 3 senderEntry
ARG 4 trustStatus
METHOD method_44738 isAlwaysTrusted (Ljava/util/UUID;)Z
COMMENT {@return whether messages from {@code sender} are always trusted}
COMMENT
COMMENT <p>Messages from this client's player in a singleplayer world are always trusted.
ARG 1 sender
METHOD method_44765 processDelayedMessages ()V
COMMENT Processes all delayed messages until one of them fails to process if the delay
@ -37,17 +60,38 @@ CLASS net/minecraft/class_7594 net/minecraft/client/network/message/MessageHandl
COMMENT to {@code 0}, this also processes all queued messages.
ARG 1 chatDelay
METHOD method_44767 processProfilelessMessage (Lnet/minecraft/class_2556$class_7602;Lnet/minecraft/class_7471;Lnet/minecraft/class_2561;)Z
COMMENT Processes a message that is sent as chat message but lacks the sender.
COMMENT
COMMENT <p>This is usually a message sent via commands executed from {@code /execute}
COMMENT command.
COMMENT
COMMENT <p>This adds the message to the hud, narrates it, and appends it to the
COMMENT chat log. The message is not verified.
ARG 1 params
ARG 2 message
ARG 3 decorated
METHOD method_44768 processChatMessage (Lnet/minecraft/class_2556$class_7602;Lnet/minecraft/class_7471;Lnet/minecraft/class_2561;Lnet/minecraft/class_640;ZLjava/time/Instant;)Z
COMMENT Processes a chat message and sends acknowledgment to the server.
COMMENT
COMMENT <p>The message can still end up not being displayed if the verification
COMMENT fails and {@code onlyShowSecureChat} is {@code true} or if the sender is
COMMENT blocked via the social interactions screen.
COMMENT
COMMENT @return whether the message was actually displayed
COMMENT @see #processChatMessageInternal
ARG 1 params
ARG 2 message
ARG 3 decorated
ARG 4 senderEntry
ARG 5 onlyShowSecureChat
ARG 6 receptionTimestamp
COMMENT the timestamp when the message was received by this client
METHOD method_44769 process ()V
COMMENT Processes one delayed message from the queue's beginning.
METHOD method_44772 narrate (Lnet/minecraft/class_2556$class_7602;Lnet/minecraft/class_7471;)V
COMMENT Narrates {@code message}.
COMMENT
COMMENT @see net.minecraft.client.util.NarratorManager#narrateChatMessage
ARG 1 params
ARG 2 message
METHOD method_44775 shouldDelay ()Z
@ -55,16 +99,78 @@ CLASS net/minecraft/class_7594 net/minecraft/client/network/message/MessageHandl
METHOD method_44818 process (Lnet/minecraft/class_7594$class_7627;)V
COMMENT Queues {@code processor} during {@linkplain #shouldDelay the chat delay},
COMMENT otherwise runs the processor.
ARG 1 processor
ARG 1 message
METHOD method_44819 removeDelayedMessage (Lnet/minecraft/class_7469;)Z
COMMENT Removes a delayed message whose signature matches {@code signature}.
COMMENT If this returns {@code false}, either the message is not received or it it
COMMENT already on the hud.
COMMENT
COMMENT @return whether the message was removed
ARG 1 signature
METHOD method_44820 onMessageHeader (Lnet/minecraft/class_7614;Lnet/minecraft/class_7469;[B)V
ARG 3 bodyDigest
METHOD method_44821 processHeader (Lnet/minecraft/class_7614;Lnet/minecraft/class_7469;[B)Z
COMMENT Called when a message header is received.
COMMENT
COMMENT <p>Message header is received instead of the full message when a message is censored
COMMENT or when the message is originally sent without metadata due to it being originated from
COMMENT entities. This is to keep the integrity of the "message chain".
ARG 1 header
ARG 2 signature
ARG 3 bodyDigest
METHOD method_44822 headerProcessed (Lnet/minecraft/class_7614;Lnet/minecraft/class_7469;[B)V
METHOD method_44821 processHeader (Lnet/minecraft/class_7614;Lnet/minecraft/class_7469;[B)Z
COMMENT Processes a received message header.
COMMENT
COMMENT <p>Message header is received instead of the full message when a message is censored
COMMENT or when the message is originally sent without metadata due to it being originated from
COMMENT entities. This is to keep the integrity of the "message chain".
COMMENT
COMMENT <p>This stores the header verification result and adds it to the chat log.
COMMENT
COMMENT @see net.minecraft.network.message.MessageVerifier#storeHeaderVerification
ARG 1 header
ARG 2 signature
ARG 3 bodyDigest
METHOD method_44822 addToChatLog (Lnet/minecraft/class_7614;Lnet/minecraft/class_7469;[B)V
ARG 1 header
ARG 2 signatures
ARG 3 bodyDigest
METHOD method_44942 (Lnet/minecraft/class_7594$class_7627;)V
ARG 0 message
METHOD method_44943 processChatMessageInternal (Lnet/minecraft/class_2556$class_7602;Lnet/minecraft/class_7471;Lnet/minecraft/class_2561;Lnet/minecraft/class_640;ZLjava/time/Instant;)Z
COMMENT Processes a chat message.
COMMENT
COMMENT <p>The message can still end up not being displayed if the verification
COMMENT fails and {@code onlyShowSecureChat} is {@code true} or if the sender is
COMMENT blocked via the social interactions screen.
COMMENT
COMMENT <p>This adds the message to the hud, narrates it, and appends it to the
COMMENT chat log.
COMMENT
COMMENT @return whether the message was actually displayed
ARG 1 params
ARG 2 message
ARG 3 decorated
ARG 4 senderEntry
ARG 5 onlyShowSecureChat
ARG 6 receptionTimestamp
COMMENT the timestamp when the message was received by this client
METHOD method_44944 getUnprocessedMessageCount ()J
COMMENT {@return the number of delayed messages that are not processed yet}
METHOD method_44945 processAll ()V
COMMENT Processes all delayed messages from the queue.
CLASS 1
FIELD field_39868 processed Z
CLASS class_7627 ProcessableMessage
COMMENT A message to be processed. An instance is created for each received message.
METHOD accept ()Z
COMMENT If this is not processed yet, adds the message to the hud; otherwise, processes
COMMENT the message header without adding to the hud.
METHOD method_44946 markProcessed ()V
COMMENT Marks this as processed.
METHOD method_44947 removeMatching (Lnet/minecraft/class_7469;)Z
COMMENT If {@code signature} equals this message's signature, marks this
COMMENT as processed and returns {@code true}. Otherwise, returns {@code false}.
COMMENT
COMMENT @return whether the passed signature matches the message's signature
ARG 1 signature
METHOD method_44948 isUnprocessed ()Z
COMMENT {@return {@code true} if this is not processed yet}

View File

@ -6,3 +6,4 @@ CLASS net/minecraft/class_7595 net/minecraft/client/network/message/MessageTrust
ARG 0 message
ARG 1 decorated
ARG 2 sender
ARG 3 receptionTimestamp

View File

@ -0,0 +1,9 @@
CLASS net/minecraft/class_7628 net/minecraft/client/option/ChatPreviewMode
FIELD field_39876 VALUES [Lnet/minecraft/class_7628;
FIELD field_39877 id I
FIELD field_39878 translationKey Ljava/lang/String;
METHOD <init> (Ljava/lang/String;IILjava/lang/String;)V
ARG 3 id
ARG 4 translationKey
METHOD method_44952 byId (I)Lnet/minecraft/class_7628;
ARG 0 id

View File

@ -208,6 +208,9 @@ CLASS net/minecraft/class_315 net/minecraft/client/option/GameOptions
FIELD field_39319 chatPreview Lnet/minecraft/class_7172;
FIELD field_39320 ONLY_SHOW_SECURE_CHAT_TOOLTIP Lnet/minecraft/class_2561;
FIELD field_39321 onlyShowSecureChat Lnet/minecraft/class_7172;
FIELD field_39835 OFF_CHAT_PREVIEW_TOOLTIP Lnet/minecraft/class_2561;
FIELD field_39836 LIVE_CHAT_PREVIEW_TOOLTIP Lnet/minecraft/class_2561;
FIELD field_39837 CONFIRM_CHAT_PREVIEW_TOOLTIP Lnet/minecraft/class_2561;
METHOD <init> (Lnet/minecraft/class_310;Ljava/io/File;)V
ARG 1 client
ARG 2 optionsFile
@ -562,6 +565,12 @@ CLASS net/minecraft/class_315 net/minecraft/client/option/GameOptions
ARG 1 value
METHOD method_44025 getChatPreview ()Lnet/minecraft/class_7172;
METHOD method_44026 getOnlyShowSecureChat ()Lnet/minecraft/class_7172;
METHOD method_44915 (Lnet/minecraft/class_310;)Lnet/minecraft/class_7172$class_7277;
ARG 0 client
METHOD method_44916 (Lnet/minecraft/class_310;Lnet/minecraft/class_7628;)Ljava/util/List;
ARG 1 value
METHOD method_44917 (Lnet/minecraft/class_7628;)V
ARG 0 value
CLASS 2
METHOD method_33676 find (Ljava/lang/String;)Ljava/lang/String;
ARG 1 key

View File

@ -37,9 +37,52 @@ CLASS net/minecraft/class_7566 net/minecraft/client/report/ChatAbuseReport
METHOD method_44583 getReason ()Lnet/minecraft/class_7573;
METHOD method_44584 validate ()Lnet/minecraft/class_7566$class_7567;
METHOD method_44585 copy ()Lnet/minecraft/class_7566;
METHOD method_44956 (Lnet/minecraft/class_7555$class_7560;)Lnet/minecraft/class_7555$class_7560;
ARG 0 indexedEntry
METHOD method_44957 streamSucceedingMessages (Lnet/minecraft/class_7555;II)Ljava/util/stream/Stream;
ARG 0 log
ARG 1 selectedIndex
ARG 2 maxCount
METHOD method_44958 collectEvidences (Lnet/minecraft/class_7555;ILcom/mojang/authlib/minecraft/report/AbuseReportLimits;)Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;
ARG 0 log
ARG 1 selectedIndex
ARG 2 abuseReportLimits
METHOD method_44959 collectIndicesUntilLastSeen (Lnet/minecraft/class_7555;ILnet/minecraft/class_7557$class_7558;)Lit/unimi/dsi/fastutil/ints/IntCollection;
ARG 0 log
ARG 1 selectedIndex
ARG 2 message
METHOD method_44960 collectPrecedingMessages (Lnet/minecraft/class_7555;ILnet/minecraft/class_7566$class_7632;)V
ARG 0 log
ARG 1 selectedIndex
ARG 2 consumer
METHOD method_44961 streamHeadersFrom (Lnet/minecraft/class_7555;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;Ljava/util/UUID;)Ljava/util/stream/Stream;
ARG 1 log
ARG 2 evidences
ARG 3 senderUuid
METHOD method_44962 (Lnet/minecraft/class_7555;Lit/unimi/dsi/fastutil/ints/Int2ObjectSortedMap;I)V
ARG 1 selection
METHOD method_44963 toReportChatMessage (Lnet/minecraft/class_7630;)Lcom/mojang/authlib/minecraft/report/ReportChatMessage;
ARG 1 headerEntry
METHOD method_44964 (Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;ILnet/minecraft/class_7557$class_7558;)Z
ARG 0 index
ARG 1 message
METHOD method_44965 (Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lnet/minecraft/class_7555$class_7560;)V
ARG 0 message
METHOD method_44966 (Lit/unimi/dsi/fastutil/ints/Int2ObjectSortedMap;Lnet/minecraft/class_7555$class_7560;)V
ARG 2 entry
METHOD method_44967 (Ljava/util/UUID;Lnet/minecraft/class_7555$class_7560;)Z
ARG 1 headerEntry
METHOD method_44968 (Lnet/minecraft/class_7635$class_7609;)Lcom/mojang/authlib/minecraft/report/ReportChatMessageBody$LastSeenSignature;
ARG 0 entry
METHOD method_44969 (Lnet/minecraft/class_7555$class_7560;)Lnet/minecraft/class_7555$class_7560;
ARG 0 indexedEntry
CLASS class_7567 ValidationError
FIELD field_39655 NO_REASON Lnet/minecraft/class_7566$class_7567;
FIELD field_39656 NO_REPORTED_MESSAGES Lnet/minecraft/class_7566$class_7567;
FIELD field_39657 TOO_MANY_MESSAGES Lnet/minecraft/class_7566$class_7567;
FIELD field_39658 COMMENTS_TOO_LONG Lnet/minecraft/class_7566$class_7567;
CLASS class_7568 ReportWithId
CLASS class_7632 IndexedMessageConsumer
METHOD accept (ILnet/minecraft/class_7557$class_7558;)Z
ARG 1 index
ARG 2 message

View File

@ -1,20 +1,24 @@
CLASS net/minecraft/class_7555 net/minecraft/client/report/ChatLog
COMMENT A chat log holds received chat and game messages with sequential indices, where
COMMENT newer messages receive bigger indices. An implementation using fixed-size array
CLASS net/minecraft/class_7555 net/minecraft/client/report/log/ChatLog
COMMENT A chat log holds received message entries with sequential indices, where
COMMENT newer entries receive bigger indices. An implementation using fixed-size array
COMMENT is available at {@link ChatLogImpl}.
COMMENT
COMMENT <p>There are two types of entries. {@link HeaderEntry} is an entry containing only
COMMENT the message's header, and is used for censored messages. {@link ReceivedMessage}
COMMENT is an entry for full chat or game messages.
FIELD field_39629 MISSING_NEXT_INDEX I
METHOD method_44531 getMaxIndex ()I
COMMENT {@return the maximum index currently used within the log}
COMMENT
COMMENT <p>This value changes every time a new message gets added. The message
COMMENT <p>This value changes every time a new entry gets added. The entry
COMMENT associated with this index is the newest one in the log.
METHOD method_44532 get (I)Lnet/minecraft/class_7629;
COMMENT {@return the message with index {@code index}, or {@code null} if there is no
COMMENT such message in the log}
COMMENT {@return the entry with index {@code index}, or {@code null} if there is no
COMMENT such entry in the log}
ARG 1 index
METHOD method_44533 getOffsetIndex (II)I
COMMENT {@return the index offset by {@code offset} if there is a message with that index, or
COMMENT {@value #MISSING_NEXT_INDEX} if there is no message with the offset index}
COMMENT {@return the index offset by {@code offset} if there is an entry with that index, or
COMMENT {@value #MISSING_NEXT_INDEX} if there is no entry with the offset index}
ARG 1 index
ARG 2 offset
METHOD method_44534 stream (ILjava/util/function/IntUnaryOperator;)Lnet/minecraft/class_7555$class_7556;
@ -26,22 +30,22 @@ CLASS net/minecraft/class_7555 net/minecraft/client/report/ChatLog
COMMENT a function that, when given an index, returns the next index
COMMENT or {@value #MISSING_NEXT_INDEX} to indicate the end of the stream
METHOD method_44535 add (Lnet/minecraft/class_7629;)V
COMMENT Adds {@code message} to the log.
ARG 1 message
COMMENT Adds {@code entry} to the log.
ARG 1 entry
METHOD method_44536 getMinIndex ()I
COMMENT {@return the minimum index currently used within the log}
COMMENT
COMMENT <p>This value can change every time a new message gets added. The message
COMMENT <p>This value can change every time a new entry gets added. The entry
COMMENT associated with this index is the oldest one in the log.
METHOD method_44537 getIndexed (I)Lnet/minecraft/class_7555$class_7560;
COMMENT {@return the indexed message with index {@code index}, or {@code null} if there is no
COMMENT such message in the log}
COMMENT {@return the indexed entry with index {@code index}, or {@code null} if there is no
COMMENT such entry in the log}
ARG 1 index
METHOD method_44539 streamForward ()Lnet/minecraft/class_7555$class_7556;
COMMENT {@return the streams starting from {@linkplain #getMinIndex the smallest index
COMMENT in the log} with entires ordered chronologically (in ascending order)}
METHOD method_44540 contains (I)Z
COMMENT {@return whether the log contains a message with index {@code index}}
COMMENT {@return whether the log contains an entry with index {@code index}}
ARG 1 index
METHOD method_44541 streamForward (II)Lnet/minecraft/class_7555$class_7556;
COMMENT {@return the streams starting from {@code startIndex} with entires ordered
@ -54,16 +58,16 @@ CLASS net/minecraft/class_7555 net/minecraft/client/report/ChatLog
METHOD method_44542 emptyStreams ()Lnet/minecraft/class_7555$class_7556;
COMMENT {@return the empty stream}
METHOD method_44543 getPreviousIndex (I)I
COMMENT {@return the index offset by {@code -1} if there is a message with that index, or
COMMENT {@value #MISSING_NEXT_INDEX} if there is no message with the offset index}
COMMENT {@return the index offset by {@code -1} if there is an entry with that index, or
COMMENT {@value #MISSING_NEXT_INDEX} if there is no entry with the offset index}
COMMENT
COMMENT @see #getOffsetIndex
ARG 1 index
METHOD method_44544 (II)I
ARG 2 currentIndex
METHOD method_44545 getNextIndex (I)I
COMMENT {@return the index offset by {@code 1} if there is a message with that index, or
COMMENT {@value #MISSING_NEXT_INDEX} if there is no message with the offset index}
COMMENT {@return the index offset by {@code 1} if there is an entry with that index, or
COMMENT {@value #MISSING_NEXT_INDEX} if there is no entry with the offset index}
COMMENT
COMMENT @see #getOffsetIndex
ARG 1 index
@ -85,7 +89,7 @@ CLASS net/minecraft/class_7555 net/minecraft/client/report/ChatLog
CLASS 1
FIELD field_39633 nextIndex I
CLASS class_7556 Streams
COMMENT A set of streams of logged messages.
COMMENT A set of streams of log entries.
FIELD field_39634 CHARACTERISTICS I
FIELD field_39635 log Lnet/minecraft/class_7555;
FIELD field_39636 indicesIterator Ljava/util/PrimitiveIterator$OfInt;
@ -93,16 +97,26 @@ CLASS net/minecraft/class_7555 net/minecraft/client/report/ChatLog
ARG 1 log
ARG 2 indicesIterator
METHOD method_44548 streamIndices ()Ljava/util/stream/IntStream;
COMMENT {@return the stream of message indices}
COMMENT {@return the stream of entry indices}
METHOD method_44703 (Lnet/minecraft/class_7629;)Lcom/mojang/authlib/GameProfile;
ARG 0 message
METHOD method_44704 collectSenderProfiles ()Ljava/util/Collection;
COMMENT {@return the collection of profiles of message senders}
COMMENT
COMMENT <p>This ignores game messages, and the returned collection has no duplicates.
CLASS class_7560 IndexedMessage
COMMENT A pair of the message's index and the message itself.
METHOD method_44950 streamLogEntries ()Ljava/util/stream/Stream;
COMMENT {@return the stream of log entries}
METHOD method_44951 streamIndexedEntries ()Ljava/util/stream/Stream;
COMMENT {@return the stream of indexed log entries}
CLASS class_7560 IndexedEntry
COMMENT A pair of the entry's index and the entry itself.
COMMENT
COMMENT @see ChatLog
FIELD comp_873 index I
FIELD comp_959 entry Lnet/minecraft/class_7629;
METHOD comp_873 index ()I
METHOD comp_959 entry ()Lnet/minecraft/class_7629;
METHOD method_44949 cast (Ljava/lang/Class;)Lnet/minecraft/class_7555$class_7560;
COMMENT {@return the indexed entry with the entry instance cast to {@code clazz},
COMMENT or {@code null} if it cannot be cast}
ARG 1 clazz

View File

@ -0,0 +1,2 @@
CLASS net/minecraft/class_7629 net/minecraft/client/report/log/ChatLogEntry
COMMENT An entry logged to {@link ChatLog}.

View File

@ -1,22 +1,22 @@
CLASS net/minecraft/class_7561 net/minecraft/client/report/ChatLogImpl
CLASS net/minecraft/class_7561 net/minecraft/client/report/log/ChatLogImpl
COMMENT An implementation of {@link ChatLog} using a fixed-size array and {@code 0} as the
COMMENT starting index. When adding a log, the index is incremented, and the message at the
COMMENT starting index. When adding a log, the index is incremented, and the entry at the
COMMENT index is overwritten. If the index goes above the array size, the array index wraps
COMMENT around but the message index is still incremented.
COMMENT around but the entry index is still incremented.
COMMENT
COMMENT <p>For example, if the size is {@code 10}, after adding the 10th item, the next index is
COMMENT {@code 10} because the log is 0-indexed. However, the next message will be stored at
COMMENT {@code messages[0]}. Use {@link #wrapIndex} to calculate the wrapped index.
FIELD field_39638 messages [Lnet/minecraft/class_7629;
FIELD field_39638 entries [Lnet/minecraft/class_7629;
FIELD field_39639 maxIndex I
FIELD field_39640 minIndex I
METHOD <init> (I)V
ARG 1 maxMessages
ARG 1 maxEntries
METHOD method_44559 incrementIndex ()I
COMMENT {@return the incremented index}
COMMENT
COMMENT @implNote This always increments {@link #maxIndex}, and increments {@link #minIndex}
COMMENT only if the array is already full.
METHOD method_44560 wrapIndex (I)I
COMMENT {@return the message {@code index} wrapped for accessing the backing array}
COMMENT {@return the entry {@code index} wrapped for accessing the backing array}
ARG 1 index

View File

@ -0,0 +1,7 @@
CLASS net/minecraft/class_7630 net/minecraft/client/report/log/HeaderEntry
COMMENT An entry of {@link ChatLog} containing only the message header.
METHOD method_44955 of (Lnet/minecraft/class_7614;Lnet/minecraft/class_7469;[B)Lnet/minecraft/class_7630$class_7631;
ARG 0 header
ARG 1 headerSignature
ARG 2 bodyDigest
CLASS class_7631 Impl

View File

@ -1,4 +1,4 @@
CLASS net/minecraft/class_7557 net/minecraft/client/report/ReceivedMessage
CLASS net/minecraft/class_7557 net/minecraft/client/report/log/ReceivedMessage
COMMENT A message received by the client and stored in {@link ChatLog}.
COMMENT
COMMENT <p>This includes both {@linkplain net.minecraft.network.packet.s2c.play.ChatMessageS2CPacket