aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--azalea-core/src/registries.rs8
-rw-r--r--azalea-protocol/src/packets/game/clientbound_login_packet.rs17
-rw-r--r--azalea-protocol/src/packets/game/mod.rs5
3 files changed, 21 insertions, 9 deletions
diff --git a/azalea-core/src/registries.rs b/azalea-core/src/registries.rs
new file mode 100644
index 00000000..605d7770
--- /dev/null
+++ b/azalea-core/src/registries.rs
@@ -0,0 +1,8 @@
+struct RegistryHolder {}
+
+fn make_network_codec() -> NetworkCodec {
+ // Codec codec = ResourceLocation.CODEC.xmap(ResourceKey::createRegistryKey, ResourceKey::location);
+ // Codec codec2 = codec.partialDispatch("type", mappedRegistry -> DataResult.success(mappedRegistry.key()), resourceKey -> RegistryHolder.getNetworkCodec(resourceKey).map(codec -> MappedRegistry.networkCodec(resourceKey, Lifecycle.experimental(), codec)));
+ // UnboundedMapCodec unboundedMapCodec = Codec.unboundedMap((Codec)codec, (Codec)codec2);
+ // return RegistryHolder.captureMap(unboundedMapCodec);
+}
diff --git a/azalea-protocol/src/packets/game/clientbound_login_packet.rs b/azalea-protocol/src/packets/game/clientbound_login_packet.rs
index fc701d9d..0e23460e 100644
--- a/azalea-protocol/src/packets/game/clientbound_login_packet.rs
+++ b/azalea-protocol/src/packets/game/clientbound_login_packet.rs
@@ -27,7 +27,7 @@ pub struct ClientboundLoginPacket {
pub game_type: GameType,
pub previous_game_type: Option<GameType>,
pub levels: Vec<ResourceLocation>,
- pub registry_holder: azalea_core::registry::RegistryAccess,
+ // pub registry_holder: azalea_core::registry::RegistryAccess,
}
impl ClientboundLoginPacket {
@@ -37,7 +37,7 @@ impl ClientboundLoginPacket {
pub fn write(&self, buf: &mut Vec<u8>) {
buf.write_int(self.player_id);
- buf.write_bool(self.hardcore);
+ // buf.write_bool(self.hardcore);
// buf.write_byte(self.game_type.
}
@@ -47,11 +47,12 @@ impl ClientboundLoginPacket {
let transaction_id = buf.read_varint().await? as u32;
let identifier = ResourceLocation::new(&buf.read_utf().await?)?;
let data = buf.read_bytes(1048576).await?;
- Ok(ClientboundLoginPacket {
- transaction_id,
- identifier,
- data,
- }
- .get())
+ panic!("not implemented");
+ // Ok(ClientboundLoginPacket {
+ // transaction_id,
+ // identifier,
+ // data,
+ // }
+ // .get())
}
}
diff --git a/azalea-protocol/src/packets/game/mod.rs b/azalea-protocol/src/packets/game/mod.rs
index 73f66c33..932435d9 100644
--- a/azalea-protocol/src/packets/game/mod.rs
+++ b/azalea-protocol/src/packets/game/mod.rs
@@ -8,7 +8,10 @@ use tokio::io::BufReader;
#[derive(Clone, Debug)]
pub enum GamePacket
where
- Self: Sized, {}
+ Self: Sized,
+{
+ ClientboundLoginPacket(clientbound_login_packet::ClientboundLoginPacket),
+}
#[async_trait]
impl ProtocolPacket for GamePacket {