Struct BlockStateId
pub struct BlockStateId(pub u16);Expand description
A raw block state id. Using the registry this id can be derived into a block and it’s current properties.
Tuple Fields§
§0: u16Trait Implementations§
§impl BlockStateExt for BlockStateId
impl BlockStateExt for BlockStateId
fn get_block(&self) -> &'static Block
fn with_properties_of(&self, source: BlockStateId) -> BlockStateId
fn is_air(&self) -> bool
§fn get_ticking_metadata(&self) -> BlockStateTickingMetadata
fn get_ticking_metadata(&self) -> BlockStateTickingMetadata
Returns Vanilla’s immutable cached fluid/random-tick metadata for this state.
§fn get_fluid_state(&self) -> FluidState
fn get_fluid_state(&self) -> FluidState
Mirrors Vanilla’s cached
BlockState.getFluidState().§fn is_randomly_ticking(&self) -> bool
fn is_randomly_ticking(&self) -> bool
Mirrors Vanilla’s cached
BlockState.isRandomlyTicking() for the block callback.§fn has_block_entity(&self) -> bool
fn has_block_entity(&self) -> bool
Returns whether this block structurally supports a block entity. Read more
fn get_value<P>(&self, property: &P) -> <P as Property>::Valuewhere
P: Property,
§fn try_get_value<P>(&self, property: &P) -> Option<<P as Property>::Value>where
P: Property,
fn try_get_value<P>(&self, property: &P) -> Option<<P as Property>::Value>where
P: Property,
Gets the value of a property, returning
None if the block doesn’t have this property.fn set_value<P>(
&self,
property: &P,
value: <P as Property>::Value,
) -> BlockStateIdwhere
P: Property,
fn copy_value<P, O>(&self, property: &P, other: &O) -> BlockStateIdwhere
P: Property,
O: BlockStateExt,
fn get_property_str(&self, name: &str) -> Option<String>
fn get_static_collision_shape(&self) -> VoxelShape
fn get_collision_shape_at(&self, pos: BlockPos) -> OffsetVoxelShape
fn get_static_support_shape(&self) -> VoxelShape
fn get_support_shape_at(&self, pos: BlockPos) -> OffsetVoxelShape
fn get_static_outline_shape(&self) -> VoxelShape
fn get_outline_shape_at(&self, pos: BlockPos) -> OffsetVoxelShape
fn get_occlusion_shape(&self) -> VoxelShape
fn get_static_interaction_shape(&self) -> VoxelShape
fn get_interaction_shape_at(&self, pos: BlockPos) -> OffsetVoxelShape
fn get_static_visual_shape(&self) -> VoxelShape
fn get_visual_shape_at(&self, pos: BlockPos) -> OffsetVoxelShape
§fn get_light_emission(&self) -> u8
fn get_light_emission(&self) -> u8
Returns this block state’s block light emission, in vanilla’s 0-15 range.
§fn get_light_dampening(&self) -> u8
fn get_light_dampening(&self) -> u8
Returns this block state’s light dampening, in vanilla’s 0-15 range.
§fn use_shape_for_light_occlusion(&self) -> bool
fn use_shape_for_light_occlusion(&self) -> bool
Returns true if vanilla uses face shapes for light occlusion on this state.
§fn get_offset(&self, pos: BlockPos) -> DVec3
fn get_offset(&self, pos: BlockPos) -> DVec3
Mirrors vanilla
BlockState.getOffset(BlockPos).§fn is_face_sturdy_at(&self, pos: BlockPos, direction: Direction) -> bool
fn is_face_sturdy_at(&self, pos: BlockPos, direction: Direction) -> bool
Checks if this block face is sturdy enough to support other blocks.
Uses
SupportType::Full by default.§fn is_face_sturdy_for_at(
&self,
pos: BlockPos,
direction: Direction,
support_type: SupportType,
) -> bool
fn is_face_sturdy_for_at( &self, pos: BlockPos, direction: Direction, support_type: SupportType, ) -> bool
Checks if this block face is sturdy for the given support type.
§fn is_solid(&self) -> bool
fn is_solid(&self) -> bool
Checks if this block state is solid (has a full cube collision shape). Read more
§fn blocks_motion(&self) -> bool
fn blocks_motion(&self) -> bool
Checks if this block state blocks motion. Read more
§fn is_solid_render(&self) -> bool
fn is_solid_render(&self) -> bool
Checks if this block state renders as a full solid cube. Read more
§fn is_suffocating(&self) -> bool
fn is_suffocating(&self) -> bool
Returns vanilla
BlockState.isSuffocating.§fn is_static_redstone_conductor(&self) -> bool
fn is_static_redstone_conductor(&self) -> bool
Returns the extracted static
BlockState.isRedstoneConductor value.
Dynamic behavior queries must also receive the live level and position.§fn is_replaceable(&self) -> bool
fn is_replaceable(&self) -> bool
Returns if a block can be replaced extracted from the minecraft data
§impl Clone for BlockStateId
impl Clone for BlockStateId
§fn clone(&self) -> BlockStateId
fn clone(&self) -> BlockStateId
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for BlockStateId
§impl Debug for BlockStateId
impl Debug for BlockStateId
§impl Default for BlockStateId
impl Default for BlockStateId
§fn default() -> BlockStateId
fn default() -> BlockStateId
Returns the “default value” for a type. Read more
impl Eq for BlockStateId
§impl Hash for BlockStateId
impl Hash for BlockStateId
§impl PartialEq for BlockStateId
impl PartialEq for BlockStateId
§impl ReadFrom for BlockStateId
impl ReadFrom for BlockStateId
impl StructuralPartialEq for BlockStateId
Auto Trait Implementations§
impl Freeze for BlockStateId
impl RefUnwindSafe for BlockStateId
impl Send for BlockStateId
impl Sync for BlockStateId
impl Unpin for BlockStateId
impl UnsafeUnpin for BlockStateId
impl UnwindSafe for BlockStateId
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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> ⓘ
Converts
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> ⓘ
Converts
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 moreWraps this value in an
Arc<SyncMutex<>>