diff options
Diffstat (limited to 'azalea-protocol/src/packets/common.rs')
| -rw-r--r-- | azalea-protocol/src/packets/common.rs | 24 |
1 files changed, 6 insertions, 18 deletions
diff --git a/azalea-protocol/src/packets/common.rs b/azalea-protocol/src/packets/common.rs index fcbf0b05..eb377683 100644 --- a/azalea-protocol/src/packets/common.rs +++ b/azalea-protocol/src/packets/common.rs @@ -4,7 +4,7 @@ use azalea_core::{ game_type::{GameMode, OptionalGameType}, identifier::Identifier, position::GlobalPos, - registry_holder::{DimensionTypeElement, RegistryHolder}, + registry_holder::{RegistryHolder, dimension_type::DimensionTypeElement}, }; use tracing::error; @@ -24,27 +24,15 @@ pub struct CommonPlayerSpawnInfo { pub sea_level: i32, } impl CommonPlayerSpawnInfo { - pub fn dimension_type( + pub fn dimension_type<'a>( &self, - registry_holder: &RegistryHolder, - ) -> Option<(Identifier, DimensionTypeElement)> { - let dimension_res = self - .dimension_type - .resolve_and_deserialize::<DimensionTypeElement>(registry_holder); - let Some(dimension_res) = dimension_res else { + registry_holder: &'a RegistryHolder, + ) -> Option<(&'a Identifier, &'a DimensionTypeElement)> { + let dimension_res = self.dimension_type.resolve(registry_holder); + let Some((dimension_type, dimension_data)) = dimension_res else { error!("Couldn't resolve dimension_type {:?}", self.dimension_type); return None; }; - let (dimension_type, dimension_data) = match dimension_res { - Ok(d) => d, - Err(err) => { - error!( - "Couldn't deserialize dimension_type {:?}: {err:?}", - self.dimension_type - ); - return None; - } - }; Some((dimension_type, dimension_data)) } |
