Skip to content

Sink doesn't work with MFR Plastic Pipes #55

@Balor64

Description

@Balor64

Your GTNH Discord Username

No response

Mod Version

1.4.4

Bug Report

I have B:sinkRequiresWater=false, and cannot pipe water out of the sink using MFR's Plastic Pipes. I've also tried Thermal's Fluiducts and AE2's Storage Bus, and those do work.

I compared the Thermal and MFR pipes to see what they do differently, and found that MFR's pipes call canDrain followed by drain (the one that takes an int), whereas Thermal skips the canDrain call and goes directly to drain (the one that takes an int). I then investigated TileSink.canDrain and found several issues with it.

  1. TileSink.canDrain always returns false when sinkRequiresWater is disabled.
  2. Plastic Pipes also pass fluid = null into canDrain, which would also be rejected by TileSink.canDrain's fluid == FluidRegistry.WATER check.

If you want piping infinite water out of the sink to be possible, you should change canDrain to not check sinkRequiresWater.

If you do not want that to be possible, you should add a sinkRequiresWater check (or a canDrain check) to the start of drain (the one that takes an int).

Either way, I think you should change canDrain to allow fluid == null.

Image

Java Version

Java 8

Mod List or GTNH Pack Version

+unimixins-all-1.7.10-0.1.23.jar
AppleCore-3.3.7.jar
CoFHCore-[1.7.10]3.1.4-329.jar
CookingForBlockheads-1.4.4-GTNH.jar
MineFactoryReloaded-[1.7.10]2.8.1-174.jar

Final Checklist

  • I have searched the issues and haven't found a similar issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions