Chat filtering mappings (#1809)

* Chat filtering mappings

* Map filter methods for in-game strings

* ChatFilterer -> TextFilterer

* Apply suggestions from code review

Co-authored-by: YanisBft <doublecraft.official@gmail.com>

* check -> filter

Co-authored-by: YanisBft <doublecraft.official@gmail.com>
This commit is contained in:
ramidzkh 2020-11-05 07:27:32 +11:00 committed by GitHub
parent efff892375
commit fe6fc12fcd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 69 additions and 0 deletions

View File

@ -123,6 +123,8 @@ CLASS net/minecraft/server/MinecraftServer
METHOD method_30002 getOverworld ()Lnet/minecraft/class_3218;
METHOD method_30611 getRegistryManager ()Lnet/minecraft/class_5455;
METHOD method_30612 getRateLimit ()I
METHOD method_31371 createFilterer (Lnet/minecraft/class_3222;)Lnet/minecraft/class_5513;
ARG 1 player
METHOD method_3716 getKeyPair ()Ljava/security/KeyPair;
METHOD method_3718 isFlightEnabled ()Z
METHOD method_3719 getGameProfileRepo ()Lcom/mojang/authlib/GameProfileRepository;

View File

@ -7,6 +7,7 @@ CLASS net/minecraft/class_3176 net/minecraft/server/dedicated/MinecraftDedicated
FIELD field_13819 rconServer Lnet/minecraft/class_3408;
FIELD field_16799 propertiesLoader Lnet/minecraft/class_3807;
FIELD field_16800 gui Lnet/minecraft/class_3182;
FIELD field_26898 filterer Lnet/minecraft/class_5514;
METHOD method_13941 executeQueuedCommands ()V
METHOD method_13942 sleepFiveSeconds ()V
METHOD method_13944 getMaxTickTime ()J

View File

@ -47,4 +47,5 @@ CLASS net/minecraft/class_3806 net/minecraft/server/dedicated/ServerPropertiesHa
FIELD field_24454 entityBroadcastRangePercentage I
FIELD field_24623 generatorOptions Lnet/minecraft/class_5285;
FIELD field_25802 rateLimit I
FIELD field_26899 textFilteringConfig Ljava/lang/String;
METHOD method_16714 load (Lnet/minecraft/class_5455;Ljava/nio/file/Path;)Lnet/minecraft/class_3806;

View File

@ -0,0 +1,46 @@
CLASS net/minecraft/class_5514 net/minecraft/server/filter/TextFilterer
FIELD field_26823 LOGGER Lorg/apache/logging/log4j/Logger;
FIELD field_26824 NEXT_WORKER_ID Ljava/util/concurrent/atomic/AtomicInteger;
FIELD field_26825 THREAD_FACTORY Ljava/util/concurrent/ThreadFactory;
FIELD field_26826 chatEndpoint Ljava/net/URL;
FIELD field_26827 joinEndpoint Ljava/net/URL;
FIELD field_26828 leaveEndpoint Ljava/net/URL;
FIELD field_26829 apiKey Ljava/lang/String;
FIELD field_26830 ruleId I
FIELD field_26831 serverId Ljava/lang/String;
FIELD field_26832 ignorer Lnet/minecraft/class_5514$class_5515;
FIELD field_26833 executor Ljava/util/concurrent/ExecutorService;
METHOD method_31295 sendJsonRequest (Lcom/google/gson/JsonObject;Ljava/net/URL;)Lcom/google/gson/JsonObject;
ARG 1 payload
ARG 2 endpoint
METHOD method_31297 createFilterer (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/class_5513;
ARG 1 gameProfile
METHOD method_31298 filterMessage (Lcom/mojang/authlib/GameProfile;Ljava/lang/String;Lnet/minecraft/class_5514$class_5515;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture;
ARG 1 gameProfile
ARG 2 message
ARG 3 ignorer
ARG 4 executor
METHOD method_31299 sendJoinOrLeaveRequest (Lcom/mojang/authlib/GameProfile;Ljava/net/URL;Ljava/util/concurrent/Executor;)V
ARG 1 gameProfile
ARG 2 endpoint
ARG 3 executor
METHOD method_31300 consumeFully (Ljava/io/InputStream;)V
ARG 1 inputStream
METHOD method_31304 sendRequest (Lcom/google/gson/JsonObject;Ljava/net/URL;)V
ARG 1 payload
ARG 2 endpoint
METHOD method_31306 createConnection (Lcom/google/gson/JsonObject;Ljava/net/URL;)Ljava/net/HttpURLConnection;
ARG 1 payload
ARG 2 endpoint
CLASS class_5515 HashIgnorer
FIELD field_26834 NEVER_IGNORE Lnet/minecraft/class_5514$class_5515;
FIELD field_26835 IGNORE_IF_MATCHES_ALL Lnet/minecraft/class_5514$class_5515;
METHOD shouldIgnore (Ljava/lang/String;I)Z
ARG 1 hashes
ARG 2 hashesSize
CLASS class_5516 Impl
FIELD field_26837 gameProfile Lcom/mojang/authlib/GameProfile;
FIELD field_26838 executor Ljava/util/concurrent/Executor;
CLASS class_5517 FailedHttpRequestException
METHOD <init> (Ljava/lang/String;)V
ARG 1 message

View File

@ -0,0 +1,7 @@
CLASS net/minecraft/class_5513 net/minecraft/server/filter/TextStream
METHOD method_31287 onConnect ()V
METHOD method_31288 filterText (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture;
ARG 1 text
METHOD method_31289 filterTexts (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture;
ARG 1 texts
METHOD method_31290 onDisconnect ()V

View File

@ -71,3 +71,13 @@ CLASS net/minecraft/class_3244 net/minecraft/server/network/ServerPlayNetworkHan
COMMENT <p>For this to return true, the player must not be actively cooling down.
ARG 0 player
ARG 1 stack
METHOD method_31275 filterText (Ljava/lang/Object;Ljava/util/function/Consumer;Ljava/util/function/BiFunction;)V
ARG 1 text
ARG 2 consumer
ARG 3 backingFilterer
METHOD method_31277 filterText (Ljava/lang/String;Ljava/util/function/Consumer;)V
ARG 1 text
ARG 2 consumer
METHOD method_31279 filterTexts (Ljava/util/List;Ljava/util/function/Consumer;)V
ARG 1 texts
ARG 2 consumer

View File

@ -37,6 +37,7 @@ CLASS net/minecraft/class_3222 net/minecraft/server/network/ServerPlayerEntity
FIELD field_23192 spawnPointPosition Lnet/minecraft/class_2338;
FIELD field_23193 spawnPointSet Z
FIELD field_26353 spawnAngle F
FIELD field_26821 textStream Lnet/minecraft/class_5513;
METHOD <init> (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_3218;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_3225;)V
ARG 1 server
ARG 2 world
@ -139,5 +140,6 @@ CLASS net/minecraft/class_3222 net/minecraft/server/network/ServerPlayerEntity
ARG 1 world
ARG 2 centerPos
METHOD method_30631 getSpawnAngle ()F
METHOD method_31273 getTextStream ()Lnet/minecraft/class_5513;
METHOD method_7346 closeHandledScreen ()V
COMMENT Closes the current handled screen and sends a screen closing packet to the client.