Changelog
Features:
- Improve water particle water collision detection:
- Accounts for fluid height.
- Allows water particles to survive in any blocks that can create them (entities swimming in blocks that return true for
isAABBInsideMaterial, but aren't a fluid, for example).
- New config setting that allows FluidState redstone behavior to be disabled.
Bug Fixes:
- Block material entity acceleration now only caches chunks as-needed (probably fixes #290).
- Fix a couple very rare crashes related to fluid entity collision.
- Fix a crash that would happen if a mod attempted to render a fluid block without a world loaded.
- Fix a possible crash related to
MutableBlockPosmulti-threading (probably fixes the 1st half of #289). - Fix fluid collision not working at all for very small fluid heights.
- Much better fix for MC-2591 (it actually works now).
- Rewrite the FluidState redstone logic implementation. This fixes many (maybe all?) modded redstone-related conflicts!
Compatibility Fixes:
- Cleanroom Mod Loader:
- Fix a strange crash with Cleanroom on mobile (fixes #292).
- Should no longer require the Fugue mod for Fluidlogged API to run.
- Dynamic Surroundings:
- Account for FluidStates when checking fluid color for the position.
- Add FluidState support for Dynamic Surroundings' underwater breathing effect.
- Fluid drop particles no longer phase through FluidStates.
- Now plays all ambient/random block effects for FluidStates!
- Rain drop particles no longer phase through FluidStates.
- Rain drop particles now create water ripples on FluidStates.
- Steam jet effect now accounts for FluidStates when counting the amount of surrounding "hot" blocks.
- Water splash jet effect is now FluidState-sensitive.
- Galacticraft:
- Fix a crash when fire checks whether certain Galacticraft fluids are flammable (fixes #291).
- Make Galacticraft's fluid drip particle account for FluidStates during its collision check.
- Immersive Engineering:
- Wires (and other IE-like wires from other addons like Industrial Wires) now correctly trigger electrocuted damage + knockback with this mod installed (fixes #286).
- NuclearCraft:
- Make all NuclearCraft source gas fluid blocks only vaporize their FluidState while fluidlogged instead of the whole block (fixes 2nd half of #289).
- OreLib:
- Allow OreLib's
IBlockAccessExclass to read FluidStates. This fix was originally part of my Subaquatic mod, but I'm moving it so it can be updated here as necessary.
- Allow OreLib's
- Tropicraft:
- Allow Tropicraft's fish hook entity to account for FluidStates when deciding which blocks to play splash effects for.
API Changes:
- Blocks without a material of lava are automatically marked as entity flammable if they return true for
Block.isAABBInsideMaterial(world, pos, aabb, Material.LAVA). - Buckets now correctly pass the player into
FluidUtil.tryPlaceFluid. This fixes a very minor unintentional code behavioral difference between forge and this mod. - Fix a bad return value in
PluginWorld.Hooks.setBlockToAir(client now returns true if a fluid is at the position instead of false). This makes the client & server return the same value. - New
api.world.ICubeDatainterface:- Represents a 16x16x16 section of block data, without a reliance on using Chunks.
- New
FluidloggedUtilsmethods that acceptICubeDatainstead of a chunk. The old chunk-based methods still exist for backwards compatibility.
- New
api.world.ICubeDataProviderinterface:- Allows custom
IBlockAccessimplementations to supplyICubeData.
- Allows custom
- New
api.world.IFluidEventListenerinterface:- Allows code to be executed when a FluidState changes somewhere in the world.
- This is intended to be used the same way as
IWorldEventListener.notifyBlockUpdate. IFluidloggable.onFluidChange,Block.onBlockAdded, andBlock.neighborChangedshould still be enough for most cases.
Files
Fluidlogged-API-v3.3.0-mc1.12.2.jar(781.49 KiB) Primary Download
External resources
Project members
jbredwards
Owner
embeddedt
Contributor

Cleanroom
Mascot

