Loot and JSON stuff (#1437)

loot json stuff's factory -> serializer

Co-authored-by: liach <liach@users.noreply.github.com>
This commit is contained in:
liach 2020-06-07 16:57:17 -05:00 committed by GitHub
parent 1d5774f978
commit caab34e999
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
48 changed files with 110 additions and 39 deletions

View File

@ -1,3 +1,4 @@
CLASS net/minecraft/class_2509 net/minecraft/datafixer/NbtOps
COMMENT Used to represent a Minecraft NBT as a {@link com.mojang.datafixers.Dynamic} for DataFixerUpper.
FIELD field_11560 INSTANCE Lnet/minecraft/class_2509;
CLASS class_5320 MapBuilder

View File

@ -11,4 +11,4 @@ CLASS net/minecraft/class_186 net/minecraft/loot/condition/AlternativeLootCondit
FIELD field_1248 terms Ljava/util/List;
METHOD <init> ([Lnet/minecraft/class_5341$class_210;)V
ARG 1 terms
CLASS class_188 Factory
CLASS class_188 Serializer

View File

@ -14,4 +14,4 @@ CLASS net/minecraft/class_212 net/minecraft/loot/condition/BlockStatePropertyLoo
METHOD <init> (Lnet/minecraft/class_2248;)V
ARG 1 block
METHOD method_22584 properties (Lnet/minecraft/class_4559$class_4560;)Lnet/minecraft/class_212$class_213;
CLASS class_214 Factory
CLASS class_214 Serializer

View File

@ -6,4 +6,4 @@ CLASS net/minecraft/class_190 net/minecraft/loot/condition/DamageSourcePropertie
ARG 0 builder
METHOD test (Ljava/lang/Object;)Z
ARG 1 context
CLASS class_191 Factory
CLASS class_191 Serializer

View File

@ -14,4 +14,4 @@ CLASS net/minecraft/class_215 net/minecraft/loot/condition/EntityPropertiesLootC
ARG 1 predicateBuilder
METHOD test (Ljava/lang/Object;)Z
ARG 1 context
CLASS class_216 Factory
CLASS class_216 Serializer

View File

@ -11,4 +11,4 @@ CLASS net/minecraft/class_199 net/minecraft/loot/condition/EntityScoresLootCondi
ARG 4 scoreRange
METHOD test (Ljava/lang/Object;)Z
ARG 1 context
CLASS class_200 Factory
CLASS class_200 Serializer

View File

@ -6,4 +6,4 @@ CLASS net/minecraft/class_207 net/minecraft/loot/condition/InvertedLootCondition
ARG 0 term
METHOD test (Ljava/lang/Object;)Z
ARG 1 context
CLASS class_208 Factory
CLASS class_208 Serializer

View File

@ -3,4 +3,4 @@ CLASS net/minecraft/class_221 net/minecraft/loot/condition/KilledByPlayerLootCon
METHOD method_939 builder ()Lnet/minecraft/class_5341$class_210;
METHOD test (Ljava/lang/Object;)Z
ARG 1 context
CLASS class_222 Factory
CLASS class_222 Serializer

View File

@ -8,4 +8,4 @@ CLASS net/minecraft/class_205 net/minecraft/loot/condition/LocationCheckLootCond
ARG 0 predicateBuilder
METHOD test (Ljava/lang/Object;)Z
ARG 1 context
CLASS class_206 Factory
CLASS class_206 Serializer

View File

@ -1,4 +1,5 @@
CLASS net/minecraft/class_5341 net/minecraft/loot/condition/LootCondition
METHOD method_29325 getType ()Lnet/minecraft/class_5342;
CLASS class_210 Builder
METHOD method_16780 invert ()Lnet/minecraft/class_5341$class_210;
METHOD method_893 or (Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_186$class_187;

View File

@ -5,3 +5,10 @@ CLASS net/minecraft/class_4567 net/minecraft/loot/condition/LootConditionManager
METHOD method_22559 getIds ()Ljava/util/Set;
METHOD method_22564 get (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5341;
ARG 1 id
CLASS class_5334 AndCondition
FIELD field_25202 terms [Lnet/minecraft/class_5341;
FIELD field_25203 predicate Ljava/util/function/Predicate;
METHOD <init> ([Lnet/minecraft/class_5341;)V
ARG 1 elements
METHOD test (Ljava/lang/Object;)Z
ARG 1 context

View File

@ -1,6 +1,8 @@
CLASS net/minecraft/class_217 net/minecraft/loot/condition/LootConditionTypes
METHOD method_29326 createGsonSerializer ()Ljava/lang/Object;
METHOD method_29327 register (Ljava/lang/String;Lnet/minecraft/class_5335;)Lnet/minecraft/class_5342;
ARG 0 id
ARG 1 serializer
METHOD method_921 (Ljava/lang/Object;)Z
ARG 0 predicates
METHOD method_924 joinAnd ([Ljava/util/function/Predicate;)Ljava/util/function/Predicate;

View File

@ -6,4 +6,4 @@ CLASS net/minecraft/class_223 net/minecraft/loot/condition/MatchToolLootConditio
ARG 0 predicate
METHOD test (Ljava/lang/Object;)Z
ARG 1 context
CLASS class_224 Factory
CLASS class_224 Serializer

View File

@ -6,4 +6,4 @@ CLASS net/minecraft/class_219 net/minecraft/loot/condition/RandomChanceLootCondi
ARG 0 chance
METHOD test (Ljava/lang/Object;)Z
ARG 1 context
CLASS class_220 Factory
CLASS class_220 Serializer

View File

@ -9,4 +9,4 @@ CLASS net/minecraft/class_225 net/minecraft/loot/condition/RandomChanceWithLooti
ARG 1 lootingMultiplier
METHOD test (Ljava/lang/Object;)Z
ARG 1 context
CLASS class_226 Factory
CLASS class_226 Serializer

View File

@ -5,4 +5,4 @@ CLASS net/minecraft/class_4568 net/minecraft/loot/condition/ReferenceLootConditi
ARG 1 id
METHOD test (Ljava/lang/Object;)Z
ARG 1 context
CLASS class_4569 Factory
CLASS class_4569 Serializer

View File

@ -3,4 +3,4 @@ CLASS net/minecraft/class_201 net/minecraft/loot/condition/SurvivesExplosionLoot
METHOD method_871 builder ()Lnet/minecraft/class_5341$class_210;
METHOD test (Ljava/lang/Object;)Z
ARG 1 context
CLASS class_202 Factory
CLASS class_202 Serializer

View File

@ -9,4 +9,4 @@ CLASS net/minecraft/class_182 net/minecraft/loot/condition/TableBonusLootConditi
ARG 1 chances
METHOD test (Ljava/lang/Object;)Z
ARG 1 context
CLASS class_183 Factory
CLASS class_183 Serializer

View File

@ -6,4 +6,4 @@ CLASS net/minecraft/class_4571 net/minecraft/loot/condition/TimeCheckLootConditi
ARG 2 value
METHOD test (Ljava/lang/Object;)Z
ARG 1 context
CLASS class_4572 Factory
CLASS class_4572 Serializer

View File

@ -6,4 +6,4 @@ CLASS net/minecraft/class_227 net/minecraft/loot/condition/WeatherCheckLootCondi
ARG 2 thundering
METHOD test (Ljava/lang/Object;)Z
ARG 1 context
CLASS class_228 Factory
CLASS class_228 Serializer

View File

@ -3,6 +3,7 @@ CLASS net/minecraft/class_79 net/minecraft/loot/entry/LootPoolEntry
FIELD field_989 conditionPredicate Ljava/util/function/Predicate;
METHOD <init> ([Lnet/minecraft/class_5341;)V
ARG 1 conditions
METHOD method_29318 getType ()Lnet/minecraft/class_5338;
METHOD method_414 test (Lnet/minecraft/class_47;)Z
ARG 1 context
METHOD method_415 validate (Lnet/minecraft/class_58;)V
@ -14,5 +15,12 @@ CLASS net/minecraft/class_79 net/minecraft/loot/entry/LootPoolEntry
METHOD method_418 getThisBuilder ()Lnet/minecraft/class_79$class_80;
METHOD method_419 build ()Lnet/minecraft/class_79;
METHOD method_420 getConditions ()[Lnet/minecraft/class_5341;
CLASS class_5337
CLASS class_5337 Serializer
METHOD method_422 addEntryFields (Lcom/google/gson/JsonObject;Lnet/minecraft/class_79;Lcom/google/gson/JsonSerializationContext;)V
ARG 1 json
ARG 2 entry
ARG 3 context
METHOD method_424 fromJson (Lcom/google/gson/JsonObject;Lcom/google/gson/JsonDeserializationContext;[Lnet/minecraft/class_5341;)Lnet/minecraft/class_79;
ARG 1 json
ARG 2 context
ARG 3 conditions

View File

@ -1,3 +1,4 @@
CLASS net/minecraft/class_75 net/minecraft/loot/entry/LootPoolEntryTypes
METHOD method_29316 createGsonSerializer ()Ljava/lang/Object;
METHOD method_29317 register (Ljava/lang/String;Lnet/minecraft/class_5335;)Lnet/minecraft/class_5338;
ARG 0 id

View File

@ -53,7 +53,7 @@ CLASS net/minecraft/class_94 net/minecraft/loot/function/ApplyBonusLootFunction
METHOD method_468 fromJson (Lcom/google/gson/JsonObject;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/class_94$class_96;
ARG 0 json
ARG 1 context
CLASS class_99 Factory
CLASS class_99 Serializer
CLASS class_100 UniformBonusCount
FIELD field_1016 ID Lnet/minecraft/class_2960;
FIELD field_1017 bonusMultiplier I

View File

@ -19,7 +19,7 @@ CLASS net/minecraft/class_120 net/minecraft/loot/function/ConditionalLootFunctio
FIELD field_1050 joiner Ljava/util/function/Function;
METHOD <init> (Ljava/util/function/Function;)V
ARG 1 joiner
CLASS class_123 Factory
CLASS class_123 Serializer
METHOD method_530 fromJson (Lcom/google/gson/JsonObject;Lcom/google/gson/JsonDeserializationContext;[Lnet/minecraft/class_5341;)Lnet/minecraft/class_120;
ARG 1 json
ARG 2 context

View File

@ -15,4 +15,4 @@ CLASS net/minecraft/class_101 net/minecraft/loot/function/CopyNameLootFunction
ARG 4 parameter
METHOD method_475 get (Ljava/lang/String;)Lnet/minecraft/class_101$class_102;
ARG 0 name
CLASS class_103 Factory
CLASS class_103 Serializer

View File

@ -75,4 +75,4 @@ CLASS net/minecraft/class_3837 net/minecraft/loot/function/CopyNbtLootFunction
ARG 1 compoundTag
METHOD method_16869 (Ljava/util/List;Lnet/minecraft/class_2520;)V
ARG 1 foundTag
CLASS class_3842 Factory
CLASS class_3842 Serializer

View File

@ -7,4 +7,4 @@ CLASS net/minecraft/class_4488 net/minecraft/loot/function/CopyStateFunction
CLASS class_4489 Builder
FIELD field_20451 block Lnet/minecraft/class_2248;
FIELD field_20452 properties Ljava/util/Set;
CLASS class_4490 Factory
CLASS class_4490 Serializer

View File

@ -7,7 +7,7 @@ CLASS net/minecraft/class_109 net/minecraft/loot/function/EnchantRandomlyLootFun
METHOD method_488 ([Lnet/minecraft/class_5341;)Lnet/minecraft/class_117;
ARG 0 conditions
METHOD method_489 builder ()Lnet/minecraft/class_120$class_121;
CLASS class_110 Factory
CLASS class_110 Serializer
CLASS class_4954 Builder
FIELD field_23090 enchantments Ljava/util/Set;
METHOD method_25992 add (Lnet/minecraft/class_1887;)Lnet/minecraft/class_109$class_4954;

View File

@ -13,4 +13,4 @@ CLASS net/minecraft/class_106 net/minecraft/loot/function/EnchantWithLevelsLootF
METHOD <init> (Lnet/minecraft/class_59;)V
ARG 1 range
METHOD method_484 allowTreasureEnchantments ()Lnet/minecraft/class_106$class_107;
CLASS class_108 Factory
CLASS class_108 Serializer

View File

@ -26,4 +26,4 @@ CLASS net/minecraft/class_111 net/minecraft/loot/function/ExplorationMapLootFunc
METHOD method_502 withDestination (Lnet/minecraft/class_3195;)Lnet/minecraft/class_111$class_112;
METHOD method_503 withSkipExistingChunks (Z)Lnet/minecraft/class_111$class_112;
ARG 1 skipExistingChunks
CLASS class_113 Factory
CLASS class_113 Serializer

View File

@ -2,4 +2,4 @@ CLASS net/minecraft/class_104 net/minecraft/loot/function/ExplosionDecayLootFunc
METHOD <init> ([Lnet/minecraft/class_5341;)V
ARG 1 conditions
METHOD method_478 builder ()Lnet/minecraft/class_120$class_121;
CLASS class_105 Factory
CLASS class_105 Serializer

View File

@ -3,4 +3,4 @@ CLASS net/minecraft/class_3668 net/minecraft/loot/function/FillPlayerHeadLootFun
METHOD <init> ([Lnet/minecraft/class_5341;Lnet/minecraft/class_47$class_50;)V
ARG 1 conditions
ARG 2 entity
CLASS class_3669 Factory
CLASS class_3669 Serializer

View File

@ -3,3 +3,4 @@ CLASS net/minecraft/class_165 net/minecraft/loot/function/FurnaceSmeltLootFuncti
METHOD <init> ([Lnet/minecraft/class_5341;)V
ARG 1 conditions
METHOD method_724 builder ()Lnet/minecraft/class_120$class_121;
CLASS class_5340 Serializer

View File

@ -7,4 +7,4 @@ CLASS net/minecraft/class_114 net/minecraft/loot/function/LimitCountLootFunction
ARG 0 limit
METHOD method_508 (Lnet/minecraft/class_42;[Lnet/minecraft/class_5341;)Lnet/minecraft/class_117;
ARG 1 conditions
CLASS class_115 Factory
CLASS class_115 Serializer

View File

@ -1,5 +1,6 @@
CLASS net/minecraft/class_131 net/minecraft/loot/function/LootFunctionTypes
FIELD field_1102 NOOP Ljava/util/function/BiFunction;
METHOD method_29322 createGsonSerializer ()Ljava/lang/Object;
METHOD method_29323 register (Ljava/lang/String;Lnet/minecraft/class_5335;)Lnet/minecraft/class_5339;
ARG 0 id
METHOD method_591 (Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Lnet/minecraft/class_1799;Lnet/minecraft/class_47;)Lnet/minecraft/class_1799;

View File

@ -15,4 +15,4 @@ CLASS net/minecraft/class_125 net/minecraft/loot/function/LootingEnchantLootFunc
ARG 1 countRange
METHOD method_551 withLimit (I)Lnet/minecraft/class_125$class_126;
ARG 1 limit
CLASS class_127 Factory
CLASS class_127 Serializer

View File

@ -25,4 +25,4 @@ CLASS net/minecraft/class_137 net/minecraft/loot/function/SetAttributesLootFunct
ARG 1 context
METHOD method_615 serialize (Lcom/google/gson/JsonSerializationContext;)Lcom/google/gson/JsonObject;
ARG 1 context
CLASS class_139 Factory
CLASS class_139 Serializer

View File

@ -12,4 +12,4 @@ CLASS net/minecraft/class_134 net/minecraft/loot/function/SetContentsLootFunctio
FIELD field_1104 entries Ljava/util/List;
METHOD method_602 withEntry (Lnet/minecraft/class_79$class_80;)Lnet/minecraft/class_134$class_135;
ARG 1 entryBuilder
CLASS class_136 Factory
CLASS class_136 Serializer

View File

@ -7,4 +7,4 @@ CLASS net/minecraft/class_141 net/minecraft/loot/function/SetCountLootFunction
ARG 1 conditions
METHOD method_621 builder (Lnet/minecraft/class_59;)Lnet/minecraft/class_120$class_121;
ARG 0 countRange
CLASS class_142 Factory
CLASS class_142 Serializer

View File

@ -8,4 +8,4 @@ CLASS net/minecraft/class_149 net/minecraft/loot/function/SetDamageLootFunction
ARG 0 durabilityRange
METHOD method_634 (Lnet/minecraft/class_61;[Lnet/minecraft/class_5341;)Lnet/minecraft/class_117;
ARG 1 conditions
CLASS class_150 Factory
CLASS class_150 Serializer

View File

@ -5,4 +5,4 @@ CLASS net/minecraft/class_144 net/minecraft/loot/function/SetLootTableLootFuncti
ARG 1 conditions
ARG 2 id
ARG 3 seed
CLASS class_145 Factory
CLASS class_145 Serializer

View File

@ -10,4 +10,4 @@ CLASS net/minecraft/class_3671 net/minecraft/loot/function/SetLoreLootFunction
METHOD method_15964 getLoreForMerge (Lnet/minecraft/class_1799;Z)Lnet/minecraft/class_2499;
ARG 1 stack
ARG 2 otherLoreExists
CLASS class_3672 Factory
CLASS class_3672 Serializer

View File

@ -13,4 +13,4 @@ CLASS net/minecraft/class_3670 net/minecraft/loot/function/SetNameLootFunction
ARG 1 sourceEntity
METHOD method_16191 (Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561;
ARG 0 textComponent
CLASS class_147 Factory
CLASS class_147 Serializer

View File

@ -7,4 +7,4 @@ CLASS net/minecraft/class_159 net/minecraft/loot/function/SetNbtLootFunction
ARG 1 conditions
METHOD method_677 builder (Lnet/minecraft/class_2487;)Lnet/minecraft/class_120$class_121;
ARG 0 tag
CLASS class_160 Builder
CLASS class_160 Serializer

View File

@ -9,4 +9,4 @@ CLASS net/minecraft/class_152 net/minecraft/loot/function/SetStewEffectLootFunct
METHOD method_640 withEffect (Lnet/minecraft/class_1291;Lnet/minecraft/class_61;)Lnet/minecraft/class_152$class_153;
ARG 1 effect
ARG 2 durationRange
CLASS class_154 Factory
CLASS class_154 Serializer

View File

@ -1,3 +1,5 @@
CLASS net/minecraft/class_5336 net/minecraft/util/JsonSerializableType
FIELD field_25204 jsonSerializer Lnet/minecraft/class_5335;
METHOD <init> (Lnet/minecraft/class_5335;)V
ARG 1 jsonSerializer
METHOD method_29312 getJsonSerializer ()Lnet/minecraft/class_5335;

View File

@ -1,3 +1,8 @@
CLASS net/minecraft/class_5335 net/minecraft/util/JsonSerializable
CLASS net/minecraft/class_5335 net/minecraft/util/JsonSerializer
METHOD method_516 toJson (Lcom/google/gson/JsonObject;Ljava/lang/Object;Lcom/google/gson/JsonSerializationContext;)V
ARG 1 json
ARG 2 object
ARG 3 context
METHOD method_517 fromJson (Lcom/google/gson/JsonObject;Lcom/google/gson/JsonDeserializationContext;)Ljava/lang/Object;
ARG 1 json
ARG 2 context

View File

@ -0,0 +1,42 @@
CLASS net/minecraft/class_5330 net/minecraft/util/JsonSerializing
METHOD method_29306 createTypeHandler (Lnet/minecraft/class_2378;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;)Lnet/minecraft/class_5330$class_5331;
ARG 0 registry
ARG 1 rootFieldName
ARG 2 idFieldName
ARG 3 typeIdentification
CLASS class_5331 TypeHandler
COMMENT A handler of JSON serializable types that can either obtain a type from
COMMENT a registry to handle JSON conversion or handle with a custom logic bound
COMMENT to a type.
COMMENT
COMMENT <p>When the root element read is an object, the handler obtains the type
COMMENT from registry to handle reading; otherwise, it falls back to custom
COMMENT logic.</p>
FIELD field_25192 registry Lnet/minecraft/class_2378;
FIELD field_25193 rootFieldName Ljava/lang/String;
FIELD field_25194 idFieldName Ljava/lang/String;
FIELD field_25195 typeIdentification Ljava/util/function/Function;
FIELD field_25196 customSerializer Lcom/mojang/datafixers/util/Pair;
METHOD <init> (Lnet/minecraft/class_2378;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;)V
ARG 1 registry
ARG 2 rootFieldName
ARG 3 idFieldName
ARG 4 typeIdentification
METHOD method_29307 createGsonSerializer ()Ljava/lang/Object;
CLASS class_5332 CustomSerializer
METHOD method_29308 fromJson (Lcom/google/gson/JsonElement;Lcom/google/gson/JsonDeserializationContext;)Ljava/lang/Object;
ARG 1 json
ARG 2 context
METHOD method_29309 toJson (Ljava/lang/Object;Lcom/google/gson/JsonSerializationContext;)Lcom/google/gson/JsonElement;
ARG 1 object
ARG 2 context
CLASS class_5333 GsonSerializer
FIELD field_25197 registry Lnet/minecraft/class_2378;
FIELD field_25198 rootFieldName Ljava/lang/String;
FIELD field_25199 idFieldName Ljava/lang/String;
FIELD field_25200 typeIdentification Ljava/util/function/Function;
FIELD field_25201 elementSerializer Lcom/mojang/datafixers/util/Pair;
METHOD <init> (Lnet/minecraft/class_2378;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Pair;)V
ARG 2 rootFieldName
ARG 3 idFieldName
ARG 4 typeIdentification