diff options
| author | mat <git@matdoes.dev> | 2024-11-27 10:26:40 +0000 |
|---|---|---|
| committer | mat <git@matdoes.dev> | 2024-11-27 10:26:40 +0000 |
| commit | 0817382098128adcecb77756a3c7cd1bd0066057 (patch) | |
| tree | 623d9b297f9b5fdb2af74ab3c5a4fa5c1b72ff5b | |
| parent | dfdc3144b61b6750ad62fb493b7c00c6c820c90b (diff) | |
| download | azalea-drasl-0817382098128adcecb77756a3c7cd1bd0066057.tar.xz | |
replace once_cell with std:;sync::LazyLock
| -rw-r--r-- | Cargo.lock | 7 | ||||
| -rw-r--r-- | Cargo.toml | 1 | ||||
| -rw-r--r-- | azalea-auth/Cargo.toml | 2 | ||||
| -rwxr-xr-x | azalea-auth/src/sessionserver.rs | 5 | ||||
| -rw-r--r-- | azalea-chat/Cargo.toml | 5 | ||||
| -rwxr-xr-x | azalea-chat/src/component.rs | 5 | ||||
| -rwxr-xr-x | azalea-chat/src/style.rs | 9 | ||||
| -rw-r--r-- | azalea-client/Cargo.toml | 6 | ||||
| -rwxr-xr-x | azalea-client/src/chat.rs | 3 | ||||
| -rw-r--r-- | azalea-language/Cargo.toml | 2 | ||||
| -rwxr-xr-x | azalea-language/src/lib.rs | 8 | ||||
| -rw-r--r-- | azalea-physics/Cargo.toml | 5 | ||||
| -rw-r--r-- | azalea-physics/src/collision/blocks.rs | 912 | ||||
| -rw-r--r-- | azalea-protocol/Cargo.toml | 14 | ||||
| -rw-r--r-- | azalea-protocol/examples/handshake_proxy.rs | 7 | ||||
| -rw-r--r-- | azalea-registry/Cargo.toml | 1 | ||||
| -rw-r--r-- | azalea-registry/src/tags/blocks.rs | 473 | ||||
| -rw-r--r-- | azalea-registry/src/tags/fluids.rs | 11 | ||||
| -rw-r--r-- | azalea-registry/src/tags/items.rs | 467 | ||||
| -rw-r--r-- | azalea-world/Cargo.toml | 8 | ||||
| -rw-r--r-- | azalea/src/pathfinder/goals.rs | 3 | ||||
| -rwxr-xr-x | codegen/lib/code/shapes.py | 8 | ||||
| -rw-r--r-- | codegen/lib/code/tags.py | 5 |
23 files changed, 989 insertions, 978 deletions
@@ -237,7 +237,6 @@ dependencies = [ "chrono", "env_logger", "md-5", - "once_cell", "reqwest", "rsa", "serde", @@ -306,7 +305,6 @@ dependencies = [ "azalea-buf", "azalea-language", "azalea-registry", - "once_cell", "serde", "serde_json", "simdnbt", @@ -337,7 +335,6 @@ dependencies = [ "bevy_time", "derive_more", "minecraft_folder_path", - "once_cell", "parking_lot", "regex", "reqwest", @@ -428,7 +425,6 @@ dependencies = [ name = "azalea-language" version = "0.10.3+mc1.21.1" dependencies = [ - "once_cell", "serde", "serde_json", ] @@ -445,7 +441,6 @@ dependencies = [ "azalea-world", "bevy_app", "bevy_ecs", - "once_cell", "parking_lot", "uuid", ] @@ -474,7 +469,6 @@ dependencies = [ "futures", "futures-lite", "log", - "once_cell", "serde", "serde_json", "simdnbt", @@ -503,7 +497,6 @@ version = "0.10.3+mc1.21.1" dependencies = [ "azalea-buf", "azalea-registry-macros", - "once_cell", "serde", "simdnbt", ] @@ -48,7 +48,6 @@ minecraft_folder_path = "0.1.2" nohash-hasher = "0.2.0" num-bigint = "0.4.6" num-traits = "0.2.19" -once_cell = "1.20.2" parking_lot = "0.12.3" priority-queue = "2.1.1" proc-macro2 = "1.0.92" diff --git a/azalea-auth/Cargo.toml b/azalea-auth/Cargo.toml index 7eb38c19..6573081d 100644 --- a/azalea-auth/Cargo.toml +++ b/azalea-auth/Cargo.toml @@ -14,8 +14,6 @@ azalea-crypto = { path = "../azalea-crypto", version = "0.10.0" } base64 = { workspace = true } chrono = { workspace = true, features = ["serde"] } md-5 = { workspace = true } -#num-bigint = { workspace = true } -once_cell = { workspace = true } reqwest = { workspace = true, features = ["json", "rustls-tls"] } rsa = { workspace = true } serde = { workspace = true, features = ["derive"] } diff --git a/azalea-auth/src/sessionserver.rs b/azalea-auth/src/sessionserver.rs index 9c73fbf0..e7052e11 100755 --- a/azalea-auth/src/sessionserver.rs +++ b/azalea-auth/src/sessionserver.rs @@ -1,5 +1,6 @@ //! Tell Mojang you're joining a multiplayer server. -use once_cell::sync::Lazy; +use std::sync::LazyLock; + use reqwest::StatusCode; use serde::Deserialize; use serde_json::json; @@ -49,7 +50,7 @@ pub struct ForbiddenError { pub path: String, } -static REQWEST_CLIENT: Lazy<reqwest::Client> = Lazy::new(reqwest::Client::new); +static REQWEST_CLIENT: LazyLock<reqwest::Client> = LazyLock::new(reqwest::Client::new); /// Tell Mojang's servers that you are going to join a multiplayer server, /// which is required to join online-mode servers. The server ID is an empty diff --git a/azalea-chat/Cargo.toml b/azalea-chat/Cargo.toml index 6cd9c16e..370a8862 100644 --- a/azalea-chat/Cargo.toml +++ b/azalea-chat/Cargo.toml @@ -15,10 +15,11 @@ azalea-buf = ["dep:azalea-buf", "simdnbt"] numbers = ["dep:azalea-registry", "dep:simdnbt"] [dependencies] -azalea-buf = { path = "../azalea-buf", features = ["serde_json"], version = "0.10.0", optional = true } +azalea-buf = { path = "../azalea-buf", features = [ + "serde_json", +], version = "0.10.0", optional = true } azalea-language = { path = "../azalea-language", version = "0.10.0" } azalea-registry = { path = "../azalea-registry", version = "0.10.0", optional = true } -once_cell = { workspace = true } serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true } simdnbt = { workspace = true, optional = true } diff --git a/azalea-chat/src/component.rs b/azalea-chat/src/component.rs index 84b5ed17..43614c77 100755 --- a/azalea-chat/src/component.rs +++ b/azalea-chat/src/component.rs @@ -1,8 +1,7 @@ -use std::fmt::Display; +use std::{fmt::Display, sync::LazyLock}; #[cfg(feature = "azalea-buf")] use azalea_buf::{BufReadError, McBufReadable, McBufWritable}; -use once_cell::sync::Lazy; use serde::{de, Deserialize, Deserializer, Serialize}; #[cfg(feature = "simdnbt")] use simdnbt::{Deserialize as _, FromNbtTag as _, Serialize as _}; @@ -23,7 +22,7 @@ pub enum FormattedText { Translatable(TranslatableComponent), } -pub static DEFAULT_STYLE: Lazy<Style> = Lazy::new(|| Style { +pub static DEFAULT_STYLE: LazyLock<Style> = LazyLock::new(|| Style { color: Some(ChatFormatting::White.try_into().unwrap()), ..Style::default() }); diff --git a/azalea-chat/src/style.rs b/azalea-chat/src/style.rs index a27f3d2a..e147bc97 100755 --- a/azalea-chat/src/style.rs +++ b/azalea-chat/src/style.rs @@ -1,8 +1,7 @@ -use std::{collections::HashMap, fmt}; +use std::{collections::HashMap, fmt, sync::LazyLock}; #[cfg(feature = "azalea-buf")] use azalea_buf::McBuf; -use once_cell::sync::Lazy; use serde::{ser::SerializeStruct, Serialize, Serializer}; use serde_json::Value; #[cfg(feature = "simdnbt")] @@ -57,8 +56,8 @@ impl TextColor { } } -static LEGACY_FORMAT_TO_COLOR: Lazy<HashMap<&'static ChatFormatting, TextColor>> = - Lazy::new(|| { +static LEGACY_FORMAT_TO_COLOR: LazyLock<HashMap<&'static ChatFormatting, TextColor>> = + LazyLock::new(|| { let mut legacy_format_to_color = HashMap::new(); for formatter in &ChatFormatting::FORMATTERS { if !formatter.is_format() && *formatter != ChatFormatting::Reset { @@ -73,7 +72,7 @@ static LEGACY_FORMAT_TO_COLOR: Lazy<HashMap<&'static ChatFormatting, TextColor>> } legacy_format_to_color }); -static NAMED_COLORS: Lazy<HashMap<String, TextColor>> = Lazy::new(|| { +static NAMED_COLORS: LazyLock<HashMap<String, TextColor>> = LazyLock::new(|| { let mut named_colors = HashMap::new(); for color in LEGACY_FORMAT_TO_COLOR.values() { named_colors.insert(color.name.clone().unwrap(), color.clone()); diff --git a/azalea-client/Cargo.toml b/azalea-client/Cargo.toml index 371e2d3b..ee1e400a 100644 --- a/azalea-client/Cargo.toml +++ b/azalea-client/Cargo.toml @@ -10,7 +10,6 @@ version = "0.10.3+mc1.21.1" [dependencies] anyhow = { workspace = true } -#async-trait = { workspace = true } azalea-auth = { path = "../azalea-auth", version = "0.10.0" } azalea-block = { path = "../azalea-block", version = "0.10.0" } azalea-buf = { path = "../azalea-buf", version = "0.10.0" } @@ -29,15 +28,10 @@ bevy_log = { workspace = true, optional = true } bevy_tasks = { workspace = true } bevy_time = { workspace = true } derive_more = { workspace = true, features = ["deref", "deref_mut"] } -#futures = { workspace = true } minecraft_folder_path = { workspace = true } -#nohash-hasher = { workspace = true } -once_cell = { workspace = true } parking_lot = { workspace = true, features = ["deadlock_detection"] } regex = { workspace = true } reqwest = { workspace = true } -#serde = { workspace = true } -#serde_json = { workspace = true } simdnbt = { workspace = true } thiserror = { workspace = true } tokio = { workspace = true, features = ["sync"] } diff --git a/azalea-client/src/chat.rs b/azalea-client/src/chat.rs index 1f69d46e..80c52baf 100755 --- a/azalea-client/src/chat.rs +++ b/azalea-client/src/chat.rs @@ -37,8 +37,7 @@ pub enum ChatPacket { macro_rules! regex { ($re:literal $(,)?) => {{ - static RE: once_cell::sync::OnceCell<regex::Regex> = once_cell::sync::OnceCell::new(); - RE.get_or_init(|| regex::Regex::new($re).unwrap()) + std::sync::LazyLock::new(|| regex::Regex::new($re).unwrap()) }}; } diff --git a/azalea-language/Cargo.toml b/azalea-language/Cargo.toml index 4fdda48c..bdc7bb4e 100644 --- a/azalea-language/Cargo.toml +++ b/azalea-language/Cargo.toml @@ -9,7 +9,5 @@ version = "0.10.3+mc1.21.1" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -once_cell = { workspace = true } serde = { workspace = true } serde_json = { workspace = true } -#tokio = { workspace = true, features = ["fs"] } diff --git a/azalea-language/src/lib.rs b/azalea-language/src/lib.rs index 7b6a6dec..33014144 100755 --- a/azalea-language/src/lib.rs +++ b/azalea-language/src/lib.rs @@ -1,11 +1,9 @@ #![doc = include_str!("../README.md")] -use std::collections::HashMap; +use std::{collections::HashMap, sync::LazyLock}; -use once_cell::sync::Lazy; - -pub static STORAGE: Lazy<HashMap<String, String>> = - Lazy::new(|| serde_json::from_str(include_str!("en_us.json")).unwrap()); +pub static STORAGE: LazyLock<HashMap<String, String>> = + LazyLock::new(|| serde_json::from_str(include_str!("en_us.json")).unwrap()); pub fn get(key: &str) -> Option<&str> { STORAGE.get(key).map(|s| s.as_str()) diff --git a/azalea-physics/Cargo.toml b/azalea-physics/Cargo.toml index 33a301fc..fe4e925a 100644 --- a/azalea-physics/Cargo.toml +++ b/azalea-physics/Cargo.toml @@ -17,12 +17,7 @@ azalea-registry = { path = "../azalea-registry", version = "0.10.0" } azalea-world = { path = "../azalea-world", version = "0.10.0" } bevy_app = { workspace = true } bevy_ecs = { workspace = true } -#nohash-hasher = { workspace = true } -once_cell = { workspace = true } parking_lot = { workspace = true } -#smallvec = { workspace = true } -#tracing = { workspace = true } [dev-dependencies] -#bevy_time = { workspace = true } uuid = { workspace = true } diff --git a/azalea-physics/src/collision/blocks.rs b/azalea-physics/src/collision/blocks.rs index 01784963..73d62a41 100644 --- a/azalea-physics/src/collision/blocks.rs +++ b/azalea-physics/src/collision/blocks.rs @@ -6,8 +6,9 @@ #![allow(clippy::explicit_auto_deref)] #![allow(clippy::redundant_closure)] +use std::sync::LazyLock; + use azalea_block::*; -use once_cell::sync::Lazy; use super::VoxelShape; use crate::collision::{self, Shapes}; @@ -22,11 +23,12 @@ pub trait BlockWithShape { fn is_shape_full(&self) -> bool; } -static SHAPE0: Lazy<VoxelShape> = Lazy::new(|| collision::EMPTY_SHAPE.clone()); -static SHAPE1: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 1., 1.)); -static SHAPE2: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.4375, 0., 0.4375, 0.5625, 1., 0.5625)); -static SHAPE3: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE0: LazyLock<VoxelShape> = LazyLock::new(|| collision::EMPTY_SHAPE.clone()); +static SHAPE1: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 1., 1.)); +static SHAPE2: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.4375, 0., 0.4375, 0.5625, 1., 0.5625)); +static SHAPE3: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 0.1875, 0.5625, 0.1875); let s = Shapes::or(s, collision::box_shape(0.8125, 0., 0., 1., 0.5625, 0.1875)); let s = Shapes::or(s, collision::box_shape(0., 0.1875, 0.1875, 1., 0.5625, 1.)); @@ -35,7 +37,7 @@ static SHAPE3: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.5625, 0.1875), ) }); -static SHAPE4: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE4: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.8125, 0.1875, 0.5625, 1.); let s = Shapes::or(s, collision::box_shape(0.8125, 0., 0.8125, 1., 0.5625, 1.)); let s = Shapes::or(s, collision::box_shape(0., 0.1875, 0., 1., 0.5625, 0.8125)); @@ -44,7 +46,7 @@ static SHAPE4: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.1875, 0.8125, 0.8125, 0.5625, 1.), ) }); -static SHAPE5: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE5: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 0.1875, 0.5625, 0.1875); let s = Shapes::or(s, collision::box_shape(0., 0., 0.8125, 0.1875, 0.5625, 1.)); let s = Shapes::or( @@ -60,7 +62,7 @@ static SHAPE5: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.1875, 0.8125, 1., 0.5625, 1.), ) }); -static SHAPE6: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE6: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.8125, 0., 0., 1., 0.5625, 0.1875); let s = Shapes::or(s, collision::box_shape(0.8125, 0., 0.8125, 1., 0.5625, 1.)); let s = Shapes::or(s, collision::box_shape(0., 0.1875, 0., 0.8125, 0.5625, 1.)); @@ -69,380 +71,400 @@ static SHAPE6: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.5625, 0.8125), ) }); -static SHAPE7: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 0.125, 1.)); -static SHAPE8: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 0.5, 1.)); -static SHAPE9: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0.25, 1., 1., 1.)); -static SHAPE10: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 0.75, 1., 1.)); -static SHAPE11: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 1., 0.75)); -static SHAPE12: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0.25, 0., 0., 1., 1., 1.)); -static SHAPE13: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 0.75, 1.)); -static SHAPE14: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0.25, 0., 1., 1., 1.)); -static SHAPE15: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE7: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 0.125, 1.)); +static SHAPE8: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 0.5, 1.)); +static SHAPE9: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0.25, 1., 1., 1.)); +static SHAPE10: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 0.75, 1., 1.)); +static SHAPE11: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 1., 0.75)); +static SHAPE12: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.25, 0., 0., 1., 1., 1.)); +static SHAPE13: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 0.75, 1.)); +static SHAPE14: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.25, 0., 1., 1., 1.)); +static SHAPE15: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 1., 0.25); Shapes::or( s, collision::box_shape(0.375, 0.375, 0.25, 0.625, 0.625, 1.), ) }); -static SHAPE16: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE16: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 1., 0.25); Shapes::or( s, collision::box_shape(0.375, 0.375, 0.25, 0.625, 0.625, 1.25), ) }); -static SHAPE17: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE17: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.75, 0., 0., 1., 1., 1.); Shapes::or( s, collision::box_shape(0., 0.375, 0.375, 0.75, 0.625, 0.625), ) }); -static SHAPE18: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE18: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.75, 0., 0., 1., 1., 1.); Shapes::or( s, collision::box_shape(-0.25, 0.375, 0.375, 0.75, 0.625, 0.625), ) }); -static SHAPE19: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE19: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.75, 1., 1., 1.); Shapes::or( s, collision::box_shape(0.375, 0.375, 0., 0.625, 0.625, 0.75), ) }); -static SHAPE20: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE20: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.75, 1., 1., 1.); Shapes::or( s, collision::box_shape(0.375, 0.375, -0.25, 0.625, 0.625, 0.75), ) }); -static SHAPE21: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE21: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 0.25, 1., 1.); Shapes::or( s, collision::box_shape(0.25, 0.375, 0.375, 1., 0.625, 0.625), ) }); -static SHAPE22: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE22: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 0.25, 1., 1.); Shapes::or( s, collision::box_shape(0.25, 0.375, 0.375, 1.25, 0.625, 0.625), ) }); -static SHAPE23: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE23: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.375, 0., 0.375, 0.625, 1., 0.625); let s = Shapes::or(s, collision::box_shape(0., 0.75, 0., 0.375, 1., 1.)); let s = Shapes::or(s, collision::box_shape(0.375, 0.75, 0., 1., 1., 0.375)); let s = Shapes::or(s, collision::box_shape(0.375, 0.75, 0.625, 1., 1., 1.)); Shapes::or(s, collision::box_shape(0.625, 0.75, 0.375, 1., 1., 0.625)) }); -static SHAPE24: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE24: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.375, -0.25, 0.375, 0.625, 1., 0.625); let s = Shapes::or(s, collision::box_shape(0., 0.75, 0., 0.375, 1., 1.)); let s = Shapes::or(s, collision::box_shape(0.375, 0.75, 0., 1., 1., 0.375)); let s = Shapes::or(s, collision::box_shape(0.375, 0.75, 0.625, 1., 1., 1.)); Shapes::or(s, collision::box_shape(0.625, 0.75, 0.375, 1., 1., 0.625)) }); -static SHAPE25: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE25: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.25, 1.); Shapes::or( s, collision::box_shape(0.375, 0.25, 0.375, 0.625, 1., 0.625), ) }); -static SHAPE26: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE26: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.25, 1.); Shapes::or( s, collision::box_shape(0.375, 0.25, 0.375, 0.625, 1.25, 0.625), ) }); -static SHAPE27: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0., 0.3125, 0.6875, 0.375, 0.6875)); -static SHAPE28: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 0.0625, 1.)); -static SHAPE29: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE27: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0., 0.3125, 0.6875, 0.375, 0.6875)); +static SHAPE28: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 0.0625, 1.)); +static SHAPE29: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 1., 0.5); Shapes::or(s, collision::box_shape(0., 0.5, 0.5, 1., 1., 1.)) }); -static SHAPE30: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE30: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 0.5, 1., 1.); let s = Shapes::or(s, collision::box_shape(0.5, 0., 0., 1., 1., 0.5)); Shapes::or(s, collision::box_shape(0.5, 0.5, 0.5, 1., 1., 1.)) }); -static SHAPE31: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE31: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 1., 0.5); let s = Shapes::or(s, collision::box_shape(0.5, 0., 0.5, 1., 1., 1.)); Shapes::or(s, collision::box_shape(0., 0.5, 0.5, 0.5, 1., 1.)) }); -static SHAPE32: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE32: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 0.5, 1., 0.5); let s = Shapes::or(s, collision::box_shape(0., 0.5, 0.5, 1., 1., 1.)); Shapes::or(s, collision::box_shape(0.5, 0.5, 0., 1., 1., 0.5)) }); -static SHAPE33: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE33: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.5, 0., 0., 1., 1., 0.5); let s = Shapes::or(s, collision::box_shape(0., 0.5, 0., 0.5, 1., 1.)); Shapes::or(s, collision::box_shape(0.5, 0.5, 0.5, 1., 1., 1.)) }); -static SHAPE34: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE34: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.5, 1.); Shapes::or(s, collision::box_shape(0., 0.5, 0., 1., 1., 0.5)) }); -static SHAPE35: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE35: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.5, 1.); let s = Shapes::or(s, collision::box_shape(0., 0.5, 0., 0.5, 1., 1.)); Shapes::or(s, collision::box_shape(0.5, 0.5, 0., 1., 1., 0.5)) }); -static SHAPE36: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE36: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.5, 1.); let s = Shapes::or(s, collision::box_shape(0., 0.5, 0., 1., 1., 0.5)); Shapes::or(s, collision::box_shape(0.5, 0.5, 0.5, 1., 1., 1.)) }); -static SHAPE37: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE37: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.5, 1.); Shapes::or(s, collision::box_shape(0., 0.5, 0., 0.5, 1., 0.5)) }); -static SHAPE38: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE38: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.5, 1.); Shapes::or(s, collision::box_shape(0.5, 0.5, 0., 1., 1., 0.5)) }); -static SHAPE39: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE39: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.5, 1., 1., 1.); Shapes::or(s, collision::box_shape(0., 0.5, 0., 1., 1., 0.5)) }); -static SHAPE40: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE40: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.5, 1., 1., 1.); let s = Shapes::or(s, collision::box_shape(0.5, 0., 0., 1., 1., 0.5)); Shapes::or(s, collision::box_shape(0., 0.5, 0., 0.5, 1., 0.5)) }); -static SHAPE41: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE41: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 0.5, 1., 1.); let s = Shapes::or(s, collision::box_shape(0.5, 0., 0.5, 1., 1., 1.)); Shapes::or(s, collision::box_shape(0.5, 0.5, 0., 1., 1., 0.5)) }); -static SHAPE42: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE42: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.5, 0., 0.5, 1., 1., 1.); let s = Shapes::or(s, collision::box_shape(0., 0.5, 0., 0.5, 1., 1.)); Shapes::or(s, collision::box_shape(0.5, 0.5, 0., 1., 1., 0.5)) }); -static SHAPE43: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE43: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.5, 0.5, 1., 1.); let s = Shapes::or(s, collision::box_shape(0., 0.5, 0., 1., 1., 0.5)); Shapes::or(s, collision::box_shape(0.5, 0.5, 0.5, 1., 1., 1.)) }); -static SHAPE44: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE44: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.5, 1.); Shapes::or(s, collision::box_shape(0., 0.5, 0.5, 1., 1., 1.)) }); -static SHAPE45: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE45: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.5, 1.); let s = Shapes::or(s, collision::box_shape(0., 0.5, 0.5, 1., 1., 1.)); Shapes::or(s, collision::box_shape(0.5, 0.5, 0., 1., 1., 0.5)) }); -static SHAPE46: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE46: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.5, 1.); let s = Shapes::or(s, collision::box_shape(0., 0.5, 0., 0.5, 1., 1.)); Shapes::or(s, collision::box_shape(0.5, 0.5, 0.5, 1., 1., 1.)) }); -static SHAPE47: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE47: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.5, 1.); Shapes::or(s, collision::box_shape(0.5, 0.5, 0.5, 1., 1., 1.)) }); -static SHAPE48: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE48: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.5, 1.); Shapes::or(s, collision::box_shape(0., 0.5, 0.5, 0.5, 1., 1.)) }); -static SHAPE49: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE49: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 0.5, 1., 1.); Shapes::or(s, collision::box_shape(0.5, 0.5, 0., 1., 1., 1.)) }); -static SHAPE50: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE50: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.5, 1.); Shapes::or(s, collision::box_shape(0., 0.5, 0., 0.5, 1., 1.)) }); -static SHAPE51: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE51: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.5, 0., 0., 1., 1., 1.); Shapes::or(s, collision::box_shape(0., 0.5, 0., 0.5, 1., 1.)) }); -static SHAPE52: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE52: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.5, 1.); Shapes::or(s, collision::box_shape(0.5, 0.5, 0., 1., 1., 1.)) }); -static SHAPE53: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.0625, 0., 0.0625, 0.9375, 0.875, 0.9375)); -static SHAPE54: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.0625, 0., 0.0625, 1., 0.875, 0.9375)); -static SHAPE55: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0., 0.0625, 0.9375, 0.875, 0.9375)); -static SHAPE56: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.0625, 0., 0., 0.9375, 0.875, 0.9375)); -static SHAPE57: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.0625, 0., 0.0625, 0.9375, 0.875, 1.)); -static SHAPE58: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 0.25, 1.)); -static SHAPE59: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 0.375, 1.)); -static SHAPE60: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 0.625, 1.)); -static SHAPE61: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 0.875, 1.)); -static SHAPE62: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 0.9375, 1.)); -static SHAPE63: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.25, 0., 0.25, 0.75, 1., 0.75)); -static SHAPE64: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 0.1875, 1., 1.)); -static SHAPE65: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0.8125, 1., 1., 1.)); -static SHAPE66: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0.8125, 0., 0., 1., 1., 1.)); -static SHAPE67: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 1., 0.1875)); -static SHAPE68: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125)); -static SHAPE69: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0.875, 0.375, 1., 1., 0.625)); -static SHAPE70: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.375, 0.875, 0., 0.625, 1., 1.)); -static SHAPE71: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.0625, 0., 0.0625, 0.9375, 0.9375, 0.9375)); -static SHAPE72: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.0625, 0., 0.0625, 0.9375, 1., 0.9375)); -static SHAPE73: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.125, 0., 0.125, 0.875, 1., 0.875)); -static SHAPE74: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE53: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.0625, 0., 0.0625, 0.9375, 0.875, 0.9375)); +static SHAPE54: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.0625, 0., 0.0625, 1., 0.875, 0.9375)); +static SHAPE55: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0.0625, 0.9375, 0.875, 0.9375)); +static SHAPE56: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.0625, 0., 0., 0.9375, 0.875, 0.9375)); +static SHAPE57: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.0625, 0., 0.0625, 0.9375, 0.875, 1.)); +static SHAPE58: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 0.25, 1.)); +static SHAPE59: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 0.375, 1.)); +static SHAPE60: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 0.625, 1.)); +static SHAPE61: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 0.875, 1.)); +static SHAPE62: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 0.9375, 1.)); +static SHAPE63: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.25, 0., 0.25, 0.75, 1., 0.75)); +static SHAPE64: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 0.1875, 1., 1.)); +static SHAPE65: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0.8125, 1., 1., 1.)); +static SHAPE66: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.8125, 0., 0., 1., 1., 1.)); +static SHAPE67: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 1., 0.1875)); +static SHAPE68: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125)); +static SHAPE69: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.875, 0.375, 1., 1., 0.625)); +static SHAPE70: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.375, 0.875, 0., 0.625, 1., 1.)); +static SHAPE71: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.0625, 0., 0.0625, 0.9375, 0.9375, 0.9375)); +static SHAPE72: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.0625, 0., 0.0625, 0.9375, 1., 0.9375)); +static SHAPE73: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.125, 0., 0.125, 0.875, 1., 0.875)); +static SHAPE74: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.375, 1., 1.5, 0.625); let s = Shapes::or(s, collision::box_shape(0.375, 0., 0., 0.625, 1.5, 0.375)); Shapes::or(s, collision::box_shape(0.375, 0., 0.625, 0.625, 1.5, 1.)) }); -static SHAPE75: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE75: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.375, 0., 0., 0.625, 1.5, 1.); Shapes::or(s, collision::box_shape(0.625, 0., 0.375, 1., 1.5, 0.625)) }); -static SHAPE76: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE76: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.375, 1., 1.5, 0.625); Shapes::or(s, collision::box_shape(0.375, 0., 0., 0.625, 1.5, 0.375)) }); -static SHAPE77: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE77: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.375, 0., 0., 0.625, 1.5, 0.625); Shapes::or(s, collision::box_shape(0.625, 0., 0.375, 1., 1.5, 0.625)) }); -static SHAPE78: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE78: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.375, 1., 1.5, 0.625); Shapes::or(s, collision::box_shape(0.375, 0., 0.625, 0.625, 1.5, 1.)) }); -static SHAPE79: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE79: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.375, 0., 0.375, 0.625, 1.5, 1.); Shapes::or(s, collision::box_shape(0.625, 0., 0.375, 1., 1.5, 0.625)) }); -static SHAPE80: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0., 0.375, 1., 1.5, 0.625)); -static SHAPE81: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.375, 0., 0.375, 1., 1.5, 0.625)); -static SHAPE82: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE80: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0.375, 1., 1.5, 0.625)); +static SHAPE81: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.375, 0., 0.375, 1., 1.5, 0.625)); +static SHAPE82: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.375, 0.625, 1.5, 0.625); let s = Shapes::or(s, collision::box_shape(0.375, 0., 0., 0.625, 1.5, 0.375)); Shapes::or(s, collision::box_shape(0.375, 0., 0.625, 0.625, 1.5, 1.)) }); -static SHAPE83: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.375, 0., 0., 0.625, 1.5, 1.)); -static SHAPE84: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE83: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.375, 0., 0., 0.625, 1.5, 1.)); +static SHAPE84: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.375, 0.625, 1.5, 0.625); Shapes::or(s, collision::box_shape(0.375, 0., 0., 0.625, 1.5, 0.375)) }); -static SHAPE85: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.375, 0., 0., 0.625, 1.5, 0.625)); -static SHAPE86: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE85: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.375, 0., 0., 0.625, 1.5, 0.625)); +static SHAPE86: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.375, 0.625, 1.5, 0.625); Shapes::or(s, collision::box_shape(0.375, 0., 0.625, 0.625, 1.5, 1.)) }); -static SHAPE87: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.375, 0., 0.375, 0.625, 1.5, 1.)); -static SHAPE88: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0., 0.375, 0.625, 1.5, 0.625)); -static SHAPE89: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.375, 0., 0.375, 0.625, 1.5, 0.625)); -static SHAPE90: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.375, 0., 0.375, 0.625, 1., 0.625)); -static SHAPE91: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.0625, 0., 0.0625, 0.9375, 0.5, 0.9375)); -static SHAPE92: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0., 0.0625, 0.9375, 0.5, 0.9375)); -static SHAPE93: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0., 0.0625, 0.9375, 0.5, 0.9375)); -static SHAPE94: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.4375, 0., 0.0625, 0.9375, 0.5, 0.9375)); -static SHAPE95: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.5625, 0., 0.0625, 0.9375, 0.5, 0.9375)); -static SHAPE96: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.6875, 0., 0.0625, 0.9375, 0.5, 0.9375)); -static SHAPE97: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.8125, 0., 0.0625, 0.9375, 0.5, 0.9375)); -static SHAPE98: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0.8125, 0., 1., 1., 1.)); -static SHAPE99: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 0.1875, 1.)); -static SHAPE100: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE87: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.375, 0., 0.375, 0.625, 1.5, 1.)); +static SHAPE88: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0.375, 0.625, 1.5, 0.625)); +static SHAPE89: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.375, 0., 0.375, 0.625, 1.5, 0.625)); +static SHAPE90: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.375, 0., 0.375, 0.625, 1., 0.625)); +static SHAPE91: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.0625, 0., 0.0625, 0.9375, 0.5, 0.9375)); +static SHAPE92: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0., 0.0625, 0.9375, 0.5, 0.9375)); +static SHAPE93: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0., 0.0625, 0.9375, 0.5, 0.9375)); +static SHAPE94: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.4375, 0., 0.0625, 0.9375, 0.5, 0.9375)); +static SHAPE95: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.5625, 0., 0.0625, 0.9375, 0.5, 0.9375)); +static SHAPE96: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.6875, 0., 0.0625, 0.9375, 0.5, 0.9375)); +static SHAPE97: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.8125, 0., 0.0625, 0.9375, 0.5, 0.9375)); +static SHAPE98: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.8125, 0., 1., 1., 1.)); +static SHAPE99: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 0.1875, 1.)); +static SHAPE100: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.4375, 1., 1., 0.5625); let s = Shapes::or(s, collision::box_shape(0.4375, 0., 0., 0.5625, 1., 0.4375)); Shapes::or(s, collision::box_shape(0.4375, 0., 0.5625, 0.5625, 1., 1.)) }); -static SHAPE101: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE101: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.4375, 0., 0., 0.5625, 1., 1.); Shapes::or(s, collision::box_shape(0.5625, 0., 0.4375, 1., 1., 0.5625)) }); -static SHAPE102: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE102: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.4375, 1., 1., 0.5625); Shapes::or(s, collision::box_shape(0.4375, 0., 0., 0.5625, 1., 0.4375)) }); -static SHAPE103: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE103: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.4375, 0., 0., 0.5625, 1., 0.5625); Shapes::or(s, collision::box_shape(0.5625, 0., 0.4375, 1., 1., 0.5625)) }); -static SHAPE104: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE104: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.4375, 1., 1., 0.5625); Shapes::or(s, collision::box_shape(0.4375, 0., 0.5625, 0.5625, 1., 1.)) }); -static SHAPE105: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE105: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.4375, 0., 0.4375, 0.5625, 1., 1.); Shapes::or(s, collision::box_shape(0.5625, 0., 0.4375, 1., 1., 0.5625)) }); -static SHAPE106: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0., 0.4375, 1., 1., 0.5625)); -static SHAPE107: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.4375, 0., 0.4375, 1., 1., 0.5625)); -static SHAPE108: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE106: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0.4375, 1., 1., 0.5625)); +static SHAPE107: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.4375, 0., 0.4375, 1., 1., 0.5625)); +static SHAPE108: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.4375, 0.5625, 1., 0.5625); let s = Shapes::or(s, collision::box_shape(0.4375, 0., 0., 0.5625, 1., 0.4375)); Shapes::or(s, collision::box_shape(0.4375, 0., 0.5625, 0.5625, 1., 1.)) }); -static SHAPE109: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.4375, 0., 0., 0.5625, 1., 1.)); -static SHAPE110: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE109: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.4375, 0., 0., 0.5625, 1., 1.)); +static SHAPE110: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.4375, 0.5625, 1., 0.5625); Shapes::or(s, collision::box_shape(0.4375, 0., 0., 0.5625, 1., 0.4375)) }); -static SHAPE111: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.4375, 0., 0., 0.5625, 1., 0.5625)); -static SHAPE112: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE111: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.4375, 0., 0., 0.5625, 1., 0.5625)); +static SHAPE112: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.4375, 0.5625, 1., 0.5625); Shapes::or(s, collision::box_shape(0.4375, 0., 0.5625, 0.5625, 1., 1.)) }); -static SHAPE113: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.4375, 0., 0.4375, 0.5625, 1., 1.)); -static SHAPE114: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0., 0.4375, 0.5625, 1., 0.5625)); -static SHAPE115: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0.40625, 0.40625, 1., 0.59375, 0.59375)); -static SHAPE116: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.40625, 0., 0.40625, 0.59375, 1., 0.59375)); -static SHAPE117: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.40625, 0.40625, 0., 0.59375, 0.59375, 1.)); -static SHAPE118: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.4375, 0., 0.4375, 0.5625, 0.375, 0.5625)); -static SHAPE119: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.0625, 0., 0.0625, 0.9375, 0.09375, 0.9375)); -static SHAPE120: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE113: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.4375, 0., 0.4375, 0.5625, 1., 1.)); +static SHAPE114: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0.4375, 0.5625, 1., 0.5625)); +static SHAPE115: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.40625, 0.40625, 1., 0.59375, 0.59375)); +static SHAPE116: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.40625, 0., 0.40625, 0.59375, 1., 0.59375)); +static SHAPE117: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.40625, 0.40625, 0., 0.59375, 0.59375, 1.)); +static SHAPE118: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.4375, 0., 0.4375, 0.5625, 0.375, 0.5625)); +static SHAPE119: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.0625, 0., 0.0625, 0.9375, 0.09375, 0.9375)); +static SHAPE120: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.0625, 0., 0.0625, 0.9375, 0.125, 0.9375); Shapes::or( s, collision::box_shape(0.4375, 0.125, 0.4375, 0.5625, 0.875, 0.5625), ) }); -static SHAPE121: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE121: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 0.125, 1., 0.25); let s = Shapes::or(s, collision::box_shape(0., 0., 0.75, 0.125, 1., 1.)); let s = Shapes::or(s, collision::box_shape(0.125, 0., 0., 0.25, 1., 0.125)); @@ -465,191 +487,194 @@ static SHAPE121: Lazy<VoxelShape> = Lazy::new(|| { let s = Shapes::or(s, collision::box_shape(0., 0.25, 0.25, 0.125, 1., 0.75)); Shapes::or(s, collision::box_shape(0.875, 0.25, 0.25, 1., 1., 0.75)) }); -static SHAPE122: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE122: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.8125, 1.); Shapes::or(s, collision::box_shape(0.25, 0.8125, 0.25, 0.75, 1., 0.75)) }); -static SHAPE123: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 0.8125, 1.)); -static SHAPE124: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.375, 0.4375, 0.0625, 0.625, 0.75, 0.3125)); -static SHAPE125: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.375, 0.4375, 0.6875, 0.625, 0.75, 0.9375)); -static SHAPE126: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.0625, 0.4375, 0.375, 0.3125, 0.75, 0.625)); -static SHAPE127: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.6875, 0.4375, 0.375, 0.9375, 0.75, 0.625)); -static SHAPE128: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0.3125, 0.0625, 0.6875, 0.75, 0.4375)); -static SHAPE129: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0.3125, 0.5625, 0.6875, 0.75, 0.9375)); -static SHAPE130: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.0625, 0.3125, 0.3125, 0.4375, 0.75, 0.6875)); -static SHAPE131: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.5625, 0.3125, 0.3125, 0.9375, 0.75, 0.6875)); -static SHAPE132: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.25, 0.1875, 0.0625, 0.75, 0.75, 0.5625)); -static SHAPE133: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.25, 0.1875, 0.4375, 0.75, 0.75, 0.9375)); -static SHAPE134: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.0625, 0.1875, 0.25, 0.5625, 0.75, 0.75)); -static SHAPE135: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.4375, 0.1875, 0.25, 0.9375, 0.75, 0.75)); -static SHAPE136: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.75)); -static SHAPE137: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE123: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 0.8125, 1.)); +static SHAPE124: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.375, 0.4375, 0.0625, 0.625, 0.75, 0.3125)); +static SHAPE125: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.375, 0.4375, 0.6875, 0.625, 0.75, 0.9375)); +static SHAPE126: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.0625, 0.4375, 0.375, 0.3125, 0.75, 0.625)); +static SHAPE127: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.6875, 0.4375, 0.375, 0.9375, 0.75, 0.625)); +static SHAPE128: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0.3125, 0.0625, 0.6875, 0.75, 0.4375)); +static SHAPE129: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0.3125, 0.5625, 0.6875, 0.75, 0.9375)); +static SHAPE130: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.0625, 0.3125, 0.3125, 0.4375, 0.75, 0.6875)); +static SHAPE131: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.5625, 0.3125, 0.3125, 0.9375, 0.75, 0.6875)); +static SHAPE132: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.25, 0.1875, 0.0625, 0.75, 0.75, 0.5625)); +static SHAPE133: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.25, 0.1875, 0.4375, 0.75, 0.75, 0.9375)); +static SHAPE134: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.0625, 0.1875, 0.25, 0.5625, 0.75, 0.75)); +static SHAPE135: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.4375, 0.1875, 0.25, 0.9375, 0.75, 0.75)); +static SHAPE136: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.75)); +static SHAPE137: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.3125, 0.75, 1.5, 0.6875); let s = Shapes::or(s, collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.3125)); Shapes::or(s, collision::box_shape(0.25, 0., 0.6875, 0.75, 1.5, 0.75)) }); -static SHAPE138: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0., 0.3125, 0.6875, 1.5, 0.6875)); -static SHAPE139: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE138: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0.3125, 0.6875, 1.5, 0.6875)); +static SHAPE139: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.75); Shapes::or(s, collision::box_shape(0.3125, 0., 0.75, 0.6875, 1.5, 1.)) }); -static SHAPE140: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE140: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.3125, 0.75, 1.5, 0.6875); let s = Shapes::or(s, collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.3125)); let s = Shapes::or(s, collision::box_shape(0.25, 0., 0.6875, 0.75, 1.5, 0.75)); Shapes::or(s, collision::box_shape(0.3125, 0., 0.75, 0.6875, 1.5, 1.)) }); -static SHAPE141: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0., 0.3125, 0.6875, 1.5, 1.)); -static SHAPE142: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE141: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0., 0.3125, 0.6875, 1.5, 1.)); +static SHAPE142: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.3125, 0.6875, 1.5, 0.6875); Shapes::or(s, collision::box_shape(0.3125, 0., 0.6875, 0.6875, 1.5, 1.)) }); -static SHAPE143: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE143: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.75); Shapes::or(s, collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.25)) }); -static SHAPE144: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE144: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.3125, 0.75, 1.5, 0.6875); let s = Shapes::or(s, collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.3125)); let s = Shapes::or(s, collision::box_shape(0.25, 0., 0.6875, 0.75, 1.5, 0.75)); Shapes::or(s, collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.25)) }); -static SHAPE145: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.6875)); -static SHAPE146: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE145: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.6875)); +static SHAPE146: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.3125, 0.6875, 1.5, 0.6875); Shapes::or(s, collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.3125)) }); -static SHAPE147: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE147: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.75); let s = Shapes::or(s, collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.25)); Shapes::or(s, collision::box_shape(0.3125, 0., 0.75, 0.6875, 1.5, 1.)) }); -static SHAPE148: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE148: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.3125, 0.75, 1.5, 0.6875); let s = Shapes::or(s, collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.3125)); let s = Shapes::or(s, collision::box_shape(0.25, 0., 0.6875, 0.75, 1.5, 0.75)); let s = Shapes::or(s, collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.25)); Shapes::or(s, collision::box_shape(0.3125, 0., 0.75, 0.6875, 1.5, 1.)) }); -static SHAPE149: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 1.)); -static SHAPE150: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE149: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 1.)); +static SHAPE150: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.3125, 0.6875, 1.5, 0.6875); let s = Shapes::or(s, collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.3125)); Shapes::or(s, collision::box_shape(0.3125, 0., 0.6875, 0.6875, 1.5, 1.)) }); -static SHAPE151: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE151: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.75); Shapes::or(s, collision::box_shape(0.75, 0., 0.3125, 1., 1.5, 0.6875)) }); -static SHAPE152: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE152: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.3125, 1., 1.5, 0.6875); let s = Shapes::or(s, collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.3125)); Shapes::or(s, collision::box_shape(0.25, 0., 0.6875, 0.75, 1.5, 0.75)) }); -static SHAPE153: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0., 0.3125, 1., 1.5, 0.6875)); -static SHAPE154: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0., 0.3125, 1., 1.5, 0.6875)); -static SHAPE155: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE153: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0., 0.3125, 1., 1.5, 0.6875)); +static SHAPE154: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0.3125, 1., 1.5, 0.6875)); +static SHAPE155: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.75); let s = Shapes::or(s, collision::box_shape(0.3125, 0., 0.75, 0.6875, 1.5, 1.)); Shapes::or(s, collision::box_shape(0.75, 0., 0.3125, 1., 1.5, 0.6875)) }); -static SHAPE156: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE156: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.3125, 1., 1.5, 0.6875); let s = Shapes::or(s, collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.3125)); let s = Shapes::or(s, collision::box_shape(0.25, 0., 0.6875, 0.75, 1.5, 0.75)); Shapes::or(s, collision::box_shape(0.3125, 0., 0.75, 0.6875, 1.5, 1.)) }); -static SHAPE157: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE157: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.3125, 0., 0.3125, 0.6875, 1.5, 1.); Shapes::or(s, collision::box_shape(0.6875, 0., 0.3125, 1., 1.5, 0.6875)) }); -static SHAPE158: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE158: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.3125, 1., 1.5, 0.6875); Shapes::or(s, collision::box_shape(0.3125, 0., 0.6875, 0.6875, 1.5, 1.)) }); -static SHAPE159: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE159: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.75); let s = Shapes::or(s, collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.25)); Shapes::or(s, collision::box_shape(0.75, 0., 0.3125, 1., 1.5, 0.6875)) }); -static SHAPE160: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE160: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.3125, 1., 1.5, 0.6875); let s = Shapes::or(s, collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.3125)); let s = Shapes::or(s, collision::box_shape(0.25, 0., 0.6875, 0.75, 1.5, 0.75)); Shapes::or(s, collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.25)) }); -static SHAPE161: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE161: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.6875); Shapes::or(s, collision::box_shape(0.6875, 0., 0.3125, 1., 1.5, 0.6875)) }); -static SHAPE162: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE162: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.3125, 1., 1.5, 0.6875); Shapes::or(s, collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.3125)) }); -static SHAPE163: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE163: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.75); let s = Shapes::or(s, collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.25)); let s = Shapes::or(s, collision::box_shape(0.3125, 0., 0.75, 0.6875, 1.5, 1.)); Shapes::or(s, collision::box_shape(0.75, 0., 0.3125, 1., 1.5, 0.6875)) }); -static SHAPE164: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE164: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.3125, 1., 1.5, 0.6875); let s = Shapes::or(s, collision::box_shape(0.25, 0., 0.25, 0.75, 1.5, 0.3125)); let s = Shapes::or(s, collision::box_shape(0.25, 0., 0.6875, 0.75, 1.5, 0.75)); let s = Shapes::or(s, collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.25)); Shapes::or(s, collision::box_shape(0.3125, 0., 0.75, 0.6875, 1.5, 1.)) }); -static SHAPE165: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE165: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 1.); Shapes::or(s, collision::box_shape(0.6875, 0., 0.3125, 1., 1.5, 0.6875)) }); -static SHAPE166: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE166: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0.3125, 1., 1.5, 0.6875); let s = Shapes::or(s, collision::box_shape(0.3125, 0., 0., 0.6875, 1.5, 0.3125)); Shapes::or(s, collision::box_shape(0.3125, 0., 0.6875, 0.6875, 1.5, 1.)) }); -static SHAPE167: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 0.4375, 1.)); -static SHAPE168: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0., 1., 0.5625, 1.)); -static SHAPE169: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.25, 0., 0.25, 0.75, 0.5, 0.75)); -static SHAPE170: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.25, 0.25, 0.5, 0.75, 0.75, 1.)); -static SHAPE171: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.25, 0.25, 0., 0.75, 0.75, 0.5)); -static SHAPE172: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.5, 0.25, 0.25, 1., 0.75, 0.75)); -static SHAPE173: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0.25, 0.25, 0.5, 0.75, 0.75)); -static SHAPE174: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.5, 0.8125)); -static SHAPE175: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.25, 0.5, 0.8125, 0.75, 1.)); -static SHAPE176: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.25, 0., 0.8125, 0.75, 0.5)); -static SHAPE177: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.5, 0.25, 0.1875, 1., 0.75, 0.8125)); -static SHAPE178: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0.25, 0.1875, 0.5, 0.75, 0.8125)); -static SHAPE179: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE167: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 0.4375, 1.)); +static SHAPE168: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0., 1., 0.5625, 1.)); +static SHAPE169: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.25, 0., 0.25, 0.75, 0.5, 0.75)); +static SHAPE170: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.25, 0.25, 0.5, 0.75, 0.75, 1.)); +static SHAPE171: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.25, 0.25, 0., 0.75, 0.75, 0.5)); +static SHAPE172: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.5, 0.25, 0.25, 1., 0.75, 0.75)); +static SHAPE173: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.25, 0.25, 0.5, 0.75, 0.75)); +static SHAPE174: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.5, 0.8125)); +static SHAPE175: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.25, 0.5, 0.8125, 0.75, 1.)); +static SHAPE176: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.25, 0., 0.8125, 0.75, 0.5)); +static SHAPE177: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.5, 0.25, 0.1875, 1., 0.75, 0.8125)); +static SHAPE178: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.25, 0.1875, 0.5, 0.75, 0.8125)); +static SHAPE179: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.125, 0., 0.125, 0.875, 0.25, 0.875); let s = Shapes::or( s, @@ -667,7 +692,7 @@ static SHAPE179: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.625, 0.625, 0.25, 0.8125, 1., 0.75), ) }); -static SHAPE180: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE180: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.125, 0., 0.125, 0.875, 0.25, 0.875); let s = Shapes::or( s, @@ -682,7 +707,7 @@ static SHAPE180: Lazy<VoxelShape> = Lazy::new(|| { let s = Shapes::or(s, collision::box_shape(0.25, 0.625, 0.625, 1., 1., 0.8125)); Shapes::or(s, collision::box_shape(0.75, 0.625, 0.375, 1., 1., 0.625)) }); -static SHAPE181: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE181: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.375, 0., 0.375, 0.625, 0.6875, 0.625); let s = Shapes::or( s, @@ -709,7 +734,7 @@ static SHAPE181: Lazy<VoxelShape> = Lazy::new(|| { let s = Shapes::or(s, collision::box_shape(0.125, 0.6875, 0.875, 1., 1., 1.)); Shapes::or(s, collision::box_shape(0.875, 0.6875, 0.125, 1., 1., 0.875)) }); -static SHAPE182: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE182: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0.25, 0.25, 0.75, 0.6875, 0.75); let s = Shapes::or(s, collision::box_shape(0.375, 0.25, 0., 0.625, 0.5, 0.25)); let s = Shapes::or(s, collision::box_shape(0., 0.625, 0., 0.25, 0.6875, 1.)); @@ -721,7 +746,7 @@ static SHAPE182: Lazy<VoxelShape> = Lazy::new(|| { let s = Shapes::or(s, collision::box_shape(0.125, 0.6875, 0.875, 1., 1., 1.)); Shapes::or(s, collision::box_shape(0.875, 0.6875, 0.125, 1., 1., 0.875)) }); -static SHAPE183: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE183: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0.25, 0.25, 0.75, 0.6875, 0.75); let s = Shapes::or(s, collision::box_shape(0.375, 0.25, 0.75, 0.625, 0.5, 1.)); let s = Shapes::or(s, collision::box_shape(0., 0.625, 0., 0.25, 0.6875, 1.)); @@ -733,7 +758,7 @@ static SHAPE183: Lazy<VoxelShape> = Lazy::new(|| { let s = Shapes::or(s, collision::box_shape(0.125, 0.6875, 0.875, 1., 1., 1.)); Shapes::or(s, collision::box_shape(0.875, 0.6875, 0.125, 1., 1., 0.875)) }); -static SHAPE184: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE184: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.25, 0.375, 0.75, 0.5, 0.625); let s = Shapes::or( s, @@ -756,7 +781,7 @@ static SHAPE184: Lazy<VoxelShape> = Lazy::new(|| { let s = Shapes::or(s, collision::box_shape(0.125, 0.6875, 0.875, 1., 1., 1.)); Shapes::or(s, collision::box_shape(0.875, 0.6875, 0.125, 1., 1., 0.875)) }); -static SHAPE185: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE185: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0.25, 0.25, 0.75, 0.6875, 0.75); let s = Shapes::or(s, collision::box_shape(0.75, 0.25, 0.375, 1., 0.5, 0.625)); let s = Shapes::or(s, collision::box_shape(0., 0.625, 0., 0.25, 0.6875, 1.)); @@ -768,12 +793,13 @@ static SHAPE185: Lazy<VoxelShape> = Lazy::new(|| { let s = Shapes::or(s, collision::box_shape(0.125, 0.6875, 0.875, 1., 1., 1.)); Shapes::or(s, collision::box_shape(0.875, 0.6875, 0.125, 1., 1., 0.875)) }); -static SHAPE186: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0.5, 0., 1., 1., 1.)); -static SHAPE187: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.375, 0.375, 0., 0.625, 0.625, 1.)); -static SHAPE188: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0.375, 0.375, 1., 0.625, 0.625)); -static SHAPE189: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE186: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.5, 0., 1., 1., 1.)); +static SHAPE187: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.375, 0.375, 0., 0.625, 0.625, 1.)); +static SHAPE188: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.375, 0.375, 1., 0.625, 0.625)); +static SHAPE189: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); let s = Shapes::or( s, @@ -792,7 +818,7 @@ static SHAPE189: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE190: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE190: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); let s = Shapes::or( s, @@ -807,7 +833,7 @@ static SHAPE190: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE191: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE191: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -826,7 +852,7 @@ static SHAPE191: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE192: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE192: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -841,7 +867,7 @@ static SHAPE192: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE193: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE193: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); let s = Shapes::or( s, @@ -856,7 +882,7 @@ static SHAPE193: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE194: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE194: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); let s = Shapes::or( s, @@ -867,7 +893,7 @@ static SHAPE194: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE195: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE195: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -882,7 +908,7 @@ static SHAPE195: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE196: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE196: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -893,7 +919,7 @@ static SHAPE196: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE197: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE197: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); let s = Shapes::or( s, @@ -908,7 +934,7 @@ static SHAPE197: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE198: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE198: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); let s = Shapes::or( s, @@ -919,7 +945,7 @@ static SHAPE198: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE199: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE199: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -934,7 +960,7 @@ static SHAPE199: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE200: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE200: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -945,7 +971,7 @@ static SHAPE200: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE201: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE201: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); let s = Shapes::or( s, @@ -956,14 +982,14 @@ static SHAPE201: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE202: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE202: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); Shapes::or( s, collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE203: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE203: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -974,14 +1000,14 @@ static SHAPE203: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE204: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE204: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); Shapes::or( s, collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE205: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE205: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); let s = Shapes::or( s, @@ -996,7 +1022,7 @@ static SHAPE205: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.1875, 0.8125, 0.8125, 0.8125, 1.), ) }); -static SHAPE206: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE206: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); let s = Shapes::or( s, @@ -1007,7 +1033,7 @@ static SHAPE206: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.1875, 0.8125, 0.8125, 0.8125, 1.), ) }); -static SHAPE207: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE207: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -1022,7 +1048,7 @@ static SHAPE207: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.1875, 0.8125, 0.8125, 0.8125, 1.), ) }); -static SHAPE208: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE208: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -1033,7 +1059,7 @@ static SHAPE208: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.1875, 0.8125, 0.8125, 0.8125, 1.), ) }); -static SHAPE209: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE209: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); let s = Shapes::or( s, @@ -1044,14 +1070,14 @@ static SHAPE209: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.1875), ) }); -static SHAPE210: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE210: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); Shapes::or( s, collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.1875), ) }); -static SHAPE211: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE211: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -1062,14 +1088,14 @@ static SHAPE211: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.1875), ) }); -static SHAPE212: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE212: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); Shapes::or( s, collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.1875), ) }); -static SHAPE213: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE213: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); let s = Shapes::or( s, @@ -1080,14 +1106,14 @@ static SHAPE213: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.1875, 0.8125, 0.8125, 0.8125, 1.), ) }); -static SHAPE214: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE214: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); Shapes::or( s, collision::box_shape(0.1875, 0.1875, 0.8125, 0.8125, 0.8125, 1.), ) }); -static SHAPE215: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE215: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -1098,30 +1124,30 @@ static SHAPE215: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.1875, 0.8125, 0.8125, 0.8125, 1.), ) }); -static SHAPE216: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE216: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); Shapes::or( s, collision::box_shape(0.1875, 0.1875, 0.8125, 0.8125, 0.8125, 1.), ) }); -static SHAPE217: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE217: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 1., 0.8125); Shapes::or( s, collision::box_shape(0., 0.1875, 0.1875, 0.1875, 0.8125, 0.8125), ) }); -static SHAPE218: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE218: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125); Shapes::or( s, collision::box_shape(0., 0.1875, 0.1875, 0.1875, 0.8125, 0.8125), ) }); -static SHAPE219: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125)); -static SHAPE220: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE219: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.8125, 0.8125)); +static SHAPE220: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.1875, 0.1875, 1., 0.8125, 0.8125); let s = Shapes::or( s, @@ -1136,7 +1162,7 @@ static SHAPE220: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE221: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE221: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 1.); let s = Shapes::or( s, @@ -1147,7 +1173,7 @@ static SHAPE221: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE222: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE222: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.1875, 0.1875, 1., 0.8125, 0.8125); let s = Shapes::or( s, @@ -1158,14 +1184,14 @@ static SHAPE222: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.1875, 0.8125, 0.8125, 0.8125, 1.), ) }); -static SHAPE223: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE223: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 1.); Shapes::or( s, collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE224: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE224: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.1875, 0.1875, 1., 0.8125, 0.8125); let s = Shapes::or( s, @@ -1176,7 +1202,7 @@ static SHAPE224: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE225: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE225: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -1187,21 +1213,21 @@ static SHAPE225: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE226: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE226: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.1875, 0.1875, 1., 0.8125, 0.8125); Shapes::or( s, collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.1875), ) }); -static SHAPE227: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE227: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.8125); Shapes::or( s, collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE228: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE228: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.1875, 0.1875, 1., 0.8125, 0.8125); let s = Shapes::or( s, @@ -1212,7 +1238,7 @@ static SHAPE228: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE229: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE229: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0.1875, 0.1875, 0.8125, 0.8125, 1.); let s = Shapes::or( s, @@ -1223,39 +1249,39 @@ static SHAPE229: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE230: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE230: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.1875, 0.1875, 1., 0.8125, 0.8125); Shapes::or( s, collision::box_shape(0.1875, 0.1875, 0.8125, 0.8125, 0.8125, 1.), ) }); -static SHAPE231: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE231: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0.1875, 0.1875, 0.8125, 0.8125, 1.); Shapes::or( s, collision::box_shape(0.8125, 0.1875, 0.1875, 1., 0.8125, 0.8125), ) }); -static SHAPE232: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE232: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.1875, 0.1875, 1., 0.8125, 0.8125); Shapes::or( s, collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE233: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE233: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0.1875, 0.1875, 1., 0.8125, 0.8125); Shapes::or( s, collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE234: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0.1875, 0.1875, 1., 0.8125, 0.8125)); -static SHAPE235: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.1875, 0.1875, 1., 0.8125, 0.8125)); -static SHAPE236: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE234: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.1875, 0.1875, 1., 0.8125, 0.8125)); +static SHAPE235: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.1875, 0.1875, 1., 0.8125, 0.8125)); +static SHAPE236: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.1875, 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -1270,14 +1296,14 @@ static SHAPE236: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE237: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE237: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 1.); Shapes::or( s, collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE238: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE238: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.1875, 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -1288,9 +1314,9 @@ static SHAPE238: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.1875, 0.8125, 0.8125, 0.8125, 1.), ) }); -static SHAPE239: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 1.)); -static SHAPE240: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE239: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 1.)); +static SHAPE240: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.1875, 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -1301,23 +1327,23 @@ static SHAPE240: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE241: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE241: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.8125); Shapes::or( s, collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE242: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE242: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.1875, 0.1875, 0.8125, 0.8125, 0.8125); Shapes::or( s, collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.1875), ) }); -static SHAPE243: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.8125)); -static SHAPE244: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE243: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.8125)); +static SHAPE244: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.1875, 0.1875, 0.8125, 0.8125, 0.8125); let s = Shapes::or( s, @@ -1328,58 +1354,58 @@ static SHAPE244: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE245: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE245: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.1875, 0.1875, 0.1875, 0.8125, 0.8125, 1.); Shapes::or( s, collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE246: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE246: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.1875, 0.1875, 0.8125, 0.8125, 0.8125); Shapes::or( s, collision::box_shape(0.1875, 0.1875, 0.8125, 0.8125, 0.8125, 1.), ) }); -static SHAPE247: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.1875, 0.1875, 0.8125, 0.8125, 1.)); -static SHAPE248: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE247: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.1875, 0.1875, 0.8125, 0.8125, 1.)); +static SHAPE248: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.1875, 0.1875, 0.8125, 0.8125, 0.8125); Shapes::or( s, collision::box_shape(0.1875, 0.8125, 0.1875, 0.8125, 1., 0.8125), ) }); -static SHAPE249: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.1875, 0.1875, 0.8125, 1., 0.8125)); -static SHAPE250: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0.1875, 0.1875, 0.8125, 0.8125, 0.8125)); -static SHAPE251: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.1875, 0.1875, 0.8125, 0.8125, 0.8125)); -static SHAPE252: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, -0.0625, 0.3125, 0.6875, 0.1875, 0.6875)); -static SHAPE253: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, -0.0625, 0.1875, 0.8125, 0.3125, 0.8125)); -static SHAPE254: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0.3125, 0.3125, 0.6875, 0.6875, 0.6875)); -static SHAPE255: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.75, 0.4375, 0.75)); -static SHAPE256: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.0625, 0., 0.0625, 0.9375, 0.4375, 0.9375)); -static SHAPE257: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.0625, 0., 0.125, 0.9375, 1., 0.875)); -static SHAPE258: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.375, 0., 0.375, 0.625, 0.375, 0.625)); -static SHAPE259: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.375, 0.8125)); -static SHAPE260: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.125, 0., 0.125, 0.875, 0.375, 0.875)); -static SHAPE261: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.125, 0., 0.125, 0.875, 0.4375, 0.875)); -static SHAPE262: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0., 0.3125, 0.6875, 1., 0.6875)); -static SHAPE263: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE249: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.1875, 0.1875, 0.8125, 1., 0.8125)); +static SHAPE250: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.1875, 0.1875, 0.8125, 0.8125, 0.8125)); +static SHAPE251: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.1875, 0.1875, 0.8125, 0.8125, 0.8125)); +static SHAPE252: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, -0.0625, 0.3125, 0.6875, 0.1875, 0.6875)); +static SHAPE253: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, -0.0625, 0.1875, 0.8125, 0.3125, 0.8125)); +static SHAPE254: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0.3125, 0.3125, 0.6875, 0.6875, 0.6875)); +static SHAPE255: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.75, 0.4375, 0.75)); +static SHAPE256: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.0625, 0., 0.0625, 0.9375, 0.4375, 0.9375)); +static SHAPE257: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.0625, 0., 0.125, 0.9375, 1., 0.875)); +static SHAPE258: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.375, 0., 0.375, 0.625, 0.375, 0.625)); +static SHAPE259: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.375, 0.8125)); +static SHAPE260: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.125, 0., 0.125, 0.875, 0.375, 0.875)); +static SHAPE261: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.125, 0., 0.125, 0.875, 0.4375, 0.875)); +static SHAPE262: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0., 0.3125, 0.6875, 1., 0.6875)); +static SHAPE263: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 0.125, 1., 0.125); let s = Shapes::or(s, collision::box_shape(0., 0., 0.875, 0.125, 1., 1.)); let s = Shapes::or(s, collision::box_shape(0.875, 0., 0., 1., 1., 0.125)); @@ -1388,7 +1414,7 @@ static SHAPE263: Lazy<VoxelShape> = Lazy::new(|| { let s = Shapes::or(s, collision::box_shape(0.125, 0.875, 0., 0.875, 1., 0.125)); Shapes::or(s, collision::box_shape(0.125, 0.875, 0.875, 0.875, 1., 1.)) }); -static SHAPE264: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE264: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.125, 0., 0.375, 0.25, 0.8125, 0.625); let s = Shapes::or( s, @@ -1412,7 +1438,7 @@ static SHAPE264: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.75, 0.4375, 0.625, 0.875, 0.8125, 0.6875), ) }); -static SHAPE265: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE265: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.375, 0., 0.125, 0.625, 0.8125, 0.25); let s = Shapes::or( s, @@ -1436,7 +1462,7 @@ static SHAPE265: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.625, 0.4375, 0.75, 0.6875, 0.8125, 0.875), ) }); -static SHAPE266: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE266: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0.125, 0., 0.75, 0.875, 0.75); let s = Shapes::or( s, @@ -1455,7 +1481,7 @@ static SHAPE266: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.75, 0.375, 0.5625, 0.875, 0.625, 1.), ) }); -static SHAPE267: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE267: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0.125, 0.25, 0.75, 0.875, 1.); let s = Shapes::or( s, @@ -1474,7 +1500,7 @@ static SHAPE267: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.75, 0.375, 0., 0.875, 0.625, 0.4375), ) }); -static SHAPE268: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE268: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0.125, 0.25, 0.75, 0.875, 0.75); let s = Shapes::or( s, @@ -1493,7 +1519,7 @@ static SHAPE268: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.5625, 0.375, 0.75, 1., 0.625, 0.875), ) }); -static SHAPE269: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE269: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0.125, 0.25, 1., 0.875, 0.75); let s = Shapes::or( s, @@ -1512,7 +1538,7 @@ static SHAPE269: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0., 0.375, 0.75, 0.4375, 0.625, 0.875), ) }); -static SHAPE270: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE270: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0., 0.125, 0.75, 0.75, 0.875); let s = Shapes::or( s, @@ -1531,7 +1557,7 @@ static SHAPE270: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.75, 0.5625, 0.375, 0.875, 1., 0.625), ) }); -static SHAPE271: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE271: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.125, 0., 0.25, 0.875, 0.75, 0.75); let s = Shapes::or( s, @@ -1550,16 +1576,18 @@ static SHAPE271: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.375, 0.5625, 0.75, 0.625, 1., 0.875), ) }); -static SHAPE272: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE272: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.125, 1.); Shapes::or( s, collision::box_shape(0.25, 0.125, 0.25, 0.75, 0.875, 0.75), ) }); -static SHAPE273: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0., 0., 0.25, 1., 1., 0.75)); -static SHAPE274: Lazy<VoxelShape> = Lazy::new(|| collision::box_shape(0.25, 0., 0., 0.75, 1., 1.)); -static SHAPE275: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE273: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0., 0.25, 1., 1., 0.75)); +static SHAPE274: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.25, 0., 0., 0.75, 1., 1.)); +static SHAPE275: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0.25, 0.25, 0.75, 0.375, 0.75); let s = Shapes::or( s, @@ -1570,7 +1598,7 @@ static SHAPE275: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.4375, 0.8125, 0.4375, 0.5625, 1., 0.5625), ) }); -static SHAPE276: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE276: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0.25, 0.25, 0.75, 0.375, 0.75); let s = Shapes::or( s, @@ -1581,7 +1609,7 @@ static SHAPE276: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.4375, 0.8125, 0., 0.5625, 0.9375, 0.8125), ) }); -static SHAPE277: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE277: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0.25, 0.25, 0.75, 0.375, 0.75); let s = Shapes::or( s, @@ -1592,7 +1620,7 @@ static SHAPE277: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.4375, 0.8125, 0.1875, 0.5625, 0.9375, 1.), ) }); -static SHAPE278: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE278: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0.25, 0.25, 0.75, 0.375, 0.75); let s = Shapes::or( s, @@ -1603,7 +1631,7 @@ static SHAPE278: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0., 0.8125, 0.4375, 0.8125, 0.9375, 0.5625), ) }); -static SHAPE279: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE279: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0.25, 0.25, 0.75, 0.375, 0.75); let s = Shapes::or( s, @@ -1614,7 +1642,7 @@ static SHAPE279: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.1875, 0.8125, 0.4375, 1., 0.9375, 0.5625), ) }); -static SHAPE280: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE280: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0.25, 0.25, 0.75, 0.375, 0.75); let s = Shapes::or( s, @@ -1625,7 +1653,7 @@ static SHAPE280: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0.4375, 0.8125, 0., 0.5625, 0.9375, 1.), ) }); -static SHAPE281: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE281: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.25, 0.25, 0.25, 0.75, 0.375, 0.75); let s = Shapes::or( s, @@ -1636,103 +1664,103 @@ static SHAPE281: Lazy<VoxelShape> = Lazy::new(|| { collision::box_shape(0., 0.8125, 0.4375, 1., 0.9375, 0.5625), ) }); -static SHAPE282: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE282: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.3125, 0.0625, 0.3125, 0.6875, 0.5, 0.6875); Shapes::or( s, collision::box_shape(0.375, 0.5, 0.375, 0.625, 0.625, 0.625), ) }); -static SHAPE283: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE283: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.3125, 0., 0.3125, 0.6875, 0.4375, 0.6875); Shapes::or( s, collision::box_shape(0.375, 0.4375, 0.375, 0.625, 0.5625, 0.625), ) }); -static SHAPE284: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE284: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0., 0., 0., 1., 0.125, 1.); let s = Shapes::or(s, collision::box_shape(0., 0.125, 0., 0.125, 1., 1.)); let s = Shapes::or(s, collision::box_shape(0.125, 0.125, 0., 1., 1., 0.125)); let s = Shapes::or(s, collision::box_shape(0.125, 0.125, 0.875, 1., 1., 1.)); Shapes::or(s, collision::box_shape(0.875, 0.125, 0.125, 1., 1., 0.875)) }); -static SHAPE285: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0., 0.375, 0.6875, 0.375, 0.5625)); -static SHAPE286: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0., 0.375, 0.625, 0.375, 0.6875)); -static SHAPE287: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0., 0.3125, 0.6875, 0.375, 0.625)); -static SHAPE288: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE285: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0., 0.375, 0.6875, 0.375, 0.5625)); +static SHAPE286: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0., 0.375, 0.625, 0.375, 0.6875)); +static SHAPE287: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0., 0.3125, 0.6875, 0.375, 0.625)); +static SHAPE288: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.0625, 0., 0.0625, 0.9375, 0.5, 0.9375); Shapes::or( s, collision::box_shape(0.4375, 0.5, 0.4375, 0.5625, 0.875, 0.5625), ) }); -static SHAPE289: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.1875, 0.5625, 0.8125, 0.8125, 1.)); -static SHAPE290: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0.1875, 0.1875, 0.4375, 0.8125, 0.8125)); -static SHAPE291: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.4375)); -static SHAPE292: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.5625, 0.1875, 0.1875, 1., 0.8125, 0.8125)); -static SHAPE293: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.4375, 0.8125)); -static SHAPE294: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.5625, 0.1875, 0.8125, 1., 0.8125)); -static SHAPE295: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.1875, 0.6875, 0.8125, 0.8125, 1.)); -static SHAPE296: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0.1875, 0.1875, 0.3125, 0.8125, 0.8125)); -static SHAPE297: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.3125)); -static SHAPE298: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.6875, 0.1875, 0.1875, 1., 0.8125, 0.8125)); -static SHAPE299: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.3125, 0.8125)); -static SHAPE300: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.6875, 0.1875, 0.8125, 1., 0.8125)); -static SHAPE301: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.1875, 0.75, 0.8125, 0.8125, 1.)); -static SHAPE302: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0.1875, 0.1875, 0.25, 0.8125, 0.8125)); -static SHAPE303: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.25)); -static SHAPE304: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.75, 0.1875, 0.1875, 1., 0.8125, 0.8125)); -static SHAPE305: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.25, 0.8125)); -static SHAPE306: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.1875, 0.75, 0.1875, 0.8125, 1., 0.8125)); -static SHAPE307: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.25, 0.25, 0.8125, 0.75, 0.75, 1.)); -static SHAPE308: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0.25, 0.25, 0.1875, 0.75, 0.75)); -static SHAPE309: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.25, 0.25, 0., 0.75, 0.75, 0.1875)); -static SHAPE310: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.8125, 0.25, 0.25, 1., 0.75, 0.75)); -static SHAPE311: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.25, 0., 0.25, 0.75, 0.1875, 0.75)); -static SHAPE312: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.25, 0.8125, 0.25, 0.75, 1., 0.75)); -static SHAPE313: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0., 0.3125, 0.6875, 0.6875, 0.6875)); -static SHAPE314: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0.3125, 0.3125, 0.3125, 0.6875, 1., 0.6875)); -static SHAPE315: Lazy<VoxelShape> = Lazy::new(|| { +static SHAPE289: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.1875, 0.5625, 0.8125, 0.8125, 1.)); +static SHAPE290: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.1875, 0.1875, 0.4375, 0.8125, 0.8125)); +static SHAPE291: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.4375)); +static SHAPE292: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.5625, 0.1875, 0.1875, 1., 0.8125, 0.8125)); +static SHAPE293: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.4375, 0.8125)); +static SHAPE294: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.5625, 0.1875, 0.8125, 1., 0.8125)); +static SHAPE295: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.1875, 0.6875, 0.8125, 0.8125, 1.)); +static SHAPE296: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.1875, 0.1875, 0.3125, 0.8125, 0.8125)); +static SHAPE297: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.3125)); +static SHAPE298: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.6875, 0.1875, 0.1875, 1., 0.8125, 0.8125)); +static SHAPE299: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.3125, 0.8125)); +static SHAPE300: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.6875, 0.1875, 0.8125, 1., 0.8125)); +static SHAPE301: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.1875, 0.75, 0.8125, 0.8125, 1.)); +static SHAPE302: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.1875, 0.1875, 0.25, 0.8125, 0.8125)); +static SHAPE303: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.1875, 0., 0.8125, 0.8125, 0.25)); +static SHAPE304: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.75, 0.1875, 0.1875, 1., 0.8125, 0.8125)); +static SHAPE305: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0., 0.1875, 0.8125, 0.25, 0.8125)); +static SHAPE306: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.1875, 0.75, 0.1875, 0.8125, 1., 0.8125)); +static SHAPE307: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.25, 0.25, 0.8125, 0.75, 0.75, 1.)); +static SHAPE308: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.25, 0.25, 0.1875, 0.75, 0.75)); +static SHAPE309: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.25, 0.25, 0., 0.75, 0.75, 0.1875)); +static SHAPE310: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.8125, 0.25, 0.25, 1., 0.75, 0.75)); +static SHAPE311: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.25, 0., 0.25, 0.75, 0.1875, 0.75)); +static SHAPE312: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.25, 0.8125, 0.25, 0.75, 1., 0.75)); +static SHAPE313: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0., 0.3125, 0.6875, 0.6875, 0.6875)); +static SHAPE314: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0.3125, 0.3125, 0.3125, 0.6875, 1., 0.6875)); +static SHAPE315: LazyLock<VoxelShape> = LazyLock::new(|| { let s = collision::box_shape(0.375, 0., 0.375, 0.625, 1., 0.625); let s = Shapes::or(s, collision::box_shape(0., 0.5, 0., 0.375, 1., 1.)); let s = Shapes::or(s, collision::box_shape(0.375, 0.5, 0., 1., 1., 0.375)); let s = Shapes::or(s, collision::box_shape(0.375, 0.5, 0.625, 1., 1., 1.)); Shapes::or(s, collision::box_shape(0.625, 0.5, 0.375, 1., 1., 0.625)) }); -static SHAPE316: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0.6875, 0., 1., 0.9375, 1.)); -static SHAPE317: Lazy<VoxelShape> = - Lazy::new(|| collision::box_shape(0., 0.6875, 0., 1., 0.8125, 1.)); +static SHAPE316: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.6875, 0., 1., 0.9375, 1.)); +static SHAPE317: LazyLock<VoxelShape> = + LazyLock::new(|| collision::box_shape(0., 0.6875, 0., 1., 0.8125, 1.)); impl BlockWithShape for BlockState { fn shape(&self) -> &'static VoxelShape { @@ -1748,7 +1776,7 @@ impl BlockWithShape for BlockState { } } -static SHAPES_MAP: [&Lazy<VoxelShape>; 26644] = [ +static SHAPES_MAP: [&LazyLock<VoxelShape>; 26644] = [ &SHAPE0, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE1, &SHAPE0, &SHAPE0, &SHAPE0, &SHAPE0, &SHAPE0, diff --git a/azalea-protocol/Cargo.toml b/azalea-protocol/Cargo.toml index 1e32d71d..4ed5081b 100644 --- a/azalea-protocol/Cargo.toml +++ b/azalea-protocol/Cargo.toml @@ -12,10 +12,17 @@ version = "0.10.3+mc1.21.1" async-recursion = { workspace = true } azalea-auth = { path = "../azalea-auth", version = "0.10.0" } azalea-block = { path = "../azalea-block", default-features = false, version = "0.10.0" } -azalea-brigadier = { path = "../azalea-brigadier", version = "0.10.0", features = ["azalea-buf"] } +azalea-brigadier = { path = "../azalea-brigadier", version = "0.10.0", features = [ + "azalea-buf", +] } azalea-buf = { path = "../azalea-buf", version = "0.10.0" } -azalea-chat = { path = "../azalea-chat", version = "0.10.0", features = ["numbers", "azalea-buf"] } -azalea-core = { path = "../azalea-core", optional = true, version = "0.10.0", features = ["serde"] } +azalea-chat = { path = "../azalea-chat", version = "0.10.0", features = [ + "numbers", + "azalea-buf", +] } +azalea-core = { path = "../azalea-core", optional = true, version = "0.10.0", features = [ + "serde", +] } azalea-crypto = { path = "../azalea-crypto", version = "0.10.0" } azalea-entity = { version = "0.10.0", path = "../azalea-entity" } azalea-inventory = { version = "0.10.0", path = "../azalea-inventory" } @@ -48,6 +55,5 @@ packets = ["connecting", "dep:azalea-core"] [dev-dependencies] anyhow = { workspace = true } -once_cell = { workspace = true } tracing = { workspace = true } tracing-subscriber = { workspace = true } diff --git a/azalea-protocol/examples/handshake_proxy.rs b/azalea-protocol/examples/handshake_proxy.rs index 8e675c58..14e5115e 100644 --- a/azalea-protocol/examples/handshake_proxy.rs +++ b/azalea-protocol/examples/handshake_proxy.rs @@ -1,7 +1,7 @@ //! A "simple" server that gets login information and proxies connections. //! After login all connections are encrypted and Azalea cannot read them. -use std::error::Error; +use std::{error::Error, sync::LazyLock}; use azalea_protocol::{ connect::Connection, @@ -23,7 +23,6 @@ use azalea_protocol::{ read::ReadPacketError, }; use futures::FutureExt; -use once_cell::sync::Lazy; use tokio::{ io::{self, AsyncWriteExt}, net::{TcpListener, TcpStream}, @@ -37,9 +36,9 @@ const PROXY_ADDR: &str = "127.0.0.1:25565"; const PROXY_DESC: &str = "An Azalea Minecraft Proxy"; // String must be formatted like "data:image/png;base64,<data>" -static PROXY_FAVICON: Lazy<Option<String>> = Lazy::new(|| None); +static PROXY_FAVICON: LazyLock<Option<String>> = LazyLock::new(|| None); -static PROXY_VERSION: Lazy<Version> = Lazy::new(|| Version { +static PROXY_VERSION: LazyLock<Version> = LazyLock::new(|| Version { name: "1.19.3".to_string(), protocol: PROTOCOL_VERSION, }); diff --git a/azalea-registry/Cargo.toml b/azalea-registry/Cargo.toml index ef089fcd..0ded23c4 100644 --- a/azalea-registry/Cargo.toml +++ b/azalea-registry/Cargo.toml @@ -11,7 +11,6 @@ version = "0.10.3+mc1.21.1" [dependencies] azalea-buf = { path = "../azalea-buf", version = "0.10.0" } azalea-registry-macros = { path = "./azalea-registry-macros", version = "0.10.0" } -once_cell = { workspace = true } serde = { workspace = true, optional = true } simdnbt = { workspace = true } diff --git a/azalea-registry/src/tags/blocks.rs b/azalea-registry/src/tags/blocks.rs index b57ae8c9..0697adeb 100644 --- a/azalea-registry/src/tags/blocks.rs +++ b/azalea-registry/src/tags/blocks.rs @@ -1,12 +1,11 @@ // This file was generated by codegen/lib/code/tags.py, don't edit it manually! use std::collections::HashSet; - -use once_cell::sync::Lazy; +use std::sync::LazyLock; use crate::Block; -pub static ACACIA_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static ACACIA_LOGS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::AcaciaLog, Block::AcaciaWood, @@ -14,9 +13,9 @@ pub static ACACIA_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedAcaciaWood, ]) }); -pub static AIR: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Air, Block::VoidAir, Block::CaveAir])); -pub static ALL_HANGING_SIGNS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static AIR: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Air, Block::VoidAir, Block::CaveAir])); +pub static ALL_HANGING_SIGNS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakHangingSign, Block::SpruceHangingSign, @@ -42,7 +41,7 @@ pub static ALL_HANGING_SIGNS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BambooWallHangingSign, ]) }); -pub static ALL_SIGNS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static ALL_SIGNS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakSign, Block::SpruceSign, @@ -90,7 +89,7 @@ pub static ALL_SIGNS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BambooWallHangingSign, ]) }); -pub static ANCIENT_CITY_REPLACEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static ANCIENT_CITY_REPLACEABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Deepslate, Block::DeepslateBricks, @@ -106,11 +105,12 @@ pub static ANCIENT_CITY_REPLACEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::GrayWool, ]) }); -pub static ANIMALS_SPAWNABLE_ON: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::GrassBlock])); -pub static ANVIL: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Anvil, Block::ChippedAnvil, Block::DamagedAnvil])); -pub static ARMADILLO_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static ANIMALS_SPAWNABLE_ON: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::GrassBlock])); +pub static ANVIL: LazyLock<HashSet<Block>> = LazyLock::new(|| { + HashSet::from_iter(vec![Block::Anvil, Block::ChippedAnvil, Block::DamagedAnvil]) +}); +pub static ARMADILLO_SPAWNABLE_ON: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::RedSand, Block::CoarseDirt, @@ -124,9 +124,9 @@ pub static ARMADILLO_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { Block::LightGrayTerracotta, ]) }); -pub static AXOLOTLS_SPAWNABLE_ON: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Clay])); -pub static AZALEA_GROWS_ON: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static AXOLOTLS_SPAWNABLE_ON: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Clay])); +pub static AZALEA_GROWS_ON: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::SnowBlock, Block::PowderSnow, @@ -162,7 +162,7 @@ pub static AZALEA_GROWS_ON: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BlackTerracotta, ]) }); -pub static AZALEA_ROOT_REPLACEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static AZALEA_ROOT_REPLACEABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::RedSand, Block::Clay, @@ -204,7 +204,7 @@ pub static AZALEA_ROOT_REPLACEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BlackTerracotta, ]) }); -pub static BADLANDS_TERRACOTTA: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static BADLANDS_TERRACOTTA: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Terracotta, Block::WhiteTerracotta, @@ -215,9 +215,9 @@ pub static BADLANDS_TERRACOTTA: Lazy<HashSet<Block>> = Lazy::new(|| { Block::LightGrayTerracotta, ]) }); -pub static BAMBOO_BLOCKS: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::BambooBlock, Block::StrippedBambooBlock])); -pub static BAMBOO_PLANTABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static BAMBOO_BLOCKS: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::BambooBlock, Block::StrippedBambooBlock])); +pub static BAMBOO_PLANTABLE_ON: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Bamboo, Block::BambooSapling, @@ -238,7 +238,7 @@ pub static BAMBOO_PLANTABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { Block::MuddyMangroveRoots, ]) }); -pub static BANNERS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static BANNERS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::WhiteBanner, Block::OrangeBanner, @@ -274,9 +274,9 @@ pub static BANNERS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BlackWallBanner, ]) }); -pub static BASE_STONE_NETHER: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Netherrack, Block::Basalt, Block::Blackstone])); -pub static BASE_STONE_OVERWORLD: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static BASE_STONE_NETHER: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Netherrack, Block::Basalt, Block::Blackstone])); +pub static BASE_STONE_OVERWORLD: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Stone, Block::Granite, @@ -286,7 +286,7 @@ pub static BASE_STONE_OVERWORLD: Lazy<HashSet<Block>> = Lazy::new(|| { Block::Deepslate, ]) }); -pub static BATS_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static BATS_SPAWNABLE_ON: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Stone, Block::Granite, @@ -296,7 +296,7 @@ pub static BATS_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { Block::Deepslate, ]) }); -pub static BEACON_BASE_BLOCKS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static BEACON_BASE_BLOCKS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::NetheriteBlock, Block::EmeraldBlock, @@ -305,7 +305,7 @@ pub static BEACON_BASE_BLOCKS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::IronBlock, ]) }); -pub static BEDS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static BEDS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::RedBed, Block::BlackBed, @@ -325,7 +325,7 @@ pub static BEDS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::YellowBed, ]) }); -pub static BEE_GROWABLES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static BEE_GROWABLES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::SweetBerryBush, Block::CaveVines, @@ -340,9 +340,9 @@ pub static BEE_GROWABLES: Lazy<HashSet<Block>> = Lazy::new(|| { Block::PitcherCrop, ]) }); -pub static BEEHIVES: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::BeeNest, Block::Beehive])); -pub static BIG_DRIPLEAF_PLACEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static BEEHIVES: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::BeeNest, Block::Beehive])); +pub static BIG_DRIPLEAF_PLACEABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Farmland, Block::Clay, @@ -358,7 +358,7 @@ pub static BIG_DRIPLEAF_PLACEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::MuddyMangroveRoots, ]) }); -pub static BIRCH_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static BIRCH_LOGS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::BirchLog, Block::BirchWood, @@ -366,9 +366,9 @@ pub static BIRCH_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedBirchWood, ]) }); -pub static BLOCKS_WIND_CHARGE_EXPLOSIONS: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Barrier, Block::Bedrock])); -pub static BUTTONS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static BLOCKS_WIND_CHARGE_EXPLOSIONS: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Barrier, Block::Bedrock])); +pub static BUTTONS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakButton, Block::SpruceButton, @@ -385,7 +385,7 @@ pub static BUTTONS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::PolishedBlackstoneButton, ]) }); -pub static CAMEL_SAND_STEP_SOUND_BLOCKS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static CAMEL_SAND_STEP_SOUND_BLOCKS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Sand, Block::RedSand, @@ -409,9 +409,9 @@ pub static CAMEL_SAND_STEP_SOUND_BLOCKS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BlackConcretePowder, ]) }); -pub static CAMPFIRES: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Campfire, Block::SoulCampfire])); -pub static CANDLE_CAKES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static CAMPFIRES: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Campfire, Block::SoulCampfire])); +pub static CANDLE_CAKES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::CandleCake, Block::WhiteCandleCake, @@ -432,7 +432,7 @@ pub static CANDLE_CAKES: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BlackCandleCake, ]) }); -pub static CANDLES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static CANDLES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Candle, Block::WhiteCandle, @@ -453,7 +453,7 @@ pub static CANDLES: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BlackCandle, ]) }); -pub static CAULDRONS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static CAULDRONS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Cauldron, Block::WaterCauldron, @@ -461,9 +461,9 @@ pub static CAULDRONS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::PowderSnowCauldron, ]) }); -pub static CAVE_VINES: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::CaveVinesPlant, Block::CaveVines])); -pub static CEILING_HANGING_SIGNS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static CAVE_VINES: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::CaveVinesPlant, Block::CaveVines])); +pub static CEILING_HANGING_SIGNS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakHangingSign, Block::SpruceHangingSign, @@ -478,7 +478,7 @@ pub static CEILING_HANGING_SIGNS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BambooHangingSign, ]) }); -pub static CHERRY_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static CHERRY_LOGS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::CherryLog, Block::CherryWood, @@ -486,7 +486,7 @@ pub static CHERRY_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedCherryWood, ]) }); -pub static CLIMBABLE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static CLIMBABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Ladder, Block::Vine, @@ -499,9 +499,9 @@ pub static CLIMBABLE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CaveVinesPlant, ]) }); -pub static COAL_ORES: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::CoalOre, Block::DeepslateCoalOre])); -pub static COMBINATION_STEP_SOUND_BLOCKS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static COAL_ORES: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::CoalOre, Block::DeepslateCoalOre])); +pub static COMBINATION_STEP_SOUND_BLOCKS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::MossCarpet, Block::Snow, @@ -526,7 +526,7 @@ pub static COMBINATION_STEP_SOUND_BLOCKS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BlackCarpet, ]) }); -pub static COMPLETES_FIND_TREE_TUTORIAL: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static COMPLETES_FIND_TREE_TUTORIAL: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::JungleLeaves, Block::OakLeaves, @@ -582,7 +582,7 @@ pub static COMPLETES_FIND_TREE_TUTORIAL: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedCherryWood, ]) }); -pub static CONCRETE_POWDER: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static CONCRETE_POWDER: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::WhiteConcretePowder, Block::OrangeConcretePowder, @@ -602,11 +602,11 @@ pub static CONCRETE_POWDER: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BlackConcretePowder, ]) }); -pub static CONVERTABLE_TO_MUD: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Dirt, Block::CoarseDirt, Block::RootedDirt])); -pub static COPPER_ORES: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::CopperOre, Block::DeepslateCopperOre])); -pub static CORAL_BLOCKS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static CONVERTABLE_TO_MUD: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Dirt, Block::CoarseDirt, Block::RootedDirt])); +pub static COPPER_ORES: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::CopperOre, Block::DeepslateCopperOre])); +pub static CORAL_BLOCKS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::TubeCoralBlock, Block::BrainCoralBlock, @@ -615,7 +615,7 @@ pub static CORAL_BLOCKS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::HornCoralBlock, ]) }); -pub static CORAL_PLANTS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static CORAL_PLANTS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::TubeCoral, Block::BrainCoral, @@ -624,7 +624,7 @@ pub static CORAL_PLANTS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::HornCoral, ]) }); -pub static CORALS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static CORALS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::TubeCoralFan, Block::BrainCoralFan, @@ -638,7 +638,7 @@ pub static CORALS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::HornCoral, ]) }); -pub static CRIMSON_STEMS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static CRIMSON_STEMS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::CrimsonStem, Block::StrippedCrimsonStem, @@ -646,7 +646,7 @@ pub static CRIMSON_STEMS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedCrimsonHyphae, ]) }); -pub static CROPS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static CROPS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Beetroots, Block::Carrots, @@ -658,9 +658,9 @@ pub static CROPS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::PitcherCrop, ]) }); -pub static CRYSTAL_SOUND_BLOCKS: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::AmethystBlock, Block::BuddingAmethyst])); -pub static DAMPENS_VIBRATIONS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static CRYSTAL_SOUND_BLOCKS: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::AmethystBlock, Block::BuddingAmethyst])); +pub static DAMPENS_VIBRATIONS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::WhiteWool, Block::OrangeWool, @@ -696,7 +696,7 @@ pub static DAMPENS_VIBRATIONS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BlackCarpet, ]) }); -pub static DARK_OAK_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static DARK_OAK_LOGS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::DarkOakLog, Block::DarkOakWood, @@ -704,7 +704,7 @@ pub static DARK_OAK_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedDarkOakWood, ]) }); -pub static DEAD_BUSH_MAY_PLACE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static DEAD_BUSH_MAY_PLACE_ON: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Sand, Block::RedSand, @@ -738,11 +738,11 @@ pub static DEAD_BUSH_MAY_PLACE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { Block::MuddyMangroveRoots, ]) }); -pub static DEEPSLATE_ORE_REPLACEABLES: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Deepslate, Block::Tuff])); -pub static DIAMOND_ORES: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::DiamondOre, Block::DeepslateDiamondOre])); -pub static DIRT: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static DEEPSLATE_ORE_REPLACEABLES: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Deepslate, Block::Tuff])); +pub static DIAMOND_ORES: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::DiamondOre, Block::DeepslateDiamondOre])); +pub static DIRT: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Dirt, Block::GrassBlock, @@ -755,9 +755,9 @@ pub static DIRT: Lazy<HashSet<Block>> = Lazy::new(|| { Block::MuddyMangroveRoots, ]) }); -pub static DOES_NOT_BLOCK_HOPPERS: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::BeeNest, Block::Beehive])); -pub static DOORS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static DOES_NOT_BLOCK_HOPPERS: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::BeeNest, Block::Beehive])); +pub static DOORS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::CopperDoor, Block::ExposedCopperDoor, @@ -781,7 +781,7 @@ pub static DOORS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryDoor, ]) }); -pub static DRAGON_IMMUNE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static DRAGON_IMMUNE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Barrier, Block::Bedrock, @@ -802,9 +802,9 @@ pub static DRAGON_IMMUNE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::ReinforcedDeepslate, ]) }); -pub static DRAGON_TRANSPARENT: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Light, Block::Fire, Block::SoulFire])); -pub static DRIPSTONE_REPLACEABLE_BLOCKS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static DRAGON_TRANSPARENT: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Light, Block::Fire, Block::SoulFire])); +pub static DRIPSTONE_REPLACEABLE_BLOCKS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Stone, Block::Granite, @@ -814,11 +814,11 @@ pub static DRIPSTONE_REPLACEABLE_BLOCKS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::Deepslate, ]) }); -pub static EMERALD_ORES: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::EmeraldOre, Block::DeepslateEmeraldOre])); -pub static ENCHANTMENT_POWER_PROVIDER: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Bookshelf])); -pub static ENCHANTMENT_POWER_TRANSMITTER: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static EMERALD_ORES: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::EmeraldOre, Block::DeepslateEmeraldOre])); +pub static ENCHANTMENT_POWER_PROVIDER: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Bookshelf])); +pub static ENCHANTMENT_POWER_TRANSMITTER: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Air, Block::Water, @@ -846,7 +846,7 @@ pub static ENCHANTMENT_POWER_TRANSMITTER: Lazy<HashSet<Block>> = Lazy::new(|| { Block::HangingRoots, ]) }); -pub static ENDERMAN_HOLDABLE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static ENDERMAN_HOLDABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Sand, Block::RedSand, @@ -890,7 +890,7 @@ pub static ENDERMAN_HOLDABLE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::MuddyMangroveRoots, ]) }); -pub static FALL_DAMAGE_RESETTING: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static FALL_DAMAGE_RESETTING: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::SweetBerryBush, Block::Cobweb, @@ -905,7 +905,7 @@ pub static FALL_DAMAGE_RESETTING: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CaveVinesPlant, ]) }); -pub static FEATURES_CANNOT_REPLACE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static FEATURES_CANNOT_REPLACE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Bedrock, Block::Spawner, @@ -916,7 +916,7 @@ pub static FEATURES_CANNOT_REPLACE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::Vault, ]) }); -pub static FENCE_GATES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static FENCE_GATES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::AcaciaFenceGate, Block::BirchFenceGate, @@ -931,7 +931,7 @@ pub static FENCE_GATES: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryFenceGate, ]) }); -pub static FENCES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static FENCES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::NetherBrickFence, Block::OakFence, @@ -947,9 +947,9 @@ pub static FENCES: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryFence, ]) }); -pub static FIRE: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Fire, Block::SoulFire])); -pub static FLOWER_POTS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static FIRE: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Fire, Block::SoulFire])); +pub static FLOWER_POTS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::FlowerPot, Block::PottedPoppy, @@ -988,7 +988,7 @@ pub static FLOWER_POTS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::PottedTorchflower, ]) }); -pub static FLOWERS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static FLOWERS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::FloweringAzaleaLeaves, Block::FloweringAzalea, @@ -1018,7 +1018,7 @@ pub static FLOWERS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::PitcherPlant, ]) }); -pub static FOXES_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static FOXES_SPAWNABLE_ON: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::GrassBlock, Block::Snow, @@ -1027,9 +1027,9 @@ pub static FOXES_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CoarseDirt, ]) }); -pub static FROG_PREFER_JUMP_TO: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::LilyPad, Block::BigDripleaf])); -pub static FROGS_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static FROG_PREFER_JUMP_TO: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::LilyPad, Block::BigDripleaf])); +pub static FROGS_SPAWNABLE_ON: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::GrassBlock, Block::Mud, @@ -1037,7 +1037,7 @@ pub static FROGS_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { Block::MuddyMangroveRoots, ]) }); -pub static GEODE_INVALID_BLOCKS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static GEODE_INVALID_BLOCKS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Bedrock, Block::Water, @@ -1047,7 +1047,7 @@ pub static GEODE_INVALID_BLOCKS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BlueIce, ]) }); -pub static GOATS_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static GOATS_SPAWNABLE_ON: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Stone, Block::Snow, @@ -1057,14 +1057,14 @@ pub static GOATS_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { Block::GrassBlock, ]) }); -pub static GOLD_ORES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static GOLD_ORES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::GoldOre, Block::NetherGoldOre, Block::DeepslateGoldOre, ]) }); -pub static GUARDED_BY_PIGLINS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static GUARDED_BY_PIGLINS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::GoldBlock, Block::Barrel, @@ -1095,7 +1095,7 @@ pub static GUARDED_BY_PIGLINS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::DeepslateGoldOre, ]) }); -pub static HOGLIN_REPELLENTS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static HOGLIN_REPELLENTS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::WarpedFungus, Block::PottedWarpedFungus, @@ -1103,7 +1103,7 @@ pub static HOGLIN_REPELLENTS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::RespawnAnchor, ]) }); -pub static ICE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static ICE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Ice, Block::PackedIce, @@ -1111,7 +1111,7 @@ pub static ICE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::FrostedIce, ]) }); -pub static IMPERMEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static IMPERMEABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Glass, Block::WhiteStainedGlass, @@ -1133,9 +1133,9 @@ pub static IMPERMEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::TintedGlass, ]) }); -pub static INCORRECT_FOR_DIAMOND_TOOL: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![])); -pub static INCORRECT_FOR_GOLD_TOOL: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static INCORRECT_FOR_DIAMOND_TOOL: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![])); +pub static INCORRECT_FOR_GOLD_TOOL: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Obsidian, Block::CryingObsidian, @@ -1240,7 +1240,7 @@ pub static INCORRECT_FOR_GOLD_TOOL: Lazy<HashSet<Block>> = Lazy::new(|| { Block::WaxedOxidizedCopperDoor, ]) }); -pub static INCORRECT_FOR_IRON_TOOL: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static INCORRECT_FOR_IRON_TOOL: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Obsidian, Block::CryingObsidian, @@ -1249,9 +1249,9 @@ pub static INCORRECT_FOR_IRON_TOOL: Lazy<HashSet<Block>> = Lazy::new(|| { Block::AncientDebris, ]) }); -pub static INCORRECT_FOR_NETHERITE_TOOL: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![])); -pub static INCORRECT_FOR_STONE_TOOL: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static INCORRECT_FOR_NETHERITE_TOOL: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![])); +pub static INCORRECT_FOR_STONE_TOOL: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Obsidian, Block::CryingObsidian, @@ -1272,7 +1272,7 @@ pub static INCORRECT_FOR_STONE_TOOL: Lazy<HashSet<Block>> = Lazy::new(|| { Block::DeepslateRedstoneOre, ]) }); -pub static INCORRECT_FOR_WOODEN_TOOL: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static INCORRECT_FOR_WOODEN_TOOL: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Obsidian, Block::CryingObsidian, @@ -1377,13 +1377,14 @@ pub static INCORRECT_FOR_WOODEN_TOOL: Lazy<HashSet<Block>> = Lazy::new(|| { Block::WaxedOxidizedCopperDoor, ]) }); -pub static INFINIBURN_END: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Bedrock, Block::Netherrack, Block::MagmaBlock])); -pub static INFINIBURN_NETHER: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Netherrack, Block::MagmaBlock])); -pub static INFINIBURN_OVERWORLD: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Netherrack, Block::MagmaBlock])); -pub static INSIDE_STEP_SOUND_BLOCKS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static INFINIBURN_END: LazyLock<HashSet<Block>> = LazyLock::new(|| { + HashSet::from_iter(vec![Block::Bedrock, Block::Netherrack, Block::MagmaBlock]) +}); +pub static INFINIBURN_NETHER: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Netherrack, Block::MagmaBlock])); +pub static INFINIBURN_OVERWORLD: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Netherrack, Block::MagmaBlock])); +pub static INSIDE_STEP_SOUND_BLOCKS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::PowderSnow, Block::SculkVein, @@ -1393,11 +1394,11 @@ pub static INSIDE_STEP_SOUND_BLOCKS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::PinkPetals, ]) }); -pub static INVALID_SPAWN_INSIDE: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::EndPortal, Block::EndGateway])); -pub static IRON_ORES: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::IronOre, Block::DeepslateIronOre])); -pub static JUNGLE_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static INVALID_SPAWN_INSIDE: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::EndPortal, Block::EndGateway])); +pub static IRON_ORES: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::IronOre, Block::DeepslateIronOre])); +pub static JUNGLE_LOGS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::JungleLog, Block::JungleWood, @@ -1405,9 +1406,9 @@ pub static JUNGLE_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedJungleWood, ]) }); -pub static LAPIS_ORES: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::LapisOre, Block::DeepslateLapisOre])); -pub static LAVA_POOL_STONE_CANNOT_REPLACE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static LAPIS_ORES: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::LapisOre, Block::DeepslateLapisOre])); +pub static LAVA_POOL_STONE_CANNOT_REPLACE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Bedrock, Block::Spawner, @@ -1468,7 +1469,7 @@ pub static LAVA_POOL_STONE_CANNOT_REPLACE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedCherryWood, ]) }); -pub static LEAVES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static LEAVES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::JungleLeaves, Block::OakLeaves, @@ -1482,7 +1483,7 @@ pub static LEAVES: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryLeaves, ]) }); -pub static LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static LOGS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::CrimsonStem, Block::StrippedCrimsonStem, @@ -1526,7 +1527,7 @@ pub static LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedCherryWood, ]) }); -pub static LOGS_THAT_BURN: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static LOGS_THAT_BURN: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::DarkOakLog, Block::DarkOakWood, @@ -1562,7 +1563,7 @@ pub static LOGS_THAT_BURN: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedCherryWood, ]) }); -pub static LUSH_GROUND_REPLACEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static LUSH_GROUND_REPLACEABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Clay, Block::Gravel, @@ -1586,7 +1587,7 @@ pub static LUSH_GROUND_REPLACEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::MuddyMangroveRoots, ]) }); -pub static MAINTAINS_FARMLAND: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static MAINTAINS_FARMLAND: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::PumpkinStem, Block::AttachedPumpkinStem, @@ -1601,7 +1602,7 @@ pub static MAINTAINS_FARMLAND: Lazy<HashSet<Block>> = Lazy::new(|| { Block::Wheat, ]) }); -pub static MANGROVE_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static MANGROVE_LOGS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::MangroveLog, Block::MangroveWood, @@ -1609,7 +1610,7 @@ pub static MANGROVE_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedMangroveWood, ]) }); -pub static MANGROVE_LOGS_CAN_GROW_THROUGH: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static MANGROVE_LOGS_CAN_GROW_THROUGH: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Mud, Block::MuddyMangroveRoots, @@ -1621,7 +1622,7 @@ pub static MANGROVE_LOGS_CAN_GROW_THROUGH: Lazy<HashSet<Block>> = Lazy::new(|| { Block::Vine, ]) }); -pub static MANGROVE_ROOTS_CAN_GROW_THROUGH: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static MANGROVE_ROOTS_CAN_GROW_THROUGH: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Mud, Block::MuddyMangroveRoots, @@ -1632,7 +1633,7 @@ pub static MANGROVE_ROOTS_CAN_GROW_THROUGH: Lazy<HashSet<Block>> = Lazy::new(|| Block::Snow, ]) }); -pub static MINEABLE_AXE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static MINEABLE_AXE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::NoteBlock, Block::AttachedMelonStem, @@ -1934,7 +1935,7 @@ pub static MINEABLE_AXE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedCherryWood, ]) }); -pub static MINEABLE_HOE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static MINEABLE_HOE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::NetherWartBlock, Block::WarpedWartBlock, @@ -1965,7 +1966,7 @@ pub static MINEABLE_HOE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryLeaves, ]) }); -pub static MINEABLE_PICKAXE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static MINEABLE_PICKAXE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Stone, Block::Granite, @@ -2402,7 +2403,7 @@ pub static MINEABLE_PICKAXE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::ActivatorRail, ]) }); -pub static MINEABLE_SHOVEL: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static MINEABLE_SHOVEL: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Clay, Block::Dirt, @@ -2442,7 +2443,7 @@ pub static MINEABLE_SHOVEL: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BlackConcretePowder, ]) }); -pub static MOB_INTERACTABLE_DOORS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static MOB_INTERACTABLE_DOORS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::CopperDoor, Block::ExposedCopperDoor, @@ -2465,9 +2466,9 @@ pub static MOB_INTERACTABLE_DOORS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryDoor, ]) }); -pub static MOOSHROOMS_SPAWNABLE_ON: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Mycelium])); -pub static MOSS_REPLACEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static MOOSHROOMS_SPAWNABLE_ON: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Mycelium])); +pub static MOSS_REPLACEABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Stone, Block::Granite, @@ -2488,7 +2489,7 @@ pub static MOSS_REPLACEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::MuddyMangroveRoots, ]) }); -pub static MUSHROOM_GROW_BLOCK: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static MUSHROOM_GROW_BLOCK: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Mycelium, Block::Podzol, @@ -2496,7 +2497,7 @@ pub static MUSHROOM_GROW_BLOCK: Lazy<HashSet<Block>> = Lazy::new(|| { Block::WarpedNylium, ]) }); -pub static NEEDS_DIAMOND_TOOL: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static NEEDS_DIAMOND_TOOL: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Obsidian, Block::CryingObsidian, @@ -2505,7 +2506,7 @@ pub static NEEDS_DIAMOND_TOOL: Lazy<HashSet<Block>> = Lazy::new(|| { Block::AncientDebris, ]) }); -pub static NEEDS_IRON_TOOL: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static NEEDS_IRON_TOOL: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::DiamondBlock, Block::DiamondOre, @@ -2521,7 +2522,7 @@ pub static NEEDS_IRON_TOOL: Lazy<HashSet<Block>> = Lazy::new(|| { Block::DeepslateRedstoneOre, ]) }); -pub static NEEDS_STONE_TOOL: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static NEEDS_STONE_TOOL: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::IronBlock, Block::RawIronBlock, @@ -2609,7 +2610,7 @@ pub static NEEDS_STONE_TOOL: Lazy<HashSet<Block>> = Lazy::new(|| { Block::WaxedOxidizedCopperDoor, ]) }); -pub static NETHER_CARVER_REPLACEABLES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static NETHER_CARVER_REPLACEABLES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::SoulSand, Block::SoulSoil, @@ -2637,9 +2638,9 @@ pub static NETHER_CARVER_REPLACEABLES: Lazy<HashSet<Block>> = Lazy::new(|| { Block::WarpedWartBlock, ]) }); -pub static NYLIUM: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::CrimsonNylium, Block::WarpedNylium])); -pub static OAK_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static NYLIUM: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::CrimsonNylium, Block::WarpedNylium])); +pub static OAK_LOGS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakLog, Block::OakWood, @@ -2647,7 +2648,7 @@ pub static OAK_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedOakWood, ]) }); -pub static OCCLUDES_VIBRATION_SIGNALS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static OCCLUDES_VIBRATION_SIGNALS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::WhiteWool, Block::OrangeWool, @@ -2667,7 +2668,7 @@ pub static OCCLUDES_VIBRATION_SIGNALS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BlackWool, ]) }); -pub static OVERWORLD_CARVER_REPLACEABLES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static OVERWORLD_CARVER_REPLACEABLES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Water, Block::Gravel, @@ -2721,7 +2722,7 @@ pub static OVERWORLD_CARVER_REPLACEABLES: Lazy<HashSet<Block>> = Lazy::new(|| { Block::DeepslateCopperOre, ]) }); -pub static OVERWORLD_NATURAL_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static OVERWORLD_NATURAL_LOGS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::AcaciaLog, Block::BirchLog, @@ -2733,7 +2734,7 @@ pub static OVERWORLD_NATURAL_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryLog, ]) }); -pub static PARROTS_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static PARROTS_SPAWNABLE_ON: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::GrassBlock, Block::Air, @@ -2789,7 +2790,7 @@ pub static PARROTS_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedCherryWood, ]) }); -pub static PIGLIN_REPELLENTS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static PIGLIN_REPELLENTS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::SoulFire, Block::SoulTorch, @@ -2798,7 +2799,7 @@ pub static PIGLIN_REPELLENTS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::SoulCampfire, ]) }); -pub static PLANKS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static PLANKS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakPlanks, Block::SprucePlanks, @@ -2813,16 +2814,16 @@ pub static PLANKS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryPlanks, ]) }); -pub static POLAR_BEARS_SPAWNABLE_ON_ALTERNATE: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Ice])); -pub static PORTALS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static POLAR_BEARS_SPAWNABLE_ON_ALTERNATE: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Ice])); +pub static PORTALS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::NetherPortal, Block::EndPortal, Block::EndGateway, ]) }); -pub static PRESSURE_PLATES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static PRESSURE_PLATES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::LightWeightedPressurePlate, Block::HeavyWeightedPressurePlate, @@ -2841,7 +2842,7 @@ pub static PRESSURE_PLATES: Lazy<HashSet<Block>> = Lazy::new(|| { Block::PolishedBlackstonePressurePlate, ]) }); -pub static PREVENT_MOB_SPAWNING_INSIDE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static PREVENT_MOB_SPAWNING_INSIDE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Rail, Block::PoweredRail, @@ -2849,7 +2850,7 @@ pub static PREVENT_MOB_SPAWNING_INSIDE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::ActivatorRail, ]) }); -pub static RABBITS_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static RABBITS_SPAWNABLE_ON: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::GrassBlock, Block::Snow, @@ -2857,7 +2858,7 @@ pub static RABBITS_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { Block::Sand, ]) }); -pub static RAILS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static RAILS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Rail, Block::PoweredRail, @@ -2865,9 +2866,9 @@ pub static RAILS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::ActivatorRail, ]) }); -pub static REDSTONE_ORES: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::RedstoneOre, Block::DeepslateRedstoneOre])); -pub static REPLACEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static REDSTONE_ORES: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::RedstoneOre, Block::DeepslateRedstoneOre])); +pub static REPLACEABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Air, Block::Water, @@ -2895,7 +2896,7 @@ pub static REPLACEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::HangingRoots, ]) }); -pub static REPLACEABLE_BY_TREES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static REPLACEABLE_BY_TREES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::ShortGrass, Block::Fern, @@ -2928,7 +2929,7 @@ pub static REPLACEABLE_BY_TREES: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryLeaves, ]) }); -pub static SAND: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static SAND: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Sand, Block::RedSand, @@ -2936,7 +2937,7 @@ pub static SAND: Lazy<HashSet<Block>> = Lazy::new(|| { Block::SuspiciousSand, ]) }); -pub static SAPLINGS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static SAPLINGS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakSapling, Block::SpruceSapling, @@ -2950,7 +2951,7 @@ pub static SAPLINGS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherrySapling, ]) }); -pub static SCULK_REPLACEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static SCULK_REPLACEABLE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Sand, Block::RedSand, @@ -3003,7 +3004,7 @@ pub static SCULK_REPLACEABLE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::Blackstone, ]) }); -pub static SCULK_REPLACEABLE_WORLD_GEN: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static SCULK_REPLACEABLE_WORLD_GEN: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::DeepslateBricks, Block::DeepslateTiles, @@ -3062,7 +3063,7 @@ pub static SCULK_REPLACEABLE_WORLD_GEN: Lazy<HashSet<Block>> = Lazy::new(|| { Block::Blackstone, ]) }); -pub static SHULKER_BOXES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static SHULKER_BOXES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::ShulkerBox, Block::BlackShulkerBox, @@ -3083,7 +3084,7 @@ pub static SHULKER_BOXES: Lazy<HashSet<Block>> = Lazy::new(|| { Block::YellowShulkerBox, ]) }); -pub static SIGNS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static SIGNS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakSign, Block::SpruceSign, @@ -3109,7 +3110,7 @@ pub static SIGNS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryWallSign, ]) }); -pub static SLABS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static SLABS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::BambooMosaicSlab, Block::StoneSlab, @@ -3173,9 +3174,9 @@ pub static SLABS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherrySlab, ]) }); -pub static SMALL_DRIPLEAF_PLACEABLE: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Clay, Block::MossBlock])); -pub static SMALL_FLOWERS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static SMALL_DRIPLEAF_PLACEABLE: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Clay, Block::MossBlock])); +pub static SMALL_FLOWERS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Dandelion, Block::Poppy, @@ -3193,9 +3194,9 @@ pub static SMALL_FLOWERS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::Torchflower, ]) }); -pub static SMELTS_TO_GLASS: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Sand, Block::RedSand])); -pub static SNAPS_GOAT_HORN: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static SMELTS_TO_GLASS: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Sand, Block::RedSand])); +pub static SNAPS_GOAT_HORN: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Stone, Block::PackedIce, @@ -3213,7 +3214,7 @@ pub static SNAPS_GOAT_HORN: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryLog, ]) }); -pub static SNIFFER_DIGGABLE_BLOCK: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static SNIFFER_DIGGABLE_BLOCK: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Dirt, Block::GrassBlock, @@ -3225,19 +3226,19 @@ pub static SNIFFER_DIGGABLE_BLOCK: Lazy<HashSet<Block>> = Lazy::new(|| { Block::MuddyMangroveRoots, ]) }); -pub static SNIFFER_EGG_HATCH_BOOST: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::MossBlock])); -pub static SNOW: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Snow, Block::SnowBlock, Block::PowderSnow])); -pub static SNOW_LAYER_CAN_SURVIVE_ON: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::HoneyBlock, Block::SoulSand, Block::Mud])); -pub static SNOW_LAYER_CANNOT_SURVIVE_ON: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Ice, Block::PackedIce, Block::Barrier])); -pub static SOUL_FIRE_BASE_BLOCKS: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::SoulSand, Block::SoulSoil])); -pub static SOUL_SPEED_BLOCKS: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::SoulSand, Block::SoulSoil])); -pub static SPRUCE_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static SNIFFER_EGG_HATCH_BOOST: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::MossBlock])); +pub static SNOW: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Snow, Block::SnowBlock, Block::PowderSnow])); +pub static SNOW_LAYER_CAN_SURVIVE_ON: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::HoneyBlock, Block::SoulSand, Block::Mud])); +pub static SNOW_LAYER_CANNOT_SURVIVE_ON: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Ice, Block::PackedIce, Block::Barrier])); +pub static SOUL_FIRE_BASE_BLOCKS: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::SoulSand, Block::SoulSoil])); +pub static SOUL_SPEED_BLOCKS: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::SoulSand, Block::SoulSoil])); +pub static SPRUCE_LOGS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::SpruceLog, Block::SpruceWood, @@ -3245,7 +3246,7 @@ pub static SPRUCE_LOGS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedSpruceWood, ]) }); -pub static STAIRS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static STAIRS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::BambooMosaicStairs, Block::CobblestoneStairs, @@ -3305,7 +3306,7 @@ pub static STAIRS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryStairs, ]) }); -pub static STANDING_SIGNS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static STANDING_SIGNS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakSign, Block::SpruceSign, @@ -3320,7 +3321,7 @@ pub static STANDING_SIGNS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherrySign, ]) }); -pub static STONE_BRICKS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static STONE_BRICKS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::StoneBricks, Block::MossyStoneBricks, @@ -3328,9 +3329,9 @@ pub static STONE_BRICKS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::ChiseledStoneBricks, ]) }); -pub static STONE_BUTTONS: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::StoneButton, Block::PolishedBlackstoneButton])); -pub static STONE_ORE_REPLACEABLES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static STONE_BUTTONS: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::StoneButton, Block::PolishedBlackstoneButton])); +pub static STONE_ORE_REPLACEABLES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Stone, Block::Granite, @@ -3338,15 +3339,15 @@ pub static STONE_ORE_REPLACEABLES: Lazy<HashSet<Block>> = Lazy::new(|| { Block::Andesite, ]) }); -pub static STONE_PRESSURE_PLATES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static STONE_PRESSURE_PLATES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::StonePressurePlate, Block::PolishedBlackstonePressurePlate, ]) }); -pub static STRIDER_WARM_BLOCKS: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Lava])); -pub static SWORD_EFFICIENT: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static STRIDER_WARM_BLOCKS: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Lava])); +pub static SWORD_EFFICIENT: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::ShortGrass, Block::Fern, @@ -3438,7 +3439,7 @@ pub static SWORD_EFFICIENT: Lazy<HashSet<Block>> = Lazy::new(|| { Block::PitcherCrop, ]) }); -pub static TALL_FLOWERS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static TALL_FLOWERS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Sunflower, Block::Lilac, @@ -3447,7 +3448,7 @@ pub static TALL_FLOWERS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::PitcherPlant, ]) }); -pub static TERRACOTTA: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static TERRACOTTA: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Terracotta, Block::WhiteTerracotta, @@ -3468,9 +3469,9 @@ pub static TERRACOTTA: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BlackTerracotta, ]) }); -pub static TRAIL_RUINS_REPLACEABLE: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::Gravel])); -pub static TRAPDOORS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static TRAIL_RUINS_REPLACEABLE: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::Gravel])); +pub static TRAPDOORS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::IronTrapdoor, Block::CopperTrapdoor, @@ -3494,7 +3495,7 @@ pub static TRAPDOORS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryTrapdoor, ]) }); -pub static UNDERWATER_BONEMEALS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static UNDERWATER_BONEMEALS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Seagrass, Block::TubeCoralFan, @@ -3514,7 +3515,7 @@ pub static UNDERWATER_BONEMEALS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::HornCoral, ]) }); -pub static UNSTABLE_BOTTOM_CENTER: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static UNSTABLE_BOTTOM_CENTER: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::AcaciaFenceGate, Block::BirchFenceGate, @@ -3529,11 +3530,11 @@ pub static UNSTABLE_BOTTOM_CENTER: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryFenceGate, ]) }); -pub static VALID_SPAWN: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::GrassBlock, Block::Podzol])); -pub static VIBRATION_RESONATORS: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::AmethystBlock])); -pub static WALL_CORALS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static VALID_SPAWN: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::GrassBlock, Block::Podzol])); +pub static VIBRATION_RESONATORS: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::AmethystBlock])); +pub static WALL_CORALS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::TubeCoralWallFan, Block::BrainCoralWallFan, @@ -3542,7 +3543,7 @@ pub static WALL_CORALS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::HornCoralWallFan, ]) }); -pub static WALL_HANGING_SIGNS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WALL_HANGING_SIGNS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakWallHangingSign, Block::SpruceWallHangingSign, @@ -3557,7 +3558,7 @@ pub static WALL_HANGING_SIGNS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BambooWallHangingSign, ]) }); -pub static WALL_POST_OVERRIDE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WALL_POST_OVERRIDE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Torch, Block::SoulTorch, @@ -3634,7 +3635,7 @@ pub static WALL_POST_OVERRIDE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::PolishedBlackstonePressurePlate, ]) }); -pub static WALL_SIGNS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WALL_SIGNS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakWallSign, Block::SpruceWallSign, @@ -3649,7 +3650,7 @@ pub static WALL_SIGNS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryWallSign, ]) }); -pub static WALLS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WALLS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::CobblestoneWall, Block::MossyCobblestoneWall, @@ -3678,7 +3679,7 @@ pub static WALLS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::TuffBrickWall, ]) }); -pub static WARPED_STEMS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WARPED_STEMS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::WarpedStem, Block::StrippedWarpedStem, @@ -3686,9 +3687,9 @@ pub static WARPED_STEMS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::StrippedWarpedHyphae, ]) }); -pub static WART_BLOCKS: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::NetherWartBlock, Block::WarpedWartBlock])); -pub static WITHER_IMMUNE: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WART_BLOCKS: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::NetherWartBlock, Block::WarpedWartBlock])); +pub static WITHER_IMMUNE: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::Barrier, Block::Bedrock, @@ -3705,9 +3706,9 @@ pub static WITHER_IMMUNE: Lazy<HashSet<Block>> = Lazy::new(|| { Block::ReinforcedDeepslate, ]) }); -pub static WITHER_SUMMON_BASE_BLOCKS: Lazy<HashSet<Block>> = - Lazy::new(|| HashSet::from_iter(vec![Block::SoulSand, Block::SoulSoil])); -pub static WOLVES_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WITHER_SUMMON_BASE_BLOCKS: LazyLock<HashSet<Block>> = + LazyLock::new(|| HashSet::from_iter(vec![Block::SoulSand, Block::SoulSoil])); +pub static WOLVES_SPAWNABLE_ON: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::GrassBlock, Block::Snow, @@ -3716,7 +3717,7 @@ pub static WOLVES_SPAWNABLE_ON: Lazy<HashSet<Block>> = Lazy::new(|| { Block::Podzol, ]) }); -pub static WOODEN_BUTTONS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WOODEN_BUTTONS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakButton, Block::SpruceButton, @@ -3731,7 +3732,7 @@ pub static WOODEN_BUTTONS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryButton, ]) }); -pub static WOODEN_DOORS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WOODEN_DOORS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakDoor, Block::SpruceDoor, @@ -3746,7 +3747,7 @@ pub static WOODEN_DOORS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryDoor, ]) }); -pub static WOODEN_FENCES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WOODEN_FENCES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakFence, Block::AcaciaFence, @@ -3761,7 +3762,7 @@ pub static WOODEN_FENCES: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryFence, ]) }); -pub static WOODEN_PRESSURE_PLATES: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WOODEN_PRESSURE_PLATES: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakPressurePlate, Block::SprucePressurePlate, @@ -3776,7 +3777,7 @@ pub static WOODEN_PRESSURE_PLATES: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryPressurePlate, ]) }); -pub static WOODEN_SLABS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WOODEN_SLABS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakSlab, Block::SpruceSlab, @@ -3791,7 +3792,7 @@ pub static WOODEN_SLABS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherrySlab, ]) }); -pub static WOODEN_STAIRS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WOODEN_STAIRS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::OakStairs, Block::SpruceStairs, @@ -3806,7 +3807,7 @@ pub static WOODEN_STAIRS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryStairs, ]) }); -pub static WOODEN_TRAPDOORS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WOODEN_TRAPDOORS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::AcaciaTrapdoor, Block::BirchTrapdoor, @@ -3821,7 +3822,7 @@ pub static WOODEN_TRAPDOORS: Lazy<HashSet<Block>> = Lazy::new(|| { Block::CherryTrapdoor, ]) }); -pub static WOOL: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WOOL: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::WhiteWool, Block::OrangeWool, @@ -3841,7 +3842,7 @@ pub static WOOL: Lazy<HashSet<Block>> = Lazy::new(|| { Block::BlackWool, ]) }); -pub static WOOL_CARPETS: Lazy<HashSet<Block>> = Lazy::new(|| { +pub static WOOL_CARPETS: LazyLock<HashSet<Block>> = LazyLock::new(|| { HashSet::from_iter(vec![ Block::WhiteCarpet, Block::OrangeCarpet, diff --git a/azalea-registry/src/tags/fluids.rs b/azalea-registry/src/tags/fluids.rs index 4f177f95..299fb301 100644 --- a/azalea-registry/src/tags/fluids.rs +++ b/azalea-registry/src/tags/fluids.rs @@ -1,12 +1,11 @@ // This file was generated by codegen/lib/code/tags.py, don't edit it manually! use std::collections::HashSet; - -use once_cell::sync::Lazy; +use std::sync::LazyLock; use crate::Fluid; -pub static LAVA: Lazy<HashSet<Fluid>> = - Lazy::new(|| HashSet::from_iter(vec![Fluid::Lava, Fluid::FlowingLava])); -pub static WATER: Lazy<HashSet<Fluid>> = - Lazy::new(|| HashSet::from_iter(vec![Fluid::Water, Fluid::FlowingWater])); +pub static LAVA: LazyLock<HashSet<Fluid>> = + LazyLock::new(|| HashSet::from_iter(vec![Fluid::Lava, Fluid::FlowingLava])); +pub static WATER: LazyLock<HashSet<Fluid>> = + LazyLock::new(|| HashSet::from_iter(vec![Fluid::Water, Fluid::FlowingWater])); diff --git a/azalea-registry/src/tags/items.rs b/azalea-registry/src/tags/items.rs index e8c31ddf..421b43af 100644 --- a/azalea-registry/src/tags/items.rs +++ b/azalea-registry/src/tags/items.rs @@ -1,12 +1,11 @@ // This file was generated by codegen/lib/code/tags.py, don't edit it manually! use std::collections::HashSet; - -use once_cell::sync::Lazy; +use std::sync::LazyLock; use crate::Item; -pub static ACACIA_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ACACIA_LOGS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::AcaciaLog, Item::AcaciaWood, @@ -14,13 +13,13 @@ pub static ACACIA_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::StrippedAcaciaWood, ]) }); -pub static ANVIL: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Anvil, Item::ChippedAnvil, Item::DamagedAnvil])); -pub static ARMADILLO_FOOD: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::SpiderEye])); -pub static ARROWS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Arrow, Item::TippedArrow, Item::SpectralArrow])); -pub static AXES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ANVIL: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Anvil, Item::ChippedAnvil, Item::DamagedAnvil])); +pub static ARMADILLO_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::SpiderEye])); +pub static ARROWS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Arrow, Item::TippedArrow, Item::SpectralArrow])); +pub static AXES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::DiamondAxe, Item::StoneAxe, @@ -30,11 +29,11 @@ pub static AXES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronAxe, ]) }); -pub static AXOLOTL_FOOD: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::TropicalFishBucket])); -pub static BAMBOO_BLOCKS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::BambooBlock, Item::StrippedBambooBlock])); -pub static BANNERS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static AXOLOTL_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::TropicalFishBucket])); +pub static BAMBOO_BLOCKS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::BambooBlock, Item::StrippedBambooBlock])); +pub static BANNERS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::WhiteBanner, Item::OrangeBanner, @@ -54,7 +53,7 @@ pub static BANNERS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::BlackBanner, ]) }); -pub static BEACON_PAYMENT_ITEMS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static BEACON_PAYMENT_ITEMS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::NetheriteIngot, Item::Emerald, @@ -63,7 +62,7 @@ pub static BEACON_PAYMENT_ITEMS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronIngot, ]) }); -pub static BEDS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static BEDS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::RedBed, Item::BlackBed, @@ -83,7 +82,7 @@ pub static BEDS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::YellowBed, ]) }); -pub static BEE_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static BEE_FOOD: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::FloweringAzaleaLeaves, Item::FloweringAzalea, @@ -113,7 +112,7 @@ pub static BEE_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| { Item::PitcherPlant, ]) }); -pub static BIRCH_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static BIRCH_LOGS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::BirchLog, Item::BirchWood, @@ -121,7 +120,7 @@ pub static BIRCH_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::StrippedBirchWood, ]) }); -pub static BOATS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static BOATS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakBoat, Item::SpruceBoat, @@ -143,7 +142,7 @@ pub static BOATS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryChestBoat, ]) }); -pub static BOOKSHELF_BOOKS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static BOOKSHELF_BOOKS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Book, Item::WrittenBook, @@ -152,7 +151,7 @@ pub static BOOKSHELF_BOOKS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::KnowledgeBook, ]) }); -pub static BREAKS_DECORATED_POTS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static BREAKS_DECORATED_POTS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Trident, Item::Mace, @@ -188,9 +187,9 @@ pub static BREAKS_DECORATED_POTS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronHoe, ]) }); -pub static BREWING_FUEL: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::BlazePowder])); -pub static BUNDLES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static BREWING_FUEL: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::BlazePowder])); +pub static BUNDLES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Bundle, Item::BlackBundle, @@ -211,7 +210,7 @@ pub static BUNDLES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::WhiteBundle, ]) }); -pub static BUTTONS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static BUTTONS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakButton, Item::SpruceButton, @@ -228,8 +227,9 @@ pub static BUTTONS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::PolishedBlackstoneButton, ]) }); -pub static CAMEL_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| HashSet::from_iter(vec![Item::Cactus])); -pub static CANDLES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static CAMEL_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Cactus])); +pub static CANDLES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Candle, Item::WhiteCandle, @@ -250,9 +250,9 @@ pub static CANDLES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::BlackCandle, ]) }); -pub static CAT_FOOD: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Cod, Item::Salmon])); -pub static CHERRY_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static CAT_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Cod, Item::Salmon])); +pub static CHERRY_LOGS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::CherryLog, Item::CherryWood, @@ -260,7 +260,7 @@ pub static CHERRY_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::StrippedCherryWood, ]) }); -pub static CHEST_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static CHEST_ARMOR: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::LeatherChestplate, Item::ChainmailChestplate, @@ -270,7 +270,7 @@ pub static CHEST_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { Item::NetheriteChestplate, ]) }); -pub static CHEST_BOATS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static CHEST_BOATS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakChestBoat, Item::SpruceChestBoat, @@ -283,7 +283,7 @@ pub static CHEST_BOATS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryChestBoat, ]) }); -pub static CHICKEN_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static CHICKEN_FOOD: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::WheatSeeds, Item::MelonSeeds, @@ -293,7 +293,7 @@ pub static CHICKEN_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| { Item::PitcherPod, ]) }); -pub static CLUSTER_MAX_HARVESTABLES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static CLUSTER_MAX_HARVESTABLES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::DiamondPickaxe, Item::GoldenPickaxe, @@ -303,13 +303,13 @@ pub static CLUSTER_MAX_HARVESTABLES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::WoodenPickaxe, ]) }); -pub static COAL_ORES: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::CoalOre, Item::DeepslateCoalOre])); -pub static COALS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Coal, Item::Charcoal])); -pub static COMPASSES: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Compass, Item::RecoveryCompass])); -pub static COMPLETES_FIND_TREE_TUTORIAL: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static COAL_ORES: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::CoalOre, Item::DeepslateCoalOre])); +pub static COALS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Coal, Item::Charcoal])); +pub static COMPASSES: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Compass, Item::RecoveryCompass])); +pub static COMPLETES_FIND_TREE_TUTORIAL: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::JungleLeaves, Item::OakLeaves, @@ -365,10 +365,11 @@ pub static COMPLETES_FIND_TREE_TUTORIAL: Lazy<HashSet<Item>> = Lazy::new(|| { Item::StrippedCherryWood, ]) }); -pub static COPPER_ORES: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::CopperOre, Item::DeepslateCopperOre])); -pub static COW_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| HashSet::from_iter(vec![Item::Wheat])); -pub static CREEPER_DROP_MUSIC_DISCS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static COPPER_ORES: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::CopperOre, Item::DeepslateCopperOre])); +pub static COW_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Wheat])); +pub static CREEPER_DROP_MUSIC_DISCS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::MusicDisc13, Item::MusicDiscCat, @@ -384,9 +385,9 @@ pub static CREEPER_DROP_MUSIC_DISCS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::MusicDiscWait, ]) }); -pub static CREEPER_IGNITERS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::FlintAndSteel, Item::FireCharge])); -pub static CRIMSON_STEMS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static CREEPER_IGNITERS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::FlintAndSteel, Item::FireCharge])); +pub static CRIMSON_STEMS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::CrimsonStem, Item::StrippedCrimsonStem, @@ -394,7 +395,7 @@ pub static CRIMSON_STEMS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::StrippedCrimsonHyphae, ]) }); -pub static DAMPENS_VIBRATIONS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static DAMPENS_VIBRATIONS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::WhiteWool, Item::OrangeWool, @@ -430,7 +431,7 @@ pub static DAMPENS_VIBRATIONS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::BlackCarpet, ]) }); -pub static DARK_OAK_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static DARK_OAK_LOGS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::DarkOakLog, Item::DarkOakWood, @@ -438,7 +439,7 @@ pub static DARK_OAK_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::StrippedDarkOakWood, ]) }); -pub static DECORATED_POT_INGREDIENTS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static DECORATED_POT_INGREDIENTS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Brick, Item::AnglerPotterySherd, @@ -466,7 +467,7 @@ pub static DECORATED_POT_INGREDIENTS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::ScrapePotterySherd, ]) }); -pub static DECORATED_POT_SHERDS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static DECORATED_POT_SHERDS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::AnglerPotterySherd, Item::ArcherPotterySherd, @@ -493,11 +494,11 @@ pub static DECORATED_POT_SHERDS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::ScrapePotterySherd, ]) }); -pub static DIAMOND_ORES: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::DiamondOre, Item::DeepslateDiamondOre])); -pub static DIAMOND_TOOL_MATERIALS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Diamond])); -pub static DIRT: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static DIAMOND_ORES: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::DiamondOre, Item::DeepslateDiamondOre])); +pub static DIAMOND_TOOL_MATERIALS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Diamond])); +pub static DIRT: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Dirt, Item::GrassBlock, @@ -510,7 +511,7 @@ pub static DIRT: Lazy<HashSet<Item>> = Lazy::new(|| { Item::MuddyMangroveRoots, ]) }); -pub static DOORS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static DOORS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::CopperDoor, Item::ExposedCopperDoor, @@ -534,9 +535,9 @@ pub static DOORS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryDoor, ]) }); -pub static DUPLICATES_ALLAYS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::AmethystShard])); -pub static DYEABLE: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static DUPLICATES_ALLAYS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::AmethystShard])); +pub static DYEABLE: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::LeatherHelmet, Item::LeatherChestplate, @@ -546,9 +547,9 @@ pub static DYEABLE: Lazy<HashSet<Item>> = Lazy::new(|| { Item::WolfArmor, ]) }); -pub static EMERALD_ORES: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::EmeraldOre, Item::DeepslateEmeraldOre])); -pub static ENCHANTABLE_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static EMERALD_ORES: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::EmeraldOre, Item::DeepslateEmeraldOre])); +pub static ENCHANTABLE_ARMOR: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::LeatherBoots, Item::ChainmailBoots, @@ -577,8 +578,9 @@ pub static ENCHANTABLE_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { Item::TurtleHelmet, ]) }); -pub static ENCHANTABLE_BOW: Lazy<HashSet<Item>> = Lazy::new(|| HashSet::from_iter(vec![Item::Bow])); -pub static ENCHANTABLE_CHEST_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ENCHANTABLE_BOW: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Bow])); +pub static ENCHANTABLE_CHEST_ARMOR: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::LeatherChestplate, Item::ChainmailChestplate, @@ -588,9 +590,9 @@ pub static ENCHANTABLE_CHEST_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { Item::NetheriteChestplate, ]) }); -pub static ENCHANTABLE_CROSSBOW: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Crossbow])); -pub static ENCHANTABLE_DURABILITY: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ENCHANTABLE_CROSSBOW: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Crossbow])); +pub static ENCHANTABLE_DURABILITY: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Elytra, Item::Shield, @@ -661,7 +663,7 @@ pub static ENCHANTABLE_DURABILITY: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronHoe, ]) }); -pub static ENCHANTABLE_EQUIPPABLE: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ENCHANTABLE_EQUIPPABLE: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Elytra, Item::CarvedPumpkin, @@ -699,7 +701,7 @@ pub static ENCHANTABLE_EQUIPPABLE: Lazy<HashSet<Item>> = Lazy::new(|| { Item::PiglinHead, ]) }); -pub static ENCHANTABLE_FIRE_ASPECT: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ENCHANTABLE_FIRE_ASPECT: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Mace, Item::DiamondSword, @@ -710,9 +712,9 @@ pub static ENCHANTABLE_FIRE_ASPECT: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronSword, ]) }); -pub static ENCHANTABLE_FISHING: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::FishingRod])); -pub static ENCHANTABLE_FOOT_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ENCHANTABLE_FISHING: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::FishingRod])); +pub static ENCHANTABLE_FOOT_ARMOR: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::LeatherBoots, Item::ChainmailBoots, @@ -722,7 +724,7 @@ pub static ENCHANTABLE_FOOT_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { Item::NetheriteBoots, ]) }); -pub static ENCHANTABLE_HEAD_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ENCHANTABLE_HEAD_ARMOR: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::LeatherHelmet, Item::ChainmailHelmet, @@ -733,7 +735,7 @@ pub static ENCHANTABLE_HEAD_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { Item::TurtleHelmet, ]) }); -pub static ENCHANTABLE_LEG_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ENCHANTABLE_LEG_ARMOR: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::LeatherLeggings, Item::ChainmailLeggings, @@ -743,9 +745,9 @@ pub static ENCHANTABLE_LEG_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { Item::NetheriteLeggings, ]) }); -pub static ENCHANTABLE_MACE: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Mace])); -pub static ENCHANTABLE_MINING: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ENCHANTABLE_MACE: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Mace])); +pub static ENCHANTABLE_MINING: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Shears, Item::DiamondAxe, @@ -774,7 +776,7 @@ pub static ENCHANTABLE_MINING: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronHoe, ]) }); -pub static ENCHANTABLE_MINING_LOOT: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ENCHANTABLE_MINING_LOOT: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::DiamondAxe, Item::StoneAxe, @@ -802,7 +804,7 @@ pub static ENCHANTABLE_MINING_LOOT: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronHoe, ]) }); -pub static ENCHANTABLE_SHARP_WEAPON: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ENCHANTABLE_SHARP_WEAPON: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::DiamondSword, Item::StoneSword, @@ -818,7 +820,7 @@ pub static ENCHANTABLE_SHARP_WEAPON: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronAxe, ]) }); -pub static ENCHANTABLE_SWORD: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ENCHANTABLE_SWORD: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::DiamondSword, Item::StoneSword, @@ -828,9 +830,9 @@ pub static ENCHANTABLE_SWORD: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronSword, ]) }); -pub static ENCHANTABLE_TRIDENT: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Trident])); -pub static ENCHANTABLE_VANISHING: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ENCHANTABLE_TRIDENT: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Trident])); +pub static ENCHANTABLE_VANISHING: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Compass, Item::CarvedPumpkin, @@ -910,7 +912,7 @@ pub static ENCHANTABLE_VANISHING: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronHoe, ]) }); -pub static ENCHANTABLE_WEAPON: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static ENCHANTABLE_WEAPON: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Mace, Item::DiamondSword, @@ -927,7 +929,7 @@ pub static ENCHANTABLE_WEAPON: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronAxe, ]) }); -pub static FENCE_GATES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static FENCE_GATES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::AcaciaFenceGate, Item::BirchFenceGate, @@ -942,7 +944,7 @@ pub static FENCE_GATES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryFenceGate, ]) }); -pub static FENCES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static FENCES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::NetherBrickFence, Item::OakFence, @@ -958,7 +960,7 @@ pub static FENCES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryFence, ]) }); -pub static FISHES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static FISHES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Cod, Item::CookedCod, @@ -968,7 +970,7 @@ pub static FISHES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::TropicalFish, ]) }); -pub static FLOWERS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static FLOWERS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::FloweringAzaleaLeaves, Item::FloweringAzalea, @@ -998,7 +1000,7 @@ pub static FLOWERS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::PitcherPlant, ]) }); -pub static FOOT_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static FOOT_ARMOR: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::LeatherBoots, Item::ChainmailBoots, @@ -1008,9 +1010,9 @@ pub static FOOT_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { Item::NetheriteBoots, ]) }); -pub static FOX_FOOD: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::SweetBerries, Item::GlowBerries])); -pub static FREEZE_IMMUNE_WEARABLES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static FOX_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::SweetBerries, Item::GlowBerries])); +pub static FREEZE_IMMUNE_WEARABLES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::LeatherBoots, Item::LeatherLeggings, @@ -1019,22 +1021,24 @@ pub static FREEZE_IMMUNE_WEARABLES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::LeatherHorseArmor, ]) }); -pub static FROG_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| HashSet::from_iter(vec![Item::SlimeBall])); -pub static FURNACE_MINECART_FUEL: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Coal, Item::Charcoal])); -pub static GAZE_DISGUISE_EQUIPMENT: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::CarvedPumpkin])); -pub static GOAT_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| HashSet::from_iter(vec![Item::Wheat])); -pub static GOLD_ORES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static FROG_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::SlimeBall])); +pub static FURNACE_MINECART_FUEL: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Coal, Item::Charcoal])); +pub static GAZE_DISGUISE_EQUIPMENT: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::CarvedPumpkin])); +pub static GOAT_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Wheat])); +pub static GOLD_ORES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::GoldOre, Item::NetherGoldOre, Item::DeepslateGoldOre, ]) }); -pub static GOLD_TOOL_MATERIALS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::GoldIngot])); -pub static HANGING_SIGNS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static GOLD_TOOL_MATERIALS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::GoldIngot])); +pub static HANGING_SIGNS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakHangingSign, Item::SpruceHangingSign, @@ -1049,7 +1053,7 @@ pub static HANGING_SIGNS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::BambooHangingSign, ]) }); -pub static HEAD_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static HEAD_ARMOR: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::LeatherHelmet, Item::ChainmailHelmet, @@ -1060,7 +1064,7 @@ pub static HEAD_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { Item::TurtleHelmet, ]) }); -pub static HOES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static HOES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::DiamondHoe, Item::StoneHoe, @@ -1070,9 +1074,9 @@ pub static HOES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronHoe, ]) }); -pub static HOGLIN_FOOD: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::CrimsonFungus])); -pub static HORSE_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static HOGLIN_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::CrimsonFungus])); +pub static HORSE_FOOD: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Wheat, Item::Sugar, @@ -1083,20 +1087,20 @@ pub static HORSE_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| { Item::EnchantedGoldenApple, ]) }); -pub static HORSE_TEMPT_ITEMS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static HORSE_TEMPT_ITEMS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::GoldenCarrot, Item::GoldenApple, Item::EnchantedGoldenApple, ]) }); -pub static IGNORED_BY_PIGLIN_BABIES: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Leather])); -pub static IRON_ORES: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::IronOre, Item::DeepslateIronOre])); -pub static IRON_TOOL_MATERIALS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::IronIngot])); -pub static JUNGLE_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static IGNORED_BY_PIGLIN_BABIES: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Leather])); +pub static IRON_ORES: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::IronOre, Item::DeepslateIronOre])); +pub static IRON_TOOL_MATERIALS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::IronIngot])); +pub static JUNGLE_LOGS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::JungleLog, Item::JungleWood, @@ -1104,9 +1108,9 @@ pub static JUNGLE_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::StrippedJungleWood, ]) }); -pub static LAPIS_ORES: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::LapisOre, Item::DeepslateLapisOre])); -pub static LEAVES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static LAPIS_ORES: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::LapisOre, Item::DeepslateLapisOre])); +pub static LEAVES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::JungleLeaves, Item::OakLeaves, @@ -1120,9 +1124,9 @@ pub static LEAVES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryLeaves, ]) }); -pub static LECTERN_BOOKS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::WrittenBook, Item::WritableBook])); -pub static LEG_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static LECTERN_BOOKS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::WrittenBook, Item::WritableBook])); +pub static LEG_ARMOR: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::LeatherLeggings, Item::ChainmailLeggings, @@ -1132,11 +1136,11 @@ pub static LEG_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { Item::NetheriteLeggings, ]) }); -pub static LLAMA_FOOD: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Wheat, Item::HayBlock])); -pub static LLAMA_TEMPT_ITEMS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::HayBlock])); -pub static LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static LLAMA_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Wheat, Item::HayBlock])); +pub static LLAMA_TEMPT_ITEMS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::HayBlock])); +pub static LOGS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::CrimsonStem, Item::StrippedCrimsonStem, @@ -1180,7 +1184,7 @@ pub static LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::StrippedCherryWood, ]) }); -pub static LOGS_THAT_BURN: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static LOGS_THAT_BURN: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::DarkOakLog, Item::DarkOakWood, @@ -1216,7 +1220,7 @@ pub static LOGS_THAT_BURN: Lazy<HashSet<Item>> = Lazy::new(|| { Item::StrippedCherryWood, ]) }); -pub static MANGROVE_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static MANGROVE_LOGS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::MangroveLog, Item::MangroveWood, @@ -1224,9 +1228,9 @@ pub static MANGROVE_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::StrippedMangroveWood, ]) }); -pub static MAP_INVISIBILITY_EQUIPMENT: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::CarvedPumpkin])); -pub static MEAT: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static MAP_INVISIBILITY_EQUIPMENT: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::CarvedPumpkin])); +pub static MEAT: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Beef, Item::Chicken, @@ -1241,9 +1245,9 @@ pub static MEAT: Lazy<HashSet<Item>> = Lazy::new(|| { Item::RottenFlesh, ]) }); -pub static NETHERITE_TOOL_MATERIALS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::NetheriteIngot])); -pub static NON_FLAMMABLE_WOOD: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static NETHERITE_TOOL_MATERIALS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::NetheriteIngot])); +pub static NON_FLAMMABLE_WOOD: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::WarpedStem, Item::StrippedWarpedStem, @@ -1277,7 +1281,7 @@ pub static NON_FLAMMABLE_WOOD: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CrimsonHangingSign, ]) }); -pub static NOTEBLOCK_TOP_INSTRUMENTS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static NOTEBLOCK_TOP_INSTRUMENTS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::ZombieHead, Item::SkeletonSkull, @@ -1288,7 +1292,7 @@ pub static NOTEBLOCK_TOP_INSTRUMENTS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::PlayerHead, ]) }); -pub static OAK_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static OAK_LOGS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakLog, Item::OakWood, @@ -1296,12 +1300,13 @@ pub static OAK_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::StrippedOakWood, ]) }); -pub static OCELOT_FOOD: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Cod, Item::Salmon])); -pub static PANDA_EATS_FROM_GROUND: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Cake, Item::Bamboo])); -pub static PANDA_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| HashSet::from_iter(vec![Item::Bamboo])); -pub static PARROT_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static OCELOT_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Cod, Item::Salmon])); +pub static PANDA_EATS_FROM_GROUND: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Cake, Item::Bamboo])); +pub static PANDA_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Bamboo])); +pub static PARROT_FOOD: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::WheatSeeds, Item::MelonSeeds, @@ -1311,9 +1316,9 @@ pub static PARROT_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| { Item::PitcherPod, ]) }); -pub static PARROT_POISONOUS_FOOD: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Cookie])); -pub static PICKAXES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static PARROT_POISONOUS_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Cookie])); +pub static PICKAXES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::DiamondPickaxe, Item::StonePickaxe, @@ -1323,11 +1328,11 @@ pub static PICKAXES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronPickaxe, ]) }); -pub static PIG_FOOD: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Carrot, Item::Potato, Item::Beetroot])); -pub static PIGLIN_FOOD: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Porkchop, Item::CookedPorkchop])); -pub static PIGLIN_LOVED: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static PIG_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Carrot, Item::Potato, Item::Beetroot])); +pub static PIGLIN_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Porkchop, Item::CookedPorkchop])); +pub static PIGLIN_LOVED: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::GoldBlock, Item::GildedBlackstone, @@ -1356,9 +1361,10 @@ pub static PIGLIN_LOVED: Lazy<HashSet<Item>> = Lazy::new(|| { Item::DeepslateGoldOre, ]) }); -pub static PIGLIN_REPELLENTS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::SoulTorch, Item::SoulLantern, Item::SoulCampfire])); -pub static PIGLIN_SAFE_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static PIGLIN_REPELLENTS: LazyLock<HashSet<Item>> = LazyLock::new(|| { + HashSet::from_iter(vec![Item::SoulTorch, Item::SoulLantern, Item::SoulCampfire]) +}); +pub static PIGLIN_SAFE_ARMOR: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::GoldenHelmet, Item::GoldenChestplate, @@ -1366,7 +1372,7 @@ pub static PIGLIN_SAFE_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { Item::GoldenBoots, ]) }); -pub static PLANKS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static PLANKS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakPlanks, Item::SprucePlanks, @@ -1381,9 +1387,9 @@ pub static PLANKS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryPlanks, ]) }); -pub static RABBIT_FOOD: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Carrot, Item::GoldenCarrot, Item::Dandelion])); -pub static RAILS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static RABBIT_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Carrot, Item::GoldenCarrot, Item::Dandelion])); +pub static RAILS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Rail, Item::PoweredRail, @@ -1391,25 +1397,25 @@ pub static RAILS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::ActivatorRail, ]) }); -pub static REDSTONE_ORES: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::RedstoneOre, Item::DeepslateRedstoneOre])); -pub static REPAIRS_CHAIN_ARMOR: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::IronIngot])); -pub static REPAIRS_DIAMOND_ARMOR: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Diamond])); -pub static REPAIRS_GOLD_ARMOR: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::GoldIngot])); -pub static REPAIRS_IRON_ARMOR: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::IronIngot])); -pub static REPAIRS_LEATHER_ARMOR: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Leather])); -pub static REPAIRS_NETHERITE_ARMOR: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::NetheriteIngot])); -pub static REPAIRS_TURTLE_HELMET: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::TurtleScute])); -pub static REPAIRS_WOLF_ARMOR: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::ArmadilloScute])); -pub static SAND: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static REDSTONE_ORES: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::RedstoneOre, Item::DeepslateRedstoneOre])); +pub static REPAIRS_CHAIN_ARMOR: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::IronIngot])); +pub static REPAIRS_DIAMOND_ARMOR: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Diamond])); +pub static REPAIRS_GOLD_ARMOR: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::GoldIngot])); +pub static REPAIRS_IRON_ARMOR: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::IronIngot])); +pub static REPAIRS_LEATHER_ARMOR: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Leather])); +pub static REPAIRS_NETHERITE_ARMOR: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::NetheriteIngot])); +pub static REPAIRS_TURTLE_HELMET: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::TurtleScute])); +pub static REPAIRS_WOLF_ARMOR: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::ArmadilloScute])); +pub static SAND: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Sand, Item::RedSand, @@ -1417,7 +1423,7 @@ pub static SAND: Lazy<HashSet<Item>> = Lazy::new(|| { Item::SuspiciousSand, ]) }); -pub static SAPLINGS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static SAPLINGS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakSapling, Item::SpruceSapling, @@ -1431,8 +1437,9 @@ pub static SAPLINGS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherrySapling, ]) }); -pub static SHEEP_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| HashSet::from_iter(vec![Item::Wheat])); -pub static SHOVELS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static SHEEP_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Wheat])); +pub static SHOVELS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::DiamondShovel, Item::StoneShovel, @@ -1442,7 +1449,7 @@ pub static SHOVELS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronShovel, ]) }); -pub static SHULKER_BOXES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static SHULKER_BOXES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::ShulkerBox, Item::BlackShulkerBox, @@ -1463,7 +1470,7 @@ pub static SHULKER_BOXES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::YellowShulkerBox, ]) }); -pub static SIGNS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static SIGNS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakSign, Item::SpruceSign, @@ -1478,7 +1485,7 @@ pub static SIGNS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherrySign, ]) }); -pub static SKULLS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static SKULLS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::PlayerHead, Item::CreeperHead, @@ -1489,7 +1496,7 @@ pub static SKULLS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::PiglinHead, ]) }); -pub static SLABS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static SLABS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::BambooMosaicSlab, Item::StoneSlab, @@ -1553,7 +1560,7 @@ pub static SLABS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherrySlab, ]) }); -pub static SMALL_FLOWERS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static SMALL_FLOWERS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Dandelion, Item::Poppy, @@ -1571,13 +1578,13 @@ pub static SMALL_FLOWERS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::Torchflower, ]) }); -pub static SMELTS_TO_GLASS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Sand, Item::RedSand])); -pub static SNIFFER_FOOD: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::TorchflowerSeeds])); -pub static SOUL_FIRE_BASE_BLOCKS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::SoulSand, Item::SoulSoil])); -pub static SPRUCE_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static SMELTS_TO_GLASS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Sand, Item::RedSand])); +pub static SNIFFER_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::TorchflowerSeeds])); +pub static SOUL_FIRE_BASE_BLOCKS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::SoulSand, Item::SoulSoil])); +pub static SPRUCE_LOGS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::SpruceLog, Item::SpruceWood, @@ -1585,7 +1592,7 @@ pub static SPRUCE_LOGS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::StrippedSpruceWood, ]) }); -pub static STAIRS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static STAIRS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::BambooMosaicStairs, Item::CobblestoneStairs, @@ -1645,7 +1652,7 @@ pub static STAIRS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryStairs, ]) }); -pub static STONE_BRICKS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static STONE_BRICKS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::StoneBricks, Item::MossyStoneBricks, @@ -1653,27 +1660,27 @@ pub static STONE_BRICKS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::ChiseledStoneBricks, ]) }); -pub static STONE_BUTTONS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::StoneButton, Item::PolishedBlackstoneButton])); -pub static STONE_CRAFTING_MATERIALS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static STONE_BUTTONS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::StoneButton, Item::PolishedBlackstoneButton])); +pub static STONE_CRAFTING_MATERIALS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Cobblestone, Item::Blackstone, Item::CobbledDeepslate, ]) }); -pub static STONE_TOOL_MATERIALS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static STONE_TOOL_MATERIALS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Cobblestone, Item::Blackstone, Item::CobbledDeepslate, ]) }); -pub static STRIDER_FOOD: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::WarpedFungus])); -pub static STRIDER_TEMPT_ITEMS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::WarpedFungusOnAStick, Item::WarpedFungus])); -pub static SWORDS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static STRIDER_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::WarpedFungus])); +pub static STRIDER_TEMPT_ITEMS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::WarpedFungusOnAStick, Item::WarpedFungus])); +pub static SWORDS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::DiamondSword, Item::StoneSword, @@ -1683,7 +1690,7 @@ pub static SWORDS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::IronSword, ]) }); -pub static TALL_FLOWERS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static TALL_FLOWERS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Sunflower, Item::Lilac, @@ -1692,7 +1699,7 @@ pub static TALL_FLOWERS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::PitcherPlant, ]) }); -pub static TERRACOTTA: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static TERRACOTTA: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Terracotta, Item::WhiteTerracotta, @@ -1713,7 +1720,7 @@ pub static TERRACOTTA: Lazy<HashSet<Item>> = Lazy::new(|| { Item::BlackTerracotta, ]) }); -pub static TRAPDOORS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static TRAPDOORS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::IronTrapdoor, Item::CopperTrapdoor, @@ -1737,7 +1744,7 @@ pub static TRAPDOORS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryTrapdoor, ]) }); -pub static TRIM_MATERIALS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static TRIM_MATERIALS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::IronIngot, Item::CopperIngot, @@ -1751,7 +1758,7 @@ pub static TRIM_MATERIALS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::AmethystShard, ]) }); -pub static TRIM_TEMPLATES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static TRIM_TEMPLATES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::WardArmorTrimSmithingTemplate, Item::SpireArmorTrimSmithingTemplate, @@ -1773,7 +1780,7 @@ pub static TRIM_TEMPLATES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::BoltArmorTrimSmithingTemplate, ]) }); -pub static TRIMMABLE_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static TRIMMABLE_ARMOR: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::LeatherBoots, Item::ChainmailBoots, @@ -1802,9 +1809,9 @@ pub static TRIMMABLE_ARMOR: Lazy<HashSet<Item>> = Lazy::new(|| { Item::TurtleHelmet, ]) }); -pub static TURTLE_FOOD: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::Seagrass])); -pub static VILLAGER_PICKS_UP: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static TURTLE_FOOD: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::Seagrass])); +pub static VILLAGER_PICKS_UP: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Bread, Item::Wheat, @@ -1817,7 +1824,7 @@ pub static VILLAGER_PICKS_UP: Lazy<HashSet<Item>> = Lazy::new(|| { Item::PitcherPod, ]) }); -pub static VILLAGER_PLANTABLE_SEEDS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static VILLAGER_PLANTABLE_SEEDS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::WheatSeeds, Item::Potato, @@ -1827,7 +1834,7 @@ pub static VILLAGER_PLANTABLE_SEEDS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::PitcherPod, ]) }); -pub static WALLS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static WALLS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::CobblestoneWall, Item::MossyCobblestoneWall, @@ -1856,7 +1863,7 @@ pub static WALLS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::TuffBrickWall, ]) }); -pub static WARPED_STEMS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static WARPED_STEMS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::WarpedStem, Item::StrippedWarpedStem, @@ -1864,9 +1871,9 @@ pub static WARPED_STEMS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::StrippedWarpedHyphae, ]) }); -pub static WART_BLOCKS: Lazy<HashSet<Item>> = - Lazy::new(|| HashSet::from_iter(vec![Item::NetherWartBlock, Item::WarpedWartBlock])); -pub static WOLF_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static WART_BLOCKS: LazyLock<HashSet<Item>> = + LazyLock::new(|| HashSet::from_iter(vec![Item::NetherWartBlock, Item::WarpedWartBlock])); +pub static WOLF_FOOD: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::Cod, Item::CookedCod, @@ -1888,7 +1895,7 @@ pub static WOLF_FOOD: Lazy<HashSet<Item>> = Lazy::new(|| { Item::RottenFlesh, ]) }); -pub static WOODEN_BUTTONS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static WOODEN_BUTTONS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakButton, Item::SpruceButton, @@ -1903,7 +1910,7 @@ pub static WOODEN_BUTTONS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryButton, ]) }); -pub static WOODEN_DOORS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static WOODEN_DOORS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakDoor, Item::SpruceDoor, @@ -1918,7 +1925,7 @@ pub static WOODEN_DOORS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryDoor, ]) }); -pub static WOODEN_FENCES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static WOODEN_FENCES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakFence, Item::AcaciaFence, @@ -1933,7 +1940,7 @@ pub static WOODEN_FENCES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryFence, ]) }); -pub static WOODEN_PRESSURE_PLATES: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static WOODEN_PRESSURE_PLATES: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakPressurePlate, Item::SprucePressurePlate, @@ -1948,7 +1955,7 @@ pub static WOODEN_PRESSURE_PLATES: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryPressurePlate, ]) }); -pub static WOODEN_SLABS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static WOODEN_SLABS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakSlab, Item::SpruceSlab, @@ -1963,7 +1970,7 @@ pub static WOODEN_SLABS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherrySlab, ]) }); -pub static WOODEN_STAIRS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static WOODEN_STAIRS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakStairs, Item::SpruceStairs, @@ -1978,7 +1985,7 @@ pub static WOODEN_STAIRS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryStairs, ]) }); -pub static WOODEN_TOOL_MATERIALS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static WOODEN_TOOL_MATERIALS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::OakPlanks, Item::SprucePlanks, @@ -1993,7 +2000,7 @@ pub static WOODEN_TOOL_MATERIALS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryPlanks, ]) }); -pub static WOODEN_TRAPDOORS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static WOODEN_TRAPDOORS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::AcaciaTrapdoor, Item::BirchTrapdoor, @@ -2008,7 +2015,7 @@ pub static WOODEN_TRAPDOORS: Lazy<HashSet<Item>> = Lazy::new(|| { Item::CherryTrapdoor, ]) }); -pub static WOOL: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static WOOL: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::WhiteWool, Item::OrangeWool, @@ -2028,7 +2035,7 @@ pub static WOOL: Lazy<HashSet<Item>> = Lazy::new(|| { Item::BlackWool, ]) }); -pub static WOOL_CARPETS: Lazy<HashSet<Item>> = Lazy::new(|| { +pub static WOOL_CARPETS: LazyLock<HashSet<Item>> = LazyLock::new(|| { HashSet::from_iter(vec![ Item::WhiteCarpet, Item::OrangeCarpet, diff --git a/azalea-world/Cargo.toml b/azalea-world/Cargo.toml index c69bff4c..c7b4680b 100644 --- a/azalea-world/Cargo.toml +++ b/azalea-world/Cargo.toml @@ -11,20 +11,18 @@ version = "0.10.3+mc1.21.1" [dependencies] azalea-block = { path = "../azalea-block", default-features = false, version = "0.10.0" } azalea-buf = { path = "../azalea-buf", version = "0.10.0" } -azalea-core = { path = "../azalea-core", version = "0.10.0", features = ["bevy_ecs"] } +azalea-core = { path = "../azalea-core", version = "0.10.0", features = [ + "bevy_ecs", +] } azalea-registry = { path = "../azalea-registry", version = "0.10.0" } bevy_ecs = { workspace = true } derive_more = { workspace = true, features = ["deref", "deref_mut"] } nohash-hasher = { workspace = true } -#once_cell = { workspace = true } parking_lot = { workspace = true } rustc-hash = { workspace = true } -#serde = { workspace = true } -#serde_json = { workspace = true } simdnbt = { workspace = true } thiserror = { workspace = true } tracing = { workspace = true } -#uuid = { workspace = true } [dev-dependencies] azalea-client = { path = "../azalea-client" } diff --git a/azalea/src/pathfinder/goals.rs b/azalea/src/pathfinder/goals.rs index 7e02d0cf..7e33f7d8 100644 --- a/azalea/src/pathfinder/goals.rs +++ b/azalea/src/pathfinder/goals.rs @@ -1,10 +1,11 @@ //! The goals that a pathfinder can try to reach. +use std::f32::consts::SQRT_2; + use azalea_core::position::{BlockPos, Vec3}; use azalea_world::ChunkStorage; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; -use std::f32::consts::SQRT_2; use super::costs::{COST_HEURISTIC, FALL_N_BLOCKS_COST, JUMP_ONE_BLOCK_COST}; diff --git a/codegen/lib/code/shapes.py b/codegen/lib/code/shapes.py index b50cdcf1..12b333d1 100755 --- a/codegen/lib/code/shapes.py +++ b/codegen/lib/code/shapes.py @@ -71,7 +71,7 @@ def generate_block_shapes_code(blocks: dict, shapes: dict, block_states_report, generated_shape_code += generate_code_for_shape(shape_id, shape) - # static SHAPES_MAP: [&Lazy<VoxelShape>; 26644] = [&SHAPE0, &SHAPE1, &SHAPE1, ...] + # static SHAPES_MAP: [&LazyLock<VoxelShape>; 26644] = [&SHAPE0, &SHAPE1, &SHAPE1, ...] empty_shapes = [] full_shapes = [] @@ -92,7 +92,7 @@ def generate_block_shapes_code(blocks: dict, shapes: dict, block_states_report, block_state_ids_to_shape_ids.append((block_state_id, shape_id)) - generated_map_code = f'static SHAPES_MAP: [&Lazy<VoxelShape>; {len(block_state_ids_to_shape_ids)}] = [' + generated_map_code = f'static SHAPES_MAP: [&LazyLock<VoxelShape>; {len(block_state_ids_to_shape_ids)}] = [' block_state_ids_to_shape_ids = sorted(block_state_ids_to_shape_ids, key=lambda x: x[0]) @@ -118,7 +118,7 @@ def generate_block_shapes_code(blocks: dict, shapes: dict, block_states_report, use super::VoxelShape; use crate::collision::{{self, Shapes}}; use azalea_block::*; -use once_cell::sync::Lazy; +use std::sync::LazyLock; pub trait BlockWithShape {{ fn shape(&self) -> &'static VoxelShape; @@ -156,7 +156,7 @@ def generate_code_for_shape(shape_id: str, parts: list[list[float]]): def make_arguments(part: list[float]): return ', '.join(map(lambda n: str(n).rstrip('0'), part)) code = '' - code += f'static SHAPE{shape_id}: Lazy<VoxelShape> = Lazy::new(|| {{' + code += f'static SHAPE{shape_id}: LazyLock<VoxelShape> = LazyLock::new(|| {{' steps = [] if parts == (): steps.append('collision::EMPTY_SHAPE.clone()') diff --git a/codegen/lib/code/tags.py b/codegen/lib/code/tags.py index ae409001..d43b0071 100644 --- a/codegen/lib/code/tags.py +++ b/codegen/lib/code/tags.py @@ -9,8 +9,7 @@ def generate_tags(registries: dict, file_name: str, struct_name: str): generated = f'''// This file was generated by codegen/lib/code/tags.py, don't edit it manually! use std::collections::HashSet; - -use once_cell::sync::Lazy; +use std::sync::LazyLock; use crate::{struct_name}; @@ -19,7 +18,7 @@ use crate::{struct_name}; for tag_name, tag in sorted(registries.items(), key=lambda x: x[0]): tag_name = tag_name.replace('/', '_') static_set_name = to_snake_case(tag_name).upper() - generated += f'pub static {static_set_name}: Lazy<HashSet<{struct_name}>> = Lazy::new(|| HashSet::from_iter(vec![' + generated += f'pub static {static_set_name}: LazyLock<HashSet<{struct_name}>> = LazyLock::new(|| HashSet::from_iter(vec![' queue = tag['values'].copy() while queue != []: |
