/* * This file is part of the LoVisual Client distribution. * Copyright (c) 2026 pivosos2007. * Portions derived from ThunderHack Recode, copyright (c) 2023-2024 Pan4ur & 06ED. * Upstream: https://github.com/Pan4ur/ThunderHack-Recode * * Licensed under the GNU General Public License v3.0. */ package dev.loki.lovisual.mixins; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.material.FlowingFluid; import net.minecraft.world.level.material.FluidState; import net.minecraft.world.phys.Vec3; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; import static net.minecraft.world.level.material.FlowingFluid.FALLING; @Mixin(FlowingFluid.class) public abstract class FlowingFluidMixin { @Shadow protected abstract boolean isSolidFace(BlockGetter world, BlockPos pos, Direction direction); @Inject(method = "getFlow", at = @At("HEAD"), cancellable = true) private void lovisual$getVelocity(BlockGetter world, BlockPos pos, FluidState state, CallbackInfoReturnable cir) { // NoPush module removed; no fluid velocity override remains. } }