pub struct Atmosphere {
pub id: AtmosphereId,
pub attributes: BTreeMap<String, Value>,
pub tint: Option<AtmosphereTint>,
pub precipitation: Precipitation,
pub climate: Option<Climate>,
}Expand description
One declared sky (spec-0080 §3.1): what the party sees and hears while it stands in a cell painted with this atmosphere’s biome.
The biome is vanilla’s one channel for sky colour, fog, clouds, sky-light
tint, stars, ambient particles, music, ambience, grass, foliage and water
tint, and precipitation. In the overworld the day cycle stacks over it: it
multiplies the colours (a biome’s value survives, darkened at night), takes
the maximum of star_brightness, and replaces the sun, moon and star
angles, the sunrise colour and the moon phase outright — which is why those
five ids are refused (DW0928) and the sun cannot be moved from a place.
Fields§
§id: AtmosphereIdatmosphere/<kebab>, unique.
attributes: BTreeMap<String, Value>Environment attributes, keyed by id (visual/sky_color; the
minecraft: prefix is optional). Which ids a campaign may set, the
shape of each value and the range the pinned codec accepts are vendored
data (crates/delvec/data/environment-attributes-1.21.11.json), not
DSL surface: a value outside them is DW0928. A float attribute may
also be written in vanilla’s modifier form, {"argument": 0.85, "modifier": "multiply"}.
tint: Option<AtmosphereTint>Grass, foliage, dry-foliage and water tint (#rrggbb), each optional.
Absent, vanilla derives grass and foliage from the climate and water is
the void biome’s #3f76e4.
precipitation: PrecipitationWhat falls here when the world’s weather is rain or thunder. The
compiler derives the three vanilla fields that must agree from it
(has_precipitation, temperature, downfall), and it is the fact
DW0496 reads at a cell: none under a rainy world means the undead
burn here.
climate: Option<Climate>Overrides the derived temperature / downfall, for vanilla’s own
grass colormap at a named point. Must agree with precipitation
(DW0930): snow below 0.15, rain at or above it.
Trait Implementations§
Source§impl Clone for Atmosphere
impl Clone for Atmosphere
Source§impl Debug for Atmosphere
impl Debug for Atmosphere
Source§impl<'de> Deserialize<'de> for Atmosphere
impl<'de> Deserialize<'de> for Atmosphere
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for Atmosphere
impl JsonSchema for Atmosphere
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read more