OreCruncher / DynamicSurroundings

Dynamic Surroundings mod for Minecraft 1.10.x+
MIT License
120 stars 35 forks source link

[Suggestion] Some kind of 'blacklist' for blocks. So the outdoor ambience plays even if that 'block' is above you. #547

Open SonicX8000 opened 4 years ago

SonicX8000 commented 4 years ago

This is for 1.12.2 & Up.

I dunno how to explain this but... when outdoors and depending on the biome & such... you can hear the ambient sounds & stuff like the birds chirping & the wind gusts when at high height levels... however those won't play if there's blocks above you.

I was wondering if there could be a blacklist of some sorts for adding in blocks... so even if these blocks were above you... it won't prevent the ambient sounds from playing. For example...

You've built a dome base of some sorts but there's 'minecraft:glass' above you... no ambient sounds will play since it's considered that you're indoors... however if I add 'minecraft:glass' to this blacklist... then outdoor ambient sounds will play regardless if there's 1+ 'minecraft:glass' above you.

If you really, REALLY wanted... you can add 'minecraft:dirt' & 'minecraft:stone' which would allow outdoor ambient sounds to play in caves or something... it's silly, yes but... just trying to explain it.

Unless there's a way to do this already. As it is currently... you can only hear outdoor ambience if there's no blocks above you.

OreCruncher commented 4 years ago

I get what you are trying to say. I have always found it absurd to be flying 128 blocks above ground and yet hear birds. :) I think I will have to come up with multiple types of "filters" to determine when to play some of these sounds. The example you give would be how the logic for determining "indoors" could work. The example I gave would require determination of how high the player is above a solid surface.

SonicX8000 commented 3 years ago

Just wondering on how this is doing. Like some sort of filter option.

"These blocks won't count as being indoors if they're above you." minecraft:glass minecraft:glass_pane minecraft:leaves minecraft:cobblestone_wall minecraft:iron_bars minecraft:fence etc.

I suppose this could be the default setup for the config in a way. I dunno how the metadata bit works since Cobblestone Wall has 0 & 1 but the same ID name.

OreCruncher commented 3 years ago

You do have a point with fences, walls, and bars. Leaves don't count for this - the logic already filters it out. Glass I will need to think about.

SonicX8000 commented 3 years ago

Ah, leaves are already filtered, alright.

It could be up to the user to define the names of the blocks. There's a few modded ones out there, at least with the mods that I have added that would fit into the list.

Glass is sorta odd being that it blocks sound... kinda but there might be some users out there that wish to hear the ambience while in a glass dome of some sorts so maybe not a default option but an optional one that the user can add in.