Addons
Add-ons are used in Rhombus to facilitate certain workflows. They are almost always used with Minecraft mods to provide support for them.
Declaring an Addon
Addons are declared as a __addon__ value of type RhombusAddon inside a module's root.
from .functions import *
from .fast_noise_config import FastNoiseConfig, LithostitchedFastNoiseConfig
from importlib.resources import files
from rhombus.core.config import RhombusAddon
from rhombus.core.density_function import DensityFunction
from . import types
__addon__ = RhombusAddon(
name="Lithostitched",
preview_scripts=[
files("rhombus.support.lithostitched").joinpath("fastnoise-lite.ts"),
files("rhombus.support.lithostitched").joinpath("deepslate.ts"),
],
preview_beet_file_extensions={LithostitchedFastNoiseConfig},
density_functions={
cls.id: cls
for name, cls in types.__dict__.items()
if isinstance(cls, type)
and issubclass(cls, DensityFunction)
and hasattr(cls, "id")
},
)
See the available parameters for addons at the RhombusAddon page.