Struct voxelize::WorldConfigBuilder
source · pub struct WorldConfigBuilder { /* private fields */ }
Expand description
Builder for a world configuration.
Implementations§
source§impl WorldConfigBuilder
impl WorldConfigBuilder
sourcepub fn max_clients(self, max_clients: usize) -> Self
pub fn max_clients(self, max_clients: usize) -> Self
Configure the maximum clients allowed for this world. Defaults is 100 clients.
sourcepub fn chunk_size(self, chunk_size: usize) -> Self
pub fn chunk_size(self, chunk_size: usize) -> Self
Configure the horizontal dimension of chunks in this world. Default is 16 blocks wide.
sourcepub fn sub_chunks(self, sub_chunks: usize) -> Self
pub fn sub_chunks(self, sub_chunks: usize) -> Self
Configure the number of sub chunks a chunk is divided into. Default is 8 sub-chunks.
sourcepub fn min_chunk(self, min_chunk: [i32; 2]) -> Self
pub fn min_chunk(self, min_chunk: [i32; 2]) -> Self
Configure the minimum inclusive chunk of the world. Default is [i32::MIN, i32::MIN].
sourcepub fn max_chunk(self, max_chunk: [i32; 2]) -> Self
pub fn max_chunk(self, max_chunk: [i32; 2]) -> Self
Configure the maximum inclusive chunk of the world. Default is [i32::MAX, i32::MAX].
sourcepub fn preload(self, preload: bool) -> Self
pub fn preload(self, preload: bool) -> Self
Configure whether or not should the world preload chunks. Default is false.
sourcepub fn preload_radius(self, preload_radius: usize) -> Self
pub fn preload_radius(self, preload_radius: usize) -> Self
Configure the preload radius of the world. Default is 12 chunks.
sourcepub fn max_height(self, max_height: usize) -> Self
pub fn max_height(self, max_height: usize) -> Self
Configure the maximum height of the world. Default is 256 blocks high.
sourcepub fn max_light_level(self, max_light_level: u32) -> Self
pub fn max_light_level(self, max_light_level: u32) -> Self
Configure the maximum light level that propagates the world. Default is 15 blocks.
sourcepub fn max_chunks_per_tick(self, max_chunks_per_tick: usize) -> Self
pub fn max_chunks_per_tick(self, max_chunks_per_tick: usize) -> Self
Configure the maximum amount of chunks to be processed per tick. Default is 24 chunks.
sourcepub fn max_updates_per_tick(self, max_updates_per_tick: usize) -> Self
pub fn max_updates_per_tick(self, max_updates_per_tick: usize) -> Self
Configure the maximum amount of voxel updates to be processed per tick. Default is 1000 voxel updates.
pub fn does_tick_time(self, does_tick_time: bool) -> Self
pub fn default_time(self, default_time: f32) -> Self
sourcepub fn max_response_per_tick(self, max_response_per_tick: usize) -> Self
pub fn max_response_per_tick(self, max_response_per_tick: usize) -> Self
Configure the maximum amount of chunks to be sent to the client per tick. Default is 3 chunks.
sourcepub fn max_saves_per_tick(self, max_saves_per_tick: usize) -> Self
pub fn max_saves_per_tick(self, max_saves_per_tick: usize) -> Self
Configure the maximum amount of chunks to be saved.
sourcepub fn time_per_day(self, time_per_day: u64) -> Self
pub fn time_per_day(self, time_per_day: u64) -> Self
Configure the amount of ticks per day. Default is 24000 ticks.
sourcepub fn water_level(self, water_level: usize) -> Self
pub fn water_level(self, water_level: usize) -> Self
Configure the water level of the voxelize world.
sourcepub fn terrain(self, terrain: &NoiseOptions) -> Self
pub fn terrain(self, terrain: &NoiseOptions) -> Self
Configure the terrain of the world. Default, check out NoiseOptions.
sourcepub fn collision_repulsion(self, collision_repulsion: f32) -> Self
pub fn collision_repulsion(self, collision_repulsion: f32) -> Self
Configure the collision repulsion between entities. Defaults to 0.3
.
sourcepub fn client_collision_repulsion(self, client_collision_repulsion: f32) -> Self
pub fn client_collision_repulsion(self, client_collision_repulsion: f32) -> Self
Configure the repulsion factor when a collision is detected between clients and entities.
sourcepub fn saving(self, saving: bool) -> Self
pub fn saving(self, saving: bool) -> Self
Configure whether or not this world should have the chunk data saved.
sourcepub fn save_interval(self, save_interval: usize) -> Self
pub fn save_interval(self, save_interval: usize) -> Self
Configure the saving interval of the world.
sourcepub fn command_symbol(self, command_symbol: &str) -> Self
pub fn command_symbol(self, command_symbol: &str) -> Self
Configure the prefix of command messages.
sourcepub fn build(self) -> WorldConfig
pub fn build(self) -> WorldConfig
Create a world configuration.
Auto Trait Implementations§
impl Freeze for WorldConfigBuilder
impl RefUnwindSafe for WorldConfigBuilder
impl Send for WorldConfigBuilder
impl Sync for WorldConfigBuilder
impl Unpin for WorldConfigBuilder
impl UnwindSafe for WorldConfigBuilder
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read moresource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.