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 official iaintermediary net/minecraft/class_5620named net/minecraft/block/cauldron/CauldronBehavior
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final CauldronBehaviorA behavior that cleans banners with patterns.static final CauldronBehaviorA behavior that cleans dyeable items.static final CauldronBehaviorA behavior that cleans dyed shulker boxes.static final CauldronBehavior.class_8821The cauldron behaviors for empty cauldrons.static final Map<String,CauldronBehavior.class_8821> static final com.mojang.serialization.Codec<CauldronBehavior.class_8821>static final CauldronBehaviorA behavior that fills cauldrons with lava.static final CauldronBehaviorA behavior that fills cauldrons with powder snow.static final CauldronBehaviorA behavior that fills cauldrons with water.static final CauldronBehavior.class_8821The cauldron behaviors for lava cauldrons.static final CauldronBehavior.class_8821The cauldron behaviors for powder snow cauldrons.static final CauldronBehavior.class_8821The cauldron behaviors for water cauldrons. -
Method Summary
Modifier and TypeMethodDescriptionstatic CauldronBehavior.class_8821Creates a mutable map from items to their corresponding cauldron behaviors.static ActionResultemptyCauldron(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 ActionResultfillCauldron(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 voidRegisters the vanilla cauldron behaviors.static voidregisterBucketBehavior(Map<Item, CauldronBehavior> behavior) Registers the behavior for filled buckets in the specified behavior map.
-
Field Details
-
field_46589
- Mappings:
Namespace Name Mixin selector official aLia;a:Ljava/util/Map;intermediary field_46589Lnet/minecraft/class_5620;field_46589:Ljava/util/Map;named field_46589Lnet/minecraft/block/cauldron/CauldronBehavior;field_46589:Ljava/util/Map;
-
field_46590
- Mappings:
Namespace Name Mixin selector official bLia;b:Lcom/mojang/serialization/Codec;intermediary field_46590Lnet/minecraft/class_5620;field_46590:Lcom/mojang/serialization/Codec;named field_46590Lnet/minecraft/block/cauldron/CauldronBehavior;field_46590:Lcom/mojang/serialization/Codec;
-
EMPTY_CAULDRON_BEHAVIOR
The cauldron behaviors for empty cauldrons.- See Also:
- Mappings:
Namespace Name Mixin selector official cLia;c:Lia$a;intermediary field_27775Lnet/minecraft/class_5620;field_27775:Lnet/minecraft/class_5620$class_8821;named EMPTY_CAULDRON_BEHAVIORLnet/minecraft/block/cauldron/CauldronBehavior;EMPTY_CAULDRON_BEHAVIOR:Lnet/minecraft/block/cauldron/CauldronBehavior$class_8821;
-
WATER_CAULDRON_BEHAVIOR
The cauldron behaviors for water cauldrons.- See Also:
- Mappings:
Namespace Name Mixin selector official dLia;d:Lia$a;intermediary field_27776Lnet/minecraft/class_5620;field_27776:Lnet/minecraft/class_5620$class_8821;named WATER_CAULDRON_BEHAVIORLnet/minecraft/block/cauldron/CauldronBehavior;WATER_CAULDRON_BEHAVIOR:Lnet/minecraft/block/cauldron/CauldronBehavior$class_8821;
-
LAVA_CAULDRON_BEHAVIOR
The cauldron behaviors for lava cauldrons.- See Also:
- Mappings:
Namespace Name Mixin selector official eLia;e:Lia$a;intermediary field_27777Lnet/minecraft/class_5620;field_27777:Lnet/minecraft/class_5620$class_8821;named LAVA_CAULDRON_BEHAVIORLnet/minecraft/block/cauldron/CauldronBehavior;LAVA_CAULDRON_BEHAVIOR:Lnet/minecraft/block/cauldron/CauldronBehavior$class_8821;
-
POWDER_SNOW_CAULDRON_BEHAVIOR
The cauldron behaviors for powder snow cauldrons.- See Also:
- Mappings:
Namespace Name Mixin selector official fLia;f:Lia$a;intermediary field_28011Lnet/minecraft/class_5620;field_28011:Lnet/minecraft/class_5620$class_8821;named POWDER_SNOW_CAULDRON_BEHAVIORLnet/minecraft/block/cauldron/CauldronBehavior;POWDER_SNOW_CAULDRON_BEHAVIOR:Lnet/minecraft/block/cauldron/CauldronBehavior$class_8821;
-
FILL_WITH_WATER
A behavior that fills cauldrons with water.- See Also:
- Mappings:
Namespace Name Mixin selector official gLia;g:Lia;intermediary field_27778Lnet/minecraft/class_5620;field_27778:Lnet/minecraft/class_5620;named FILL_WITH_WATERLnet/minecraft/block/cauldron/CauldronBehavior;FILL_WITH_WATER:Lnet/minecraft/block/cauldron/CauldronBehavior;
-
FILL_WITH_LAVA
A behavior that fills cauldrons with lava.- See Also:
- Mappings:
Namespace Name Mixin selector official hLia;h:Lia;intermediary field_27779Lnet/minecraft/class_5620;field_27779:Lnet/minecraft/class_5620;named FILL_WITH_LAVALnet/minecraft/block/cauldron/CauldronBehavior;FILL_WITH_LAVA:Lnet/minecraft/block/cauldron/CauldronBehavior;
-
FILL_WITH_POWDER_SNOW
A behavior that fills cauldrons with powder snow.- See Also:
- Mappings:
Namespace Name Mixin selector official iLia;i:Lia;intermediary field_28012Lnet/minecraft/class_5620;field_28012:Lnet/minecraft/class_5620;named FILL_WITH_POWDER_SNOWLnet/minecraft/block/cauldron/CauldronBehavior;FILL_WITH_POWDER_SNOW:Lnet/minecraft/block/cauldron/CauldronBehavior;
-
CLEAN_SHULKER_BOX
A behavior that cleans dyed shulker boxes.- Mappings:
Namespace Name Mixin selector official jLia;j:Lia;intermediary field_27780Lnet/minecraft/class_5620;field_27780:Lnet/minecraft/class_5620;named CLEAN_SHULKER_BOXLnet/minecraft/block/cauldron/CauldronBehavior;CLEAN_SHULKER_BOX:Lnet/minecraft/block/cauldron/CauldronBehavior;
-
CLEAN_BANNER
A behavior that cleans banners with patterns.- Mappings:
Namespace Name Mixin selector official kLia;k:Lia;intermediary field_27781Lnet/minecraft/class_5620;field_27781:Lnet/minecraft/class_5620;named CLEAN_BANNERLnet/minecraft/block/cauldron/CauldronBehavior;CLEAN_BANNER:Lnet/minecraft/block/cauldron/CauldronBehavior;
-
CLEAN_DYEABLE_ITEM
A behavior that cleans dyeable items.- Mappings:
Namespace Name Mixin selector official lLia;l:Lia;intermediary field_27782Lnet/minecraft/class_5620;field_27782:Lnet/minecraft/class_5620;named CLEAN_DYEABLE_ITEMLnet/minecraft/block/cauldron/CauldronBehavior;CLEAN_DYEABLE_ITEM:Lnet/minecraft/block/cauldron/CauldronBehavior;
-
-
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
ActionResult.PASSfor all items.- Returns:
- the created map
- Mappings:
Namespace Name Mixin selector official aLia;a(Ljava/lang/String;)Lia$a;intermediary method_32206Lnet/minecraft/class_5620;method_32206(Ljava/lang/String;)Lnet/minecraft/class_5620$class_8821;named createMapLnet/minecraft/block/cauldron/CauldronBehavior;createMap(Ljava/lang/String;)Lnet/minecraft/block/cauldron/CauldronBehavior$class_8821;
-
interact
ActionResult 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,
ActionResult.PASSotherwise - Mappings:
Namespace Name Mixin selector official interactLia;interact(Ldfd;Lcqb;Lgw;Lcca;Lbhd;Lcjl;)Lbhe;intermediary interactLnet/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_1269;named interactLnet/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/ActionResult;
-
registerBehavior
static void registerBehavior()Registers the vanilla cauldron behaviors.- Mappings:
Namespace Name Mixin selector official aLia;a()Vintermediary method_32212Lnet/minecraft/class_5620;method_32212()Vnamed registerBehaviorLnet/minecraft/block/cauldron/CauldronBehavior;registerBehavior()V
-
registerBucketBehavior
Registers the behavior for filled buckets in the specified behavior map.- Mappings:
Namespace Name Mixin selector official aLia;a(Ljava/util/Map;)Vintermediary method_34850Lnet/minecraft/class_5620;method_34850(Ljava/util/Map;)Vnamed registerBucketBehaviorLnet/minecraft/block/cauldron/CauldronBehavior;registerBucketBehavior(Ljava/util/Map;)V
-
emptyCauldron
static ActionResult 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,
ActionResult.PASSotherwise - Mappings:
Namespace Name Mixin selector official aLia;a(Ldfd;Lcqb;Lgw;Lcca;Lbhd;Lcjl;Lcjl;Ljava/util/function/Predicate;Lapf;)Lbhe;intermediary method_32210Lnet/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_1269;named emptyCauldronLnet/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/ActionResult;
-
fillCauldron
static ActionResult 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 official aLia;a(Lcqb;Lgw;Lcca;Lbhd;Lcjl;Ldfd;Lapf;)Lbhe;intermediary method_32207Lnet/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_1269;named fillCauldronLnet/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/ActionResult;
-