NeoForge icon indicating copy to clipboard operation
NeoForge copied to clipboard

Add method to blocks to allow hiding neighboring fluid overlay

Open embeddedt opened this issue 3 months ago • 3 comments

This PR introduces a new method isCompatibleWithFluid on blocks (not super happy with name) that may be overridden to customize the logic for determining when the fluid is visually "compatible" with a neighbor (which stops the water overlay from rendering on a given face). The default implementation matches vanilla behavior.

This can be used to tweak the rendering of transparent blocks underwater (e.g. to implement the "depth glass" effect from Alex's Caves, see photo below for an example). That mod currently uses a mixin to implement the same effect; the goal of this PR is to remove the need for such a mixin.

277799947-8a0c467c-0251-4269-b323-86d44e5a7d34

embeddedt avatar May 06 '24 21:05 embeddedt

  • [x] Publish PR to GitHub Packages

Last commit published: 17858d687700e4fb2361c7a196184c8f3db72e98.

PR Publishing

The artifacts published by this PR:

Repository Declaration

In order to use the artifacts published by the PR, add the following repository to your buildscript:

repositories {
    maven {
        name 'Maven for PR #940' // https://github.com/neoforged/NeoForge/pull/940
        url 'https://prmaven.neoforged.net/NeoForge/pr940'
        content {
            includeModule('net.neoforged', 'neoforge')
            includeModule('net.neoforged', 'testframework')
        }
    }
}

MDK installation

In order to setup a MDK using the latest PR version, run the following commands in a terminal.
The script works on both *nix and Windows as long as you have the JDK bin folder on the path.
The script will clone the MDK in a folder named NeoForge-pr940.
On Powershell you will need to remove the -L flag from the curl invocation.

mkdir NeoForge-pr940
cd NeoForge-pr940
curl -L https://prmaven.neoforged.net/NeoForge/pr940/net/neoforged/neoforge/20.6.44-beta-pr-940-fluid-face-removal/mdk-pr940.zip -o mdk.zip
jar xf mdk.zip
rm mdk.zip || del mdk.zip

To test a production environment, you can download the installer from here.

@embeddedt Bricked the server: https://github.com/neoforged/NeoForge/actions/runs/8975717795/job/24650982784?pr=940#step:6:711

marchermans avatar May 07 '24 18:05 marchermans