BiomeSelectionContext wrapper does not expose necessary information
itsmeow opened this issue · 4 comments
The BiomeModification API currently does not expose many methods from the underlying Fabric BiomeSelectionContext
that are necessary for the API's use. For example, I wish to filter a feature by a biome tag, but this is not possible because it requires registry access and the modifications API calls its checks before the server is fully constructed and thus accessible for registry access.
The API should expose boolean hasTag(TagKey<Biome> tag);
or getHolder
via BiomeContext
, or even the Biome
instance itself. As of current BiomeContext
does not include enough data for a lot of things.
It is not possible to do on 1.18, biome modifications are done right after biome constructor on Forge
This is specifically for 1.19. In 1.18 this wasn't a problem as you could use the registry access.
On Forge, you can actually use registry access as the biome modifications are performed after the server is done constructing, so this is only really causing issues on Fabric, since you can't get the Holder<Biome>
through any means except the API itself without a load of hacky stuff.