use nightshade::prelude::*;
#[cfg(feature = "terrain")]
pub fn enable_terrain(world: &mut World, seed: u32) {
let terrain = world.plugin_resource_mut::<TerrainSettings>();
terrain.enabled = true;
terrain.seed = seed;
terrain.revision += 1;
}
#[cfg(feature = "terrain")]
pub fn disable_terrain(world: &mut World) {
let terrain = world.plugin_resource_mut::<TerrainSettings>();
terrain.enabled = false;
terrain.revision += 1;
}
#[cfg(feature = "terrain")]
pub fn set_terrain_height_range(world: &mut World, min: f32, max: f32) {
let terrain = world.plugin_resource_mut::<TerrainSettings>();
terrain.height_min = min;
terrain.height_max = max;
terrain.revision += 1;
}
#[cfg(feature = "terrain")]
pub fn set_terrain_snow_height(world: &mut World, height: f32) {
let terrain = world.plugin_resource_mut::<TerrainSettings>();
terrain.snow_height = height;
terrain.revision += 1;
}
#[cfg(feature = "grass")]
pub fn enable_grass(world: &mut World) {
use nightshade::render::grass_config::{GrassDomain, GrassSettings, GrassTypeParams};
let grass = world.res::<GrassSettings>();
grass.enabled = true;
grass.domain = GrassDomain::Infinite;
if grass.types.is_empty() {
grass.types = vec![GrassTypeParams::meadow()];
grass.types_revision += 1;
}
}
#[cfg(feature = "grass")]
pub fn disable_grass(world: &mut World) {
world
.res::<nightshade::render::grass_config::GrassSettings>()
.enabled = false;
}