diff --git a/mappings/net/minecraft/block/AbstractCauldronBlock.mapping b/mappings/net/minecraft/block/AbstractCauldronBlock.mapping index 8b25da13d2..5ee74a5395 100644 --- a/mappings/net/minecraft/block/AbstractCauldronBlock.mapping +++ b/mappings/net/minecraft/block/AbstractCauldronBlock.mapping @@ -1,10 +1,24 @@ CLASS net/minecraft/class_2275 net/minecraft/block/AbstractCauldronBlock + COMMENT The base class for all cauldrons. + COMMENT + COMMENT
Interaction with cauldrons is controlled by {@linkplain CauldronBehavior
+ COMMENT cauldron behaviors}.
+ COMMENT
+ COMMENT @see CauldronBlock empty cauldrons
+ COMMENT @see LavaCauldronBlock cauldrons filled with lava
+ COMMENT @see LeveledCauldronBlock cauldrons with varying levels of contents
+ COMMENT @see PowderSnowCauldronBlock cauldrons filled with powder snow
FIELD field_10746 OUTLINE_SHAPE Lnet/minecraft/class_265;
FIELD field_10747 RAYCAST_SHAPE Lnet/minecraft/class_265;
FIELD field_27084 behaviorMap Ljava/util/Map;
METHOD The behavior map must match {@link CauldronBehavior#createMap} by providing
+ COMMENT a nonnull value for all items.
ARG 1 settings
ARG 2 behaviorMap
+ COMMENT the map containing cauldron behaviors for each item
METHOD method_31615 getFluidHeight (Lnet/minecraft/class_2680;)D
ARG 1 state
METHOD method_31616 isEntityTouchingFluid (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;)Z
@@ -12,11 +26,23 @@ CLASS net/minecraft/class_2275 net/minecraft/block/AbstractCauldronBlock
ARG 2 pos
ARG 3 entity
METHOD method_32764 fillFromDripstone (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_3611;)V
+ COMMENT Fills a cauldron with one level of the specified fluid if possible.
ARG 1 state
+ COMMENT the current cauldron state
ARG 2 world
+ COMMENT the world where the cauldron is located
ARG 3 pos
+ COMMENT the cauldron's position
ARG 4 fluid
+ COMMENT the fluid to fill the cauldron with
METHOD method_32765 canBeFilledByDripstone (Lnet/minecraft/class_3611;)Z
+ COMMENT Checks if this cauldron block can be filled with the specified fluid by dripstone.
+ COMMENT
+ COMMENT @return {@code true} if this block can be filled, {@code false} otherwise
ARG 1 fluid
+ COMMENT the fluid to check
METHOD method_32766 isFull (Lnet/minecraft/class_2680;)Z
+ COMMENT {@return {@code true} if the specified cauldron state is completely full,
+ COMMENT {@code false} otherwise}
ARG 1 state
+ COMMENT the cauldron state to check
diff --git a/mappings/net/minecraft/block/CauldronBlock.mapping b/mappings/net/minecraft/block/CauldronBlock.mapping
index e84a999a4f..54175ecc8a 100644
--- a/mappings/net/minecraft/block/CauldronBlock.mapping
+++ b/mappings/net/minecraft/block/CauldronBlock.mapping
@@ -1,4 +1,5 @@
CLASS net/minecraft/class_5546 net/minecraft/block/CauldronBlock
+ COMMENT An empty cauldron block.
FIELD field_34027 FILL_WITH_RAIN_CHANCE F
FIELD field_34028 FILL_WITH_SNOW_CHANCE F
METHOD method_31636 canFillWithPrecipitation (Lnet/minecraft/class_1937;Lnet/minecraft/class_1959$class_1963;)Z
diff --git a/mappings/net/minecraft/block/LavaCauldronBlock.mapping b/mappings/net/minecraft/block/LavaCauldronBlock.mapping
index a7b29d1787..7cad99c23f 100644
--- a/mappings/net/minecraft/block/LavaCauldronBlock.mapping
+++ b/mappings/net/minecraft/block/LavaCauldronBlock.mapping
@@ -1 +1,2 @@
CLASS net/minecraft/class_5553 net/minecraft/block/LavaCauldronBlock
+ COMMENT A cauldron filled with lava.
diff --git a/mappings/net/minecraft/block/LeveledCauldronBlock.mapping b/mappings/net/minecraft/block/LeveledCauldronBlock.mapping
index d78c4f8888..94fe650de9 100644
--- a/mappings/net/minecraft/block/LeveledCauldronBlock.mapping
+++ b/mappings/net/minecraft/block/LeveledCauldronBlock.mapping
@@ -1,12 +1,30 @@
CLASS net/minecraft/class_5556 net/minecraft/block/LeveledCauldronBlock
+ COMMENT A cauldron with a varying level of contents.
+ COMMENT This includes water and powder snow cauldrons.
+ COMMENT
+ COMMENT The amount of stored substance is controlled with the {@link #LEVEL}
+ COMMENT block state property which can take values between {@value #MIN_LEVEL} and
+ COMMENT {@value #MAX_LEVEL} (inclusive).
FIELD field_27206 LEVEL Lnet/minecraft/class_2758;
FIELD field_27880 RAIN_PREDICATE Ljava/util/function/Predicate;
+ COMMENT A precipitation predicate that allows {@link Biome.Precipitation#RAIN}.
FIELD field_27881 SNOW_PREDICATE Ljava/util/function/Predicate;
+ COMMENT A precipitation predicate that allows {@link Biome.Precipitation#SNOW}.
FIELD field_27882 precipitationPredicate Ljava/util/function/Predicate;
+ FIELD field_31107 MIN_LEVEL I
+ FIELD field_31108 MAX_LEVEL I
+ FIELD field_31109 BASE_FLUID_HEIGHT I
+ FIELD field_31110 FLUID_HEIGHT_PER_LEVEL D
METHOD To register new cauldron behaviors, you can add them to the corresponding
+ COMMENT maps based on the cauldron type.
+ COMMENT The default return value in the map is a cauldron behavior
+ COMMENT that returns {@link ActionResult#PASS} for all items.
+ COMMENT
+ COMMENT @return the created map
METHOD method_32207 fillCauldron (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;Lnet/minecraft/class_2680;Lnet/minecraft/class_3414;)Lnet/minecraft/class_1269;
+ COMMENT Fills a cauldron from a bucket stack.
+ COMMENT
+ COMMENT The filled bucket stack will be replaced by an empty bucket in the player's
+ COMMENT inventory.
+ COMMENT
+ COMMENT @return a {@linkplain ActionResult#isAccepted successful} action result
ARG 0 world
+ COMMENT the world where the cauldron is located
ARG 1 pos
+ COMMENT the cauldron's position
ARG 2 player
+ COMMENT the interacting player
ARG 3 hand
+ COMMENT the hand interacting with the cauldron
ARG 4 stack
+ COMMENT the filled bucket stack in the player's hand
ARG 5 state
+ COMMENT the filled cauldron state
ARG 6 soundEvent
+ COMMENT the sound produced by filling
METHOD method_32208 (Lnet/minecraft/class_2680;)Z
ARG 0 state
METHOD method_32209 (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269;
@@ -35,18 +124,31 @@ CLASS net/minecraft/class_5620 net/minecraft/block/cauldron/CauldronBehavior
ARG 4 hand
ARG 5 stack
METHOD method_32210 emptyCauldron (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Ljava/util/function/Predicate;Lnet/minecraft/class_3414;)Lnet/minecraft/class_1269;
+ COMMENT Empties a cauldron if it's full.
+ COMMENT
+ COMMENT @return a {@linkplain ActionResult#isAccepted successful} action result if emptied, {@link ActionResult#PASS} otherwise
ARG 0 state
+ COMMENT the cauldron block state
ARG 1 world
+ COMMENT the world where the cauldron is located
ARG 2 pos
+ COMMENT the cauldron's position
ARG 3 player
+ COMMENT the interacting player
ARG 4 hand
+ COMMENT the hand interacting with the cauldron
ARG 5 stack
+ COMMENT the stack in the player's hand
ARG 6 output
- ARG 7 predicate
+ COMMENT the item stack that replaces the interaction stack when the cauldron is emptied
+ ARG 7 fullPredicate
+ COMMENT a predicate used to check if the cauldron can be emptied into the output stack
ARG 8 soundEvent
+ COMMENT the sound produced by emptying
METHOD method_32211 (Lit/unimi/dsi/fastutil/objects/Object2ObjectOpenHashMap;)V
ARG 0 map
METHOD method_32212 registerBehavior ()V
+ COMMENT Registers the vanilla cauldron behaviors.
METHOD method_32213 (Lnet/minecraft/class_2680;)Z
ARG 0 state
METHOD method_32214 (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269;
@@ -136,4 +238,5 @@ CLASS net/minecraft/class_5620 net/minecraft/block/cauldron/CauldronBehavior
ARG 4 hand
ARG 5 stack
METHOD method_34850 registerBucketBehavior (Ljava/util/Map;)V
+ COMMENT Registers the behavior for filled buckets in the specified behavior map.
ARG 0 behavior
diff --git a/src/packageDocs/java/net/minecraft/block/cauldron/package-info.java b/src/packageDocs/java/net/minecraft/block/cauldron/package-info.java
new file mode 100644
index 0000000000..bc953ac2f0
--- /dev/null
+++ b/src/packageDocs/java/net/minecraft/block/cauldron/package-info.java
@@ -0,0 +1,11 @@
+/*
+ * This file is free for everyone to use under the Creative Commons Zero license.
+ */
+
+/**
+ * Provides the {@linkplain net.minecraft.block.cauldron.CauldronBehavior cauldron behavior} system,
+ * which determines what happens when a player interacts with a cauldron.
+ *
+ * @see net.minecraft.block.AbstractCauldronBlock
+ */
+package net.minecraft.block.cauldron;
+ COMMENT
+ COMMENT
+ COMMENT
+ COMMENT Type
+ COMMENT Block
+ COMMENT Behavior map
+ COMMENT
+ COMMENT
+ COMMENT Empty
+ COMMENT {@link net.minecraft.block.Blocks#CAULDRON minecraft:cauldron}
+ COMMENT {@link #EMPTY_CAULDRON_BEHAVIOR}
+ COMMENT
+ COMMENT
+ COMMENT Water
+ COMMENT {@link net.minecraft.block.Blocks#WATER_CAULDRON minecraft:water_cauldron}
+ COMMENT {@link #WATER_CAULDRON_BEHAVIOR}
+ COMMENT
+ COMMENT
+ COMMENT Lava
+ COMMENT {@link net.minecraft.block.Blocks#LAVA_CAULDRON minecraft:lava_cauldron}
+ COMMENT {@link #LAVA_CAULDRON_BEHAVIOR}
+ COMMENT
+ COMMENT
+ COMMENT
+ COMMENT Powder snow
+ COMMENT {@link net.minecraft.block.Blocks#POWDER_SNOW_CAULDRON minecraft:powder_snow_cauldron}
+ COMMENT {@link #POWDER_SNOW_CAULDRON_BEHAVIOR}
+ COMMENT