Package net.minecraft.block.cauldron
Interface CauldronBehavior
public interface CauldronBehavior
Cauldron behaviors control what happens when a player interacts with
cauldrons using a specific item.
To register new cauldron behaviors, you can add them to the corresponding maps based on the cauldron type.
Type | Block | Behavior map |
---|---|---|
Empty | minecraft:cauldron |
EMPTY_CAULDRON_BEHAVIOR |
Water | minecraft:water_cauldron |
WATER_CAULDRON_BEHAVIOR |
Lava | minecraft:lava_cauldron |
LAVA_CAULDRON_BEHAVIOR |
Powder snow | minecraft:powder_snow_cauldron |
POWDER_SNOW_CAULDRON_BEHAVIOR |
- Mappings:
Namespace Name named net/minecraft/block/cauldron/CauldronBehavior
intermediary net/minecraft/class_5620
official kj
-
Nested Class Summary
-
Field Summary
Modifier and TypeFieldDescriptionstatic final Map
<String, CauldronBehavior.CauldronBehaviorMap> static final CauldronBehavior
A behavior that cleans banners with patterns.static final CauldronBehavior
A behavior that cleans dyeable items.static final CauldronBehavior
A behavior that cleans dyed shulker boxes.static final com.mojang.serialization.Codec
<CauldronBehavior.CauldronBehaviorMap> static final CauldronBehavior.CauldronBehaviorMap
The cauldron behaviors for empty cauldrons.static final CauldronBehavior
A behavior that fills cauldrons with lava.static final CauldronBehavior
A behavior that fills cauldrons with powder snow.static final CauldronBehavior
A behavior that fills cauldrons with water.static final CauldronBehavior.CauldronBehaviorMap
The cauldron behaviors for lava cauldrons.static final CauldronBehavior.CauldronBehaviorMap
The cauldron behaviors for powder snow cauldrons.static final CauldronBehavior.CauldronBehaviorMap
The cauldron behaviors for water cauldrons. -
Method Summary
Modifier and TypeMethodDescriptionCreates a mutable map from items to their corresponding cauldron behaviors.static ItemActionResult
emptyCauldron
(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, ItemStack stack, ItemStack output, Predicate<BlockState> fullPredicate, SoundEvent soundEvent) Empties a cauldron if it's full.static ItemActionResult
fillCauldron
(World world, BlockPos pos, PlayerEntity player, Hand hand, ItemStack stack, BlockState state, SoundEvent soundEvent) Fills a cauldron from a bucket stack.interact
(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, ItemStack stack) Called when a player interacts with a cauldron.static void
Registers the vanilla cauldron behaviors.static void
registerBucketBehavior
(Map<Item, CauldronBehavior> behavior) Registers the behavior for filled buckets in the specified behavior map.
-
Field Details
-
BEHAVIOR_MAPS
- Mappings:
Namespace Name Mixin selector named BEHAVIOR_MAPS
Lnet/minecraft/block/cauldron/CauldronBehavior;BEHAVIOR_MAPS:Ljava/util/Map;
intermediary field_46589
Lnet/minecraft/class_5620;field_46589:Ljava/util/Map;
official a
Lkj;a:Ljava/util/Map;
-
CODEC
- Mappings:
Namespace Name Mixin selector named CODEC
Lnet/minecraft/block/cauldron/CauldronBehavior;CODEC:Lcom/mojang/serialization/Codec;
intermediary field_46590
Lnet/minecraft/class_5620;field_46590:Lcom/mojang/serialization/Codec;
official b
Lkj;b:Lcom/mojang/serialization/Codec;
-
EMPTY_CAULDRON_BEHAVIOR
The cauldron behaviors for empty cauldrons.- See Also:
- Mappings:
Namespace Name Mixin selector named EMPTY_CAULDRON_BEHAVIOR
Lnet/minecraft/block/cauldron/CauldronBehavior;EMPTY_CAULDRON_BEHAVIOR:Lnet/minecraft/block/cauldron/CauldronBehavior$CauldronBehaviorMap;
intermediary field_27775
Lnet/minecraft/class_5620;field_27775:Lnet/minecraft/class_5620$class_8821;
official c
Lkj;c:Lkj$a;
-
WATER_CAULDRON_BEHAVIOR
The cauldron behaviors for water cauldrons.- See Also:
- Mappings:
Namespace Name Mixin selector named WATER_CAULDRON_BEHAVIOR
Lnet/minecraft/block/cauldron/CauldronBehavior;WATER_CAULDRON_BEHAVIOR:Lnet/minecraft/block/cauldron/CauldronBehavior$CauldronBehaviorMap;
intermediary field_27776
Lnet/minecraft/class_5620;field_27776:Lnet/minecraft/class_5620$class_8821;
official d
Lkj;d:Lkj$a;
-
LAVA_CAULDRON_BEHAVIOR
The cauldron behaviors for lava cauldrons.- See Also:
- Mappings:
Namespace Name Mixin selector named LAVA_CAULDRON_BEHAVIOR
Lnet/minecraft/block/cauldron/CauldronBehavior;LAVA_CAULDRON_BEHAVIOR:Lnet/minecraft/block/cauldron/CauldronBehavior$CauldronBehaviorMap;
intermediary field_27777
Lnet/minecraft/class_5620;field_27777:Lnet/minecraft/class_5620$class_8821;
official e
Lkj;e:Lkj$a;
-
POWDER_SNOW_CAULDRON_BEHAVIOR
The cauldron behaviors for powder snow cauldrons.- See Also:
- Mappings:
Namespace Name Mixin selector named POWDER_SNOW_CAULDRON_BEHAVIOR
Lnet/minecraft/block/cauldron/CauldronBehavior;POWDER_SNOW_CAULDRON_BEHAVIOR:Lnet/minecraft/block/cauldron/CauldronBehavior$CauldronBehaviorMap;
intermediary field_28011
Lnet/minecraft/class_5620;field_28011:Lnet/minecraft/class_5620$class_8821;
official f
Lkj;f:Lkj$a;
-
FILL_WITH_WATER
A behavior that fills cauldrons with water.- See Also:
- Mappings:
Namespace Name Mixin selector named FILL_WITH_WATER
Lnet/minecraft/block/cauldron/CauldronBehavior;FILL_WITH_WATER:Lnet/minecraft/block/cauldron/CauldronBehavior;
intermediary field_27778
Lnet/minecraft/class_5620;field_27778:Lnet/minecraft/class_5620;
official g
Lkj;g:Lkj;
-
FILL_WITH_LAVA
A behavior that fills cauldrons with lava.- See Also:
- Mappings:
Namespace Name Mixin selector named FILL_WITH_LAVA
Lnet/minecraft/block/cauldron/CauldronBehavior;FILL_WITH_LAVA:Lnet/minecraft/block/cauldron/CauldronBehavior;
intermediary field_27779
Lnet/minecraft/class_5620;field_27779:Lnet/minecraft/class_5620;
official h
Lkj;h:Lkj;
-
FILL_WITH_POWDER_SNOW
A behavior that fills cauldrons with powder snow.- See Also:
- Mappings:
Namespace Name Mixin selector named FILL_WITH_POWDER_SNOW
Lnet/minecraft/block/cauldron/CauldronBehavior;FILL_WITH_POWDER_SNOW:Lnet/minecraft/block/cauldron/CauldronBehavior;
intermediary field_28012
Lnet/minecraft/class_5620;field_28012:Lnet/minecraft/class_5620;
official i
Lkj;i:Lkj;
-
CLEAN_SHULKER_BOX
A behavior that cleans dyed shulker boxes.- Mappings:
Namespace Name Mixin selector named CLEAN_SHULKER_BOX
Lnet/minecraft/block/cauldron/CauldronBehavior;CLEAN_SHULKER_BOX:Lnet/minecraft/block/cauldron/CauldronBehavior;
intermediary field_27780
Lnet/minecraft/class_5620;field_27780:Lnet/minecraft/class_5620;
official j
Lkj;j:Lkj;
-
CLEAN_BANNER
A behavior that cleans banners with patterns.- Mappings:
Namespace Name Mixin selector named CLEAN_BANNER
Lnet/minecraft/block/cauldron/CauldronBehavior;CLEAN_BANNER:Lnet/minecraft/block/cauldron/CauldronBehavior;
intermediary field_27781
Lnet/minecraft/class_5620;field_27781:Lnet/minecraft/class_5620;
official k
Lkj;k:Lkj;
-
CLEAN_DYEABLE_ITEM
A behavior that cleans dyeable items.- Mappings:
Namespace Name Mixin selector named CLEAN_DYEABLE_ITEM
Lnet/minecraft/block/cauldron/CauldronBehavior;CLEAN_DYEABLE_ITEM:Lnet/minecraft/block/cauldron/CauldronBehavior;
intermediary field_27782
Lnet/minecraft/class_5620;field_27782:Lnet/minecraft/class_5620;
official l
Lkj;l:Lkj;
-
-
Method Details
-
createMap
Creates a mutable map from items to their corresponding cauldron behaviors.The default return value in the map is a cauldron behavior that returns
ItemActionResult.PASS_TO_DEFAULT_BLOCK_INTERACTION
for all items.- Returns:
- the created map
- Mappings:
Namespace Name Mixin selector named createMap
Lnet/minecraft/block/cauldron/CauldronBehavior;createMap(Ljava/lang/String;)Lnet/minecraft/block/cauldron/CauldronBehavior$CauldronBehaviorMap;
intermediary method_32206
Lnet/minecraft/class_5620;method_32206(Ljava/lang/String;)Lnet/minecraft/class_5620$class_8821;
official a
Lkj;a(Ljava/lang/String;)Lkj$a;
-
interact
ItemActionResult interact(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, ItemStack stack) Called when a player interacts with a cauldron.- Parameters:
state
- the current cauldron block stateworld
- the world where the cauldron is locatedpos
- the cauldron's positionplayer
- the interacting playerhand
- the hand interacting with the cauldronstack
- the stack in the player's hand- Returns:
- a successful action result if this behavior succeeds,
ItemActionResult.PASS_TO_DEFAULT_BLOCK_INTERACTION
otherwise - Mappings:
Namespace Name Mixin selector named interact
Lnet/minecraft/block/cauldron/CauldronBehavior;interact(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/util/Hand;Lnet/minecraft/item/ItemStack;)Lnet/minecraft/util/ItemActionResult;
intermediary interact
Lnet/minecraft/class_5620;interact(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_9062;
official interact
Lkj;interact(Ldta;Ldcu;Ljd;Lcmv;Lbqp;Lcuo;)Lbqs;
-
registerBehavior
static void registerBehavior()Registers the vanilla cauldron behaviors.- Mappings:
Namespace Name Mixin selector named registerBehavior
Lnet/minecraft/block/cauldron/CauldronBehavior;registerBehavior()V
intermediary method_32212
Lnet/minecraft/class_5620;method_32212()V
official a
Lkj;a()V
-
registerBucketBehavior
Registers the behavior for filled buckets in the specified behavior map.- Mappings:
Namespace Name Mixin selector named registerBucketBehavior
Lnet/minecraft/block/cauldron/CauldronBehavior;registerBucketBehavior(Ljava/util/Map;)V
intermediary method_34850
Lnet/minecraft/class_5620;method_34850(Ljava/util/Map;)V
official a
Lkj;a(Ljava/util/Map;)V
-
emptyCauldron
static ItemActionResult emptyCauldron(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, ItemStack stack, ItemStack output, Predicate<BlockState> fullPredicate, SoundEvent soundEvent) Empties a cauldron if it's full.- Parameters:
state
- the cauldron block stateworld
- the world where the cauldron is locatedpos
- the cauldron's positionplayer
- the interacting playerhand
- the hand interacting with the cauldronstack
- the stack in the player's handoutput
- the item stack that replaces the interaction stack when the cauldron is emptiedfullPredicate
- a predicate used to check if the cauldron can be emptied into the output stacksoundEvent
- the sound produced by emptying- Returns:
- a successful action result if emptied,
ItemActionResult.PASS_TO_DEFAULT_BLOCK_INTERACTION
otherwise - Mappings:
Namespace Name Mixin selector named emptyCauldron
Lnet/minecraft/block/cauldron/CauldronBehavior;emptyCauldron(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/util/Hand;Lnet/minecraft/item/ItemStack;Lnet/minecraft/item/ItemStack;Ljava/util/function/Predicate;Lnet/minecraft/sound/SoundEvent;)Lnet/minecraft/util/ItemActionResult;
intermediary method_32210
Lnet/minecraft/class_5620;method_32210(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_9062;
official a
Lkj;a(Ldta;Ldcu;Ljd;Lcmv;Lbqp;Lcuo;Lcuo;Ljava/util/function/Predicate;Lavn;)Lbqs;
-
fillCauldron
static ItemActionResult fillCauldron(World world, BlockPos pos, PlayerEntity player, Hand hand, ItemStack stack, BlockState state, SoundEvent soundEvent) Fills a cauldron from a bucket stack.The filled bucket stack will be replaced by an empty bucket in the player's inventory.
- Parameters:
world
- the world where the cauldron is locatedpos
- the cauldron's positionplayer
- the interacting playerhand
- the hand interacting with the cauldronstack
- the filled bucket stack in the player's handstate
- the filled cauldron statesoundEvent
- the sound produced by filling- Returns:
- a successful action result
- Mappings:
Namespace Name Mixin selector named fillCauldron
Lnet/minecraft/block/cauldron/CauldronBehavior;fillCauldron(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/util/Hand;Lnet/minecraft/item/ItemStack;Lnet/minecraft/block/BlockState;Lnet/minecraft/sound/SoundEvent;)Lnet/minecraft/util/ItemActionResult;
intermediary method_32207
Lnet/minecraft/class_5620;method_32207(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_9062;
official a
Lkj;a(Ldcu;Ljd;Lcmv;Lbqp;Lcuo;Ldta;Lavn;)Lbqs;
-