Expand description
Fluid behavior system.
This module handles fluid mechanics: spreading, flowing, waterlogging.
Based on vanilla Minecraft’s FlowingFluid system.
§TODOs
- TODO: Remaining entity fluid side effects: drowning, splash particles/sounds.
- TODO: Block item drops when water destroys blocks (cactus infrastructure merged, needs implementation).
- TODO: Lava random tick fire spread.
Re-exports§
pub use flowing_fluid::FlowingFluid;pub use fluid_behavior::FluidBehavior;pub use fluids::EmptyFluid;pub use fluids::LavaFluid;pub use fluids::WaterFluid;pub use collision::can_hold_any_fluid_state;pub use collision::can_hold_fluid;pub use collision::can_hold_specific_fluid;pub use collision::can_pass_through_wall;pub use conversion::get_new_liquid;pub use conversion::get_spread;pub use conversion::is_hole;pub use state::fluid_state_to_block;pub use state::fluid_state_to_block_with_existing;pub use state::get_flow;pub use state::get_fluid_state;pub use state::get_fluid_state_from_block;pub use state::get_height;pub use state::get_own_height;pub use state::lava_id;pub use state::water_id;
Modules§
- collision
- Fluid collision and passability logic.
- conversion
- Fluid state computation and source conversion logic.
- flowing_
fluid - Shared logic for flowing fluids (Water, Lava).
- fluid_
behavior - Fluid behavior trait and related types.
Fluids like
WaterFluidandLavaFluidimplement this trait to inherit behavior. - fluids
- Concrete fluid implementations:
EmptyFluid,WaterFluid, andLavaFluid. - spread_
context 🔒 - Spread calculation context for fluid flow optimization.
- state
- Fluid state <-> block state conversions.
Structs§
- Fluid
- A fluid type definition (e.g., water, lava, empty).
- Fluid
State - A fluid state instance with amount and falling properties.
Traits§
- Fluid
State Ext - Extension trait for
FluidStatetype-checking methods.
Functions§
- is_
lava_ fluid - Returns true if the given
FluidRefis lava (including flowing lava). - is_
water_ fluid - Returns true if the given
FluidRefis water (including flowing water).