From 3d995714786f42a4209e5f9e8f818fd0b9bb917e Mon Sep 17 00:00:00 2001 From: Juuxel <6596629+Juuxel@users.noreply.github.com> Date: Sun, 9 Feb 2020 21:05:03 +0200 Subject: [PATCH] Random worldgen things (#1105) * Renamed StateProvider -> BlockStateProvider It provides block states, and is registered in Registry.BLOCK_STATE_PROVIDER_TYPE. Also closes #1037. * RuleTest -> RuleTestType, AbstractRuleTest -> RuleTest Closes #1102. * RuleTest docs, TreeDecorator mappings * Remove empty comment --- .../structure/rule/AbstractRuleTest.mapping | 4 ---- .../minecraft/structure/rule/RuleTest.mapping | 14 ++++++++++---- .../structure/rule/RuleTestType.mapping | 4 ++++ .../world/gen/decorator/TreeDecorator.mapping | 16 ++++++++++++++++ .../gen/stateprovider/BlockStateProvider.mapping | 13 +++++++------ ...pe.mapping => BlockStateProviderType.mapping} | 2 +- ...ng => ForestFlowerBlockStateProvider.mapping} | 2 +- .../PillarBlockStateProvider.mapping | 6 ++++++ ...ng => PlainsFlowerBlockStateProvider.mapping} | 2 +- ....mapping => SimpleBlockStateProvider.mapping} | 2 +- .../gen/stateprovider/StateProvider.mapping | 7 ------- ...apping => WeightedBlockStateProvider.mapping} | 2 +- 12 files changed, 48 insertions(+), 26 deletions(-) delete mode 100644 mappings/net/minecraft/structure/rule/AbstractRuleTest.mapping create mode 100644 mappings/net/minecraft/structure/rule/RuleTestType.mapping rename mappings/net/minecraft/world/gen/stateprovider/{StateProviderType.mapping => BlockStateProviderType.mapping} (94%) rename mappings/net/minecraft/world/gen/stateprovider/{ForestFlowerStateProvider.mapping => ForestFlowerBlockStateProvider.mapping} (84%) create mode 100644 mappings/net/minecraft/world/gen/stateprovider/PillarBlockStateProvider.mapping rename mappings/net/minecraft/world/gen/stateprovider/{PlainsFlowerStateProvider.mapping => PlainsFlowerBlockStateProvider.mapping} (87%) rename mappings/net/minecraft/world/gen/stateprovider/{SimpleStateProvider.mapping => SimpleBlockStateProvider.mapping} (89%) delete mode 100644 mappings/net/minecraft/world/gen/stateprovider/StateProvider.mapping rename mappings/net/minecraft/world/gen/stateprovider/{WeightedStateProvider.mapping => WeightedBlockStateProvider.mapping} (92%) diff --git a/mappings/net/minecraft/structure/rule/AbstractRuleTest.mapping b/mappings/net/minecraft/structure/rule/AbstractRuleTest.mapping deleted file mode 100644 index 3f838f89c8..0000000000 --- a/mappings/net/minecraft/structure/rule/AbstractRuleTest.mapping +++ /dev/null @@ -1,4 +0,0 @@ -CLASS net/minecraft/class_3825 net/minecraft/structure/rule/AbstractRuleTest - METHOD method_16766 getRuleTest ()Lnet/minecraft/class_3827; - METHOD method_16768 test (Lnet/minecraft/class_2680;Ljava/util/Random;)Z - METHOD method_16769 serialize (Lcom/mojang/datafixers/types/DynamicOps;)Lcom/mojang/datafixers/Dynamic; diff --git a/mappings/net/minecraft/structure/rule/RuleTest.mapping b/mappings/net/minecraft/structure/rule/RuleTest.mapping index df6bf2e59f..cb6ccc90a3 100644 --- a/mappings/net/minecraft/structure/rule/RuleTest.mapping +++ b/mappings/net/minecraft/structure/rule/RuleTest.mapping @@ -1,4 +1,10 @@ -CLASS net/minecraft/class_3827 net/minecraft/structure/rule/RuleTest - METHOD method_16821 register (Ljava/lang/String;Lnet/minecraft/class_3827;)Lnet/minecraft/class_3827; - ARG 0 id - ARG 1 test +CLASS net/minecraft/class_3825 net/minecraft/structure/rule/RuleTest + COMMENT Rule tests are used in structure generation to check if a block state matches some condition. + METHOD method_16766 getType ()Lnet/minecraft/class_3827; + METHOD method_16767 serializeWithId (Lcom/mojang/datafixers/types/DynamicOps;)Lcom/mojang/datafixers/Dynamic; + ARG 1 ops + METHOD method_16768 test (Lnet/minecraft/class_2680;Ljava/util/Random;)Z + ARG 1 state + ARG 2 random + METHOD method_16769 serialize (Lcom/mojang/datafixers/types/DynamicOps;)Lcom/mojang/datafixers/Dynamic; + ARG 1 ops diff --git a/mappings/net/minecraft/structure/rule/RuleTestType.mapping b/mappings/net/minecraft/structure/rule/RuleTestType.mapping new file mode 100644 index 0000000000..36136fa7f4 --- /dev/null +++ b/mappings/net/minecraft/structure/rule/RuleTestType.mapping @@ -0,0 +1,4 @@ +CLASS net/minecraft/class_3827 net/minecraft/structure/rule/RuleTestType + METHOD method_16821 register (Ljava/lang/String;Lnet/minecraft/class_3827;)Lnet/minecraft/class_3827; + ARG 0 id + ARG 1 test diff --git a/mappings/net/minecraft/world/gen/decorator/TreeDecorator.mapping b/mappings/net/minecraft/world/gen/decorator/TreeDecorator.mapping index 68558e9a95..5bdd7fc9f5 100644 --- a/mappings/net/minecraft/world/gen/decorator/TreeDecorator.mapping +++ b/mappings/net/minecraft/world/gen/decorator/TreeDecorator.mapping @@ -1,5 +1,21 @@ CLASS net/minecraft/class_4662 net/minecraft/world/gen/decorator/TreeDecorator + COMMENT Tree decorators can add additional blocks to trees, such as vines or beehives. + FIELD field_21319 type Lnet/minecraft/class_4663; + METHOD (Lnet/minecraft/class_4663;)V + ARG 1 type METHOD method_23469 generate (Lnet/minecraft/class_1936;Ljava/util/Random;Ljava/util/List;Ljava/util/List;Ljava/util/Set;Lnet/minecraft/class_3341;)V ARG 1 world ARG 2 random + ARG 3 logPositions + ARG 4 leavesPositions ARG 6 box + METHOD method_23470 setBlockStateAndEncompassPosition (Lnet/minecraft/class_1945;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Ljava/util/Set;Lnet/minecraft/class_3341;)V + ARG 1 world + ARG 2 pos + ARG 3 state + ARG 5 box + METHOD method_23471 placeVine (Lnet/minecraft/class_1945;Lnet/minecraft/class_2338;Lnet/minecraft/class_2746;Ljava/util/Set;Lnet/minecraft/class_3341;)V + ARG 1 world + ARG 2 pos + ARG 3 directionProperty + ARG 5 box diff --git a/mappings/net/minecraft/world/gen/stateprovider/BlockStateProvider.mapping b/mappings/net/minecraft/world/gen/stateprovider/BlockStateProvider.mapping index 7190e62691..df5bb97074 100644 --- a/mappings/net/minecraft/world/gen/stateprovider/BlockStateProvider.mapping +++ b/mappings/net/minecraft/world/gen/stateprovider/BlockStateProvider.mapping @@ -1,6 +1,7 @@ -CLASS net/minecraft/class_4655 net/minecraft/world/gen/stateprovider/BlockStateProvider - FIELD field_21313 block Lnet/minecraft/class_2248; - METHOD (Lcom/mojang/datafixers/Dynamic;)V - ARG 1 configDeserializer - METHOD (Lnet/minecraft/class_2248;)V - ARG 1 block +CLASS net/minecraft/class_4651 net/minecraft/world/gen/stateprovider/BlockStateProvider + FIELD field_21304 stateProvider Lnet/minecraft/class_4652; + METHOD (Lnet/minecraft/class_4652;)V + ARG 1 stateProvider + METHOD method_23455 getBlockState (Ljava/util/Random;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; + ARG 1 random + ARG 2 pos diff --git a/mappings/net/minecraft/world/gen/stateprovider/StateProviderType.mapping b/mappings/net/minecraft/world/gen/stateprovider/BlockStateProviderType.mapping similarity index 94% rename from mappings/net/minecraft/world/gen/stateprovider/StateProviderType.mapping rename to mappings/net/minecraft/world/gen/stateprovider/BlockStateProviderType.mapping index 196a36ea83..3f3b3dce07 100644 --- a/mappings/net/minecraft/world/gen/stateprovider/StateProviderType.mapping +++ b/mappings/net/minecraft/world/gen/stateprovider/BlockStateProviderType.mapping @@ -1,4 +1,4 @@ -CLASS net/minecraft/class_4652 net/minecraft/world/gen/stateprovider/StateProviderType +CLASS net/minecraft/class_4652 net/minecraft/world/gen/stateprovider/BlockStateProviderType FIELD field_21309 configDeserializer Ljava/util/function/Function; METHOD (Ljava/util/function/Function;)V ARG 1 configDeserializer diff --git a/mappings/net/minecraft/world/gen/stateprovider/ForestFlowerStateProvider.mapping b/mappings/net/minecraft/world/gen/stateprovider/ForestFlowerBlockStateProvider.mapping similarity index 84% rename from mappings/net/minecraft/world/gen/stateprovider/ForestFlowerStateProvider.mapping rename to mappings/net/minecraft/world/gen/stateprovider/ForestFlowerBlockStateProvider.mapping index 81ea1ab258..77c0463d6e 100644 --- a/mappings/net/minecraft/world/gen/stateprovider/ForestFlowerStateProvider.mapping +++ b/mappings/net/minecraft/world/gen/stateprovider/ForestFlowerBlockStateProvider.mapping @@ -1,4 +1,4 @@ -CLASS net/minecraft/class_4653 net/minecraft/world/gen/stateprovider/ForestFlowerStateProvider +CLASS net/minecraft/class_4653 net/minecraft/world/gen/stateprovider/ForestFlowerBlockStateProvider FIELD field_21310 flowers [Lnet/minecraft/class_2680; METHOD (Lcom/mojang/datafixers/Dynamic;)V ARG 1 configDeserializer diff --git a/mappings/net/minecraft/world/gen/stateprovider/PillarBlockStateProvider.mapping b/mappings/net/minecraft/world/gen/stateprovider/PillarBlockStateProvider.mapping new file mode 100644 index 0000000000..4cf63df163 --- /dev/null +++ b/mappings/net/minecraft/world/gen/stateprovider/PillarBlockStateProvider.mapping @@ -0,0 +1,6 @@ +CLASS net/minecraft/class_4655 net/minecraft/world/gen/stateprovider/PillarBlockStateProvider + FIELD field_21313 block Lnet/minecraft/class_2248; + METHOD (Lcom/mojang/datafixers/Dynamic;)V + ARG 1 configDeserializer + METHOD (Lnet/minecraft/class_2248;)V + ARG 1 block diff --git a/mappings/net/minecraft/world/gen/stateprovider/PlainsFlowerStateProvider.mapping b/mappings/net/minecraft/world/gen/stateprovider/PlainsFlowerBlockStateProvider.mapping similarity index 87% rename from mappings/net/minecraft/world/gen/stateprovider/PlainsFlowerStateProvider.mapping rename to mappings/net/minecraft/world/gen/stateprovider/PlainsFlowerBlockStateProvider.mapping index 81b6a67679..3bd843c3e7 100644 --- a/mappings/net/minecraft/world/gen/stateprovider/PlainsFlowerStateProvider.mapping +++ b/mappings/net/minecraft/world/gen/stateprovider/PlainsFlowerBlockStateProvider.mapping @@ -1,4 +1,4 @@ -CLASS net/minecraft/class_4654 net/minecraft/world/gen/stateprovider/PlainsFlowerStateProvider +CLASS net/minecraft/class_4654 net/minecraft/world/gen/stateprovider/PlainsFlowerBlockStateProvider FIELD field_21311 tulips [Lnet/minecraft/class_2680; FIELD field_21312 flowers [Lnet/minecraft/class_2680; METHOD (Lcom/mojang/datafixers/Dynamic;)V diff --git a/mappings/net/minecraft/world/gen/stateprovider/SimpleStateProvider.mapping b/mappings/net/minecraft/world/gen/stateprovider/SimpleBlockStateProvider.mapping similarity index 89% rename from mappings/net/minecraft/world/gen/stateprovider/SimpleStateProvider.mapping rename to mappings/net/minecraft/world/gen/stateprovider/SimpleBlockStateProvider.mapping index b144edfaad..ed83da3b4e 100644 --- a/mappings/net/minecraft/world/gen/stateprovider/SimpleStateProvider.mapping +++ b/mappings/net/minecraft/world/gen/stateprovider/SimpleBlockStateProvider.mapping @@ -1,4 +1,4 @@ -CLASS net/minecraft/class_4656 net/minecraft/world/gen/stateprovider/SimpleStateProvider +CLASS net/minecraft/class_4656 net/minecraft/world/gen/stateprovider/SimpleBlockStateProvider FIELD field_21314 state Lnet/minecraft/class_2680; METHOD (Lcom/mojang/datafixers/Dynamic;)V ARG 1 configDeserializer diff --git a/mappings/net/minecraft/world/gen/stateprovider/StateProvider.mapping b/mappings/net/minecraft/world/gen/stateprovider/StateProvider.mapping deleted file mode 100644 index 2e040edd38..0000000000 --- a/mappings/net/minecraft/world/gen/stateprovider/StateProvider.mapping +++ /dev/null @@ -1,7 +0,0 @@ -CLASS net/minecraft/class_4651 net/minecraft/world/gen/stateprovider/StateProvider - FIELD field_21304 stateProvider Lnet/minecraft/class_4652; - METHOD (Lnet/minecraft/class_4652;)V - ARG 1 stateProvider - METHOD method_23455 getBlockState (Ljava/util/Random;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; - ARG 1 random - ARG 2 pos diff --git a/mappings/net/minecraft/world/gen/stateprovider/WeightedStateProvider.mapping b/mappings/net/minecraft/world/gen/stateprovider/WeightedBlockStateProvider.mapping similarity index 92% rename from mappings/net/minecraft/world/gen/stateprovider/WeightedStateProvider.mapping rename to mappings/net/minecraft/world/gen/stateprovider/WeightedBlockStateProvider.mapping index 6fb9bb97c0..705624f109 100644 --- a/mappings/net/minecraft/world/gen/stateprovider/WeightedStateProvider.mapping +++ b/mappings/net/minecraft/world/gen/stateprovider/WeightedBlockStateProvider.mapping @@ -1,4 +1,4 @@ -CLASS net/minecraft/class_4657 net/minecraft/world/gen/stateprovider/WeightedStateProvider +CLASS net/minecraft/class_4657 net/minecraft/world/gen/stateprovider/WeightedBlockStateProvider FIELD field_21315 states Lnet/minecraft/class_4131; METHOD (Lcom/mojang/datafixers/Dynamic;)V ARG 1 configDeserializer