{ "$id": "blockception.minecraft.behavior.blocks.minecraft.liquid_detection", "title": "Liquid Detection", "description": "The definitions for how a block behaves when detecting liquid. Only one rule definition is allowed per liquid type - if multiple are specified, the first will be used and the rest will be ignored.\nExperimental toggles required: Upcoming Creator Features", "type": "object", "additionalProperties": false, "required": [ ], "definitions": { "definition_rule": { "title": "Definition Rule", "description": "The definition rule that specifies the behavior for one liquid type.", "type": "object", "additionalProperties": false, "properties": { "can_contain_liquid": { "title": "Can Contain Liquid", "description": "Whether this block can contain the liquid. For example, if the liquid type is water, this means the block can be waterlogged.", "type": "boolean", "default": false }, "liquid_type": { "title": "Liquid Type", "description": "The type of liquid this detection rule is for.", "type": "string", "enum": [ "water" ], "default": "water" }, "on_liquid_touches": { "title": "On Liquid Touches", "description": "How the block reacts to flowing water. Must be one of the following options:\n\"blocking\" - The default value for this field. The block stops the liquid from flowing.\n\"broken\" - The block is destroyed completely.\n\"popped\" - The block is destroyed and its item is spawned.\n\"no_reaction\" - The block is unaffected; visually, the liquid will flow through the block.", "type": "string", "enum": [ "blocking", "broken", "popped", "no_reaction" ], "default": "blocking" }, "stops_liquid_flowing_from_direction": { "title": "Stops Liquid Flowing From Direction", "description": "When a block contains a liquid, controls the directions in which the liquid can't flow out from the block. Also controls the directions in which a block can stop liquid flowing into it if no_reaction is set for the on_liquid_touches field. The default is an empty list; this means that liquid can flow out of all directions by default.", "type": "array", "uniqueItems": true, "items": { "type": "string", "enum": [ "up", "down", "north", "south", "east", "west", "side", "all" ] } } } } }, "properties": { "detection_rules": { "type": "array", "items": { "$ref": "#/definitions/definition_rule" } } } }