
Rich Soil FarmLand can't be hydrated by non-Water hydrating fluids
fabien-gigante opened this issue ยท 2 comments
Minecraft version
1.21.1
Farmer's Delight version
1.2.8
NeoForge version
21.1.176
Description
Rich Soil FarmLand can't be hydrated by other non-Water hydrating fluids.
Steps to reproduce
- Place a Rich Soil FarmLand block
- Place a fluid different than water with the "can hydrate" property in an adjacent block
- Observe that the Rich Soil FarmLand isn't hydrated
Mod list
Mod List
Mod List: Name Version (Mod Id) Advancements Reloaded 0.6.1 (advancements_reloaded)
Alternate Current 1.9.0 (alternate_current)
AppleSkin 3.0.5+mc1.21 (appleskin)
Architectury 13.0.8 (architectury)
Armor Stand Poses 1.3.0 (poses)
BetterF3 11.0.3 (betterf3)
ClickThrough Plus 3.4+1.21.1 (clickthrough)
Cloth Config v15 API 15.0.140 (cloth_config)
Colorwheel 0.2.3+mc1.21.1 (colorwheel)
Colorwheel Patcher 0.2.4+mc1.21.1 (colorwheel_patcher)
Concurrent Chunk Management Engine 0.3.0+alpha.0.71+1.21.1 (c2me)
Concurrent Chunk Management Engine (Base) 0.3.0+alpha.0.71+1.21.1 (c2me_base)
Concurrent Chunk Management Engine (Client/Uncap View Distance) 0.3.0+alpha.0.71+1.21.1 (c2me_client_uncapvd)
Concurrent Chunk Management Engine (Fixes/Chunk IO/Threading Issues) 0.3.0+alpha.0.71+1.21.1 (c2me_fixes_chunkio_threading_issues)
Concurrent Chunk Management Engine (Fixes/General/Threading Issues) 0.3.0+alpha.0.71+1.21.1 (c2me_fixes_general_threading_issues)
Concurrent Chunk Management Engine (Fixes/WorldGen/Threading Issues) 0.3.0+alpha.0.71+1.21.1 (c2me_fixes_worldgen_threading_issues)
Concurrent Chunk Management Engine (Fixes/WorldGen/Vanilla Bugs) 0.3.0+alpha.0.71+1.21.1 (c2me_fixes_worldgen_vanilla_bugs)
Concurrent Chunk Management Engine (No Tick View Distance) 0.3.0+alpha.0.71+1.21.1 (c2me_notickvd)
Concurrent Chunk Management Engine (Optimizations/Chunk IO) 0.3.0+alpha.0.71+1.21.1 (c2me_opts_chunkio)
Concurrent Chunk Management Engine (Optimizations/Density Function Compiler) 0.3.0+alpha.0.71+1.21.1 (c2me_opts_dfc)
Concurrent Chunk Management Engine (Optimizations/General WorldGen) 0.3.0+alpha.0.71+1.21.1 (c2me_opts_worldgen_general)
Concurrent Chunk Management Engine (Optimizations/Math) 0.3.0+alpha.0.71+1.21.1 (c2me_opts_math)
Concurrent Chunk Management Engine (Optimizations/Memory Allocations) 0.3.0+alpha.0.71+1.21.1 (c2me_opts_allocs)
Concurrent Chunk Management Engine (Optimizations/Natives Math) 0.3.0+alpha.0.71+1.21.1 (c2me_opts_natives_math)
Concurrent Chunk Management Engine (Optimizations/Scheduling) 0.3.0+alpha.0.71+1.21.1 (c2me_opts_scheduling)
Concurrent Chunk Management Engine (Optimizations/Vanilla WorldGen) 0.3.0+alpha.0.71+1.21.1 (c2me_opts_worldgen_vanilla)
Concurrent Chunk Management Engine (Rewrites/Chunk IO) 0.3.0+alpha.0.71+1.21.1 (c2me_rewrites_chunkio)
Concurrent Chunk Management Engine (Rewrites/Chunk Serializer) 0.3.0+alpha.0.71+1.21.1 (c2me_rewrites_chunk_serializer)
Concurrent Chunk Management Engine (Rewrites/Chunk System) 0.3.0+alpha.0.71+1.21.1 (c2me_rewrites_chunk_system)
Concurrent Chunk Management Engine (Server Utils) 0.3.0+alpha.0.71+1.21.1 (c2me_server_utils)
Concurrent Chunk Management Engine (Threading/Lighting) 0.3.0+alpha.0.71+1.21.1 (c2me_threading_lighting)
conditional mixin 0.6.4 (conditional_mixin)
Corpse 1.21.1-1.1.10 (corpse)
Crate Delight 24.11.22-1.21-neoforge (cratedelight)
Create 6.0.6 (create)
Create Encased 1.7.1-fix2 (createcasing)
Create New Beginnings 0.1.0 (createnewbeg)
Create Slice & Dice 0.0.0-dev (sliceanddice)
Create: Dragons Plus 1.6.1 (create_dragons_plus)
Create: Enchantment Industry 2.1.7 (create_enchantment_industry)
Create: Integrated Farming 1.0.6 (create_integrated_farming)
Create: Trading Floor 3.0.10 (trading_floor)
Create: Winery 1.7.0 (create_winery)
CreateBetterFps 1.1.1 (createbetterfps)
EntityCulling 1.8.2 (entityculling)
Farmer's Delight 1.2.8 (farmersdelight)
Ferrite Core 7.0.2 (ferritecore)
Flerovium 1.0.4 (flerovium)
Flywheel 1.0.4 (flywheel)
Forgified Fabric API Base 0.4.42+d1308ded19 (fabric_api_base)
Forgified Fabric BlockView API (v2) 1.0.10+9afaaf8c19 (fabric_block_view_api_v2)
Forgified Fabric Renderer API (v1) 3.4.0+acb05a3919 (fabric_renderer_api_v1)
Forgified Fabric Rendering Data Attachment (v1) 0.3.48+73761d2e19 (fabric_rendering_data_attachment_v1)
Fzzy Config 0.6.9+1.21+neoforge (fzzy_config)
ImmediatelyFast 1.6.6+1.21.1 (immediatelyfast)
Iris 1.8.12-snapshot+mc1.21.1-local (iris)
Jade 15.10.2+neoforge (jade)
Jade Addons 6.1.0+neoforge (jadeaddons)
Just Enough Items 19.22.0.315 (jei)
Kotlin For Forge 5.8.0 (kotlinforforge)
Lithium 0.15.0+mc1.21.1 (lithium)
Minecraft 1.21.1 (minecraft)
ModernFix 5.24.3+mc1.21.1 (modernfix)
More Culling 1.0.6 (moreculling)
NeoForge 21.1.176 (neoforge)
Ponder 1.0.56 (ponder)
ShulkerBoxTooltip 5.1.6+1.21.1 (shulkerboxtooltip)
Sodium 0.6.13+mc1.21.1 (sodium)
TRansition 1.0.3 (transition)
TRender 1.0.5 (trender)
Vanillin 1.1.3 (vanillin)
VisibleToggleSprint 1.7.0 (visible_toggle_sprint)
What Am I Listening To? 21.0.2.0 (wailt)
Logs
I suggest to modify RichSoilFarmlandBlock.java as follows :
private static boolean hasWater(LevelReader level, BlockPos pos) {
+ BlockState state = level.getBlockState(pos);
for (BlockPos nearbyPos : BlockPos.betweenClosed(pos.offset(-4, 0, -4), pos.offset(4, 1, 4))) {
- if (level.getFluidState(nearbyPos).is(FluidTags.WATER)) {
+ if (state.canBeHydrated(level, pos, level.getFluidState(nearbyPos), nearbyPos))
return true;
}
}
return FarmlandWaterManager.hasBlockWaterTicket(level, pos);
}
Similarly to what NeoForge does in FarmBlock.java.patch to avoid the existing Water hardcoding.
Minimal instance
- I have tested this on a minimal instance
Performance and shader mods
- I am using performance or shader mods
Interesting find. I think this Forge change escaped me over the years because I'm copying a static method, instead of overriding it from the parent.
I'll toss this into the 1.2.9 patch. ๐
Added on commit 44f7309.