diff options
| author | mat <27899617+mat-1@users.noreply.github.com> | 2024-04-23 10:34:50 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-23 10:34:50 -0500 |
| commit | 1d80f531b74bc3b31023753acb81b35efcdadd73 (patch) | |
| tree | 675635c7c41fbb456e3e0dd7b9f09c7211d356f0 /azalea-buf/src | |
| parent | 0ddad8bd9c7c0e8846aec8bc90c95416418c9a63 (diff) | |
| download | azalea-drasl-1d80f531b74bc3b31023753acb81b35efcdadd73.tar.xz | |
1.20.5 (#127)
* 23w51b
* make recalculate_near_end_of_path public
so other plugins can do .after(recalculate_near_end_of_path)
* update to 24w03a i think
* start implementing 24w13a
* registries work (but a lot of packets are still broken)
* fix recipes and commands packets
* i love codecs :D i am not going insane :D mojang's java is very readable :D
* item components are "implemented" meowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeow
* update to 1.20.5-pre3
* fix all the broken packets and clippy (mojang please don't do an update like this again or i will murder someone)
* 1.20.5-rc1
* fix failing tests
* 1.20.5
Diffstat (limited to 'azalea-buf/src')
| -rwxr-xr-x | azalea-buf/src/read.rs | 20 | ||||
| -rwxr-xr-x | azalea-buf/src/write.rs | 9 |
2 files changed, 18 insertions, 11 deletions
diff --git a/azalea-buf/src/read.rs b/azalea-buf/src/read.rs index d5c4d0a8..b3352a80 100755 --- a/azalea-buf/src/read.rs +++ b/azalea-buf/src/read.rs @@ -103,17 +103,6 @@ fn read_utf_with_len(buf: &mut Cursor<&[u8]>, max_length: u32) -> Result<String, Ok(string) } -// fast varints modified from https://github.com/luojia65/mc-varint/blob/master/src/lib.rs#L67 -/// Read a single varint from the reader and return the value, along with the -/// number of bytes read -// pub async fn read_varint_async( -// reader: &mut (dyn AsyncRead + Unpin + Send), -// ) -> Result<i32, BufReadError> { let mut buffer = [0]; let mut ans = 0; for i -// in 0..5 { reader.read_exact(&mut buffer).await?; ans |= ((buffer[0] & -// 0b0111_1111) as i32) << (7 * i); if buffer[0] & 0b1000_0000 == 0 { break; } -// } Ok(ans) -// } - pub trait McBufReadable where Self: Sized, @@ -373,3 +362,12 @@ impl McBufReadable for simdnbt::owned::Nbt { Ok(simdnbt::owned::Nbt::read_unnamed(buf)?) } } + +impl<T> McBufReadable for Box<T> +where + T: McBufReadable, +{ + fn read_from(buf: &mut Cursor<&[u8]>) -> Result<Self, BufReadError> { + Ok(Box::new(T::read_from(buf)?)) + } +} diff --git a/azalea-buf/src/write.rs b/azalea-buf/src/write.rs index 7b1fb331..61dedfd8 100755 --- a/azalea-buf/src/write.rs +++ b/azalea-buf/src/write.rs @@ -281,3 +281,12 @@ impl McBufWritable for simdnbt::owned::Nbt { buf.write_all(&data) } } + +impl<T> McBufWritable for Box<T> +where + T: McBufWritable, +{ + fn write_into(&self, buf: &mut impl Write) -> Result<(), std::io::Error> { + T::write_into(&**self, buf) + } +} |
