Ability to mask blocks as fluid sources
Biochao opened this issue ยท 4 comments
I'm trying to hide a block that spawns in water by masking it as "minecraft:water" but the mask shows up as a solid missing texture block.
Is it possible to mask blocks as fluids?
By default, you can not hide blocks as blocks without items. You will have to use something like addReplacementById(String stage, String original, String replacement)
instead.
That's the method I used.
mods.orestages.OreStages.addReplacementById("hidden", "uselessores:ore_water", "minecraft:water");
That's very interesting. Perhaps fluids are another special case exemption and can not be replaced. Even if you could, I think the normal water block would not connect. Like when you have glass or a fence in water.
You can replace everything that is not water or lava. Something like hidding quicksand (biome o' plenty) with primal mana (thermal foundation) works but as soon as one side has water or lava in it, it won't work anymore.
That is perhaps the reason: https://forums.minecraftforge.net/topic/42318-1102-water-liquid-block-model/
Vanilla liquids bypass the baked model system, they're rendered by
BlockFluidRenderer
. Forge provides the
ModelFluid
model (
forge:fluid
) to render modded fluid blocks with the baked model system.
If you extend
BlockFluidBase
, you can probably override
BlockFluidBase#getFluidHeightForRender
to control the render height.
At least as I read through the issues you mentioned you use baked models.