diff options
Diffstat (limited to 'minecraft-protocol')
10 files changed, 18 insertions, 39 deletions
diff --git a/minecraft-protocol/src/connect.rs b/minecraft-protocol/src/connect.rs index 7c6a5f18..f6dd9fe7 100644 --- a/minecraft-protocol/src/connect.rs +++ b/minecraft-protocol/src/connect.rs @@ -4,15 +4,10 @@ use crate::packets::game::GamePacket; use crate::packets::handshake::HandshakePacket; use crate::packets::login::LoginPacket; use crate::packets::status::StatusPacket; -use crate::packets::{ConnectionProtocol, ProtocolPacket}; use crate::read::read_packet; use crate::write::write_packet; -use crate::{mc_buf, packets::Packet, ServerIpAddress}; -use tokio::io::AsyncWriteExt; -use tokio::{ - io::{AsyncReadExt, BufReader}, - net::TcpStream, -}; +use crate::ServerIpAddress; +use tokio::net::TcpStream; pub enum PacketFlow { ClientToServer, diff --git a/minecraft-protocol/src/packets/game/mod.rs b/minecraft-protocol/src/packets/game/mod.rs index 06d8ae4c..a3ef2541 100644 --- a/minecraft-protocol/src/packets/game/mod.rs +++ b/minecraft-protocol/src/packets/game/mod.rs @@ -13,22 +13,16 @@ where #[async_trait] impl ProtocolPacket for GamePacket { fn id(&self) -> u32 { - match self { - _ => 0x00, - } + 0x00 } - fn write(&self, buf: &mut Vec<u8>) { - match self { - _ => (), - } - } + fn write(&self, _buf: &mut Vec<u8>) {} /// Read a packet by its id, ConnectionProtocol, and flow async fn read<T: tokio::io::AsyncRead + std::marker::Unpin + std::marker::Send>( - id: u32, + _id: u32, flow: &PacketFlow, - buf: &mut BufReader<T>, + _buf: &mut BufReader<T>, ) -> Result<GamePacket, String> where Self: Sized, diff --git a/minecraft-protocol/src/packets/handshake/client_intention_packet.rs b/minecraft-protocol/src/packets/handshake/client_intention_packet.rs index 54a08f39..3f7e3b37 100644 --- a/minecraft-protocol/src/packets/handshake/client_intention_packet.rs +++ b/minecraft-protocol/src/packets/handshake/client_intention_packet.rs @@ -1,12 +1,8 @@ use std::hash::Hash; -use async_trait::async_trait; use tokio::io::BufReader; -use crate::{ - mc_buf, - packets::{ConnectionProtocol, Packet}, -}; +use crate::{mc_buf, packets::ConnectionProtocol}; use super::HandshakePacket; @@ -32,7 +28,7 @@ impl ClientIntentionPacket { } pub async fn read<T: tokio::io::AsyncRead + std::marker::Unpin + std::marker::Send>( - buf: &mut BufReader<T>, + _buf: &mut BufReader<T>, ) -> Result<HandshakePacket, String> { Err("ClientIntentionPacket::parse not implemented".to_string()) // Ok(ClientIntentionPacket {}.get()) diff --git a/minecraft-protocol/src/packets/login/clientbound_hello_packet.rs b/minecraft-protocol/src/packets/login/clientbound_hello_packet.rs index 7e69e3ce..2041497a 100644 --- a/minecraft-protocol/src/packets/login/clientbound_hello_packet.rs +++ b/minecraft-protocol/src/packets/login/clientbound_hello_packet.rs @@ -1,8 +1,7 @@ -use async_trait::async_trait; use std::hash::Hash; use tokio::io::BufReader; -use crate::{mc_buf, packets::Packet}; +use crate::mc_buf; use super::LoginPacket; diff --git a/minecraft-protocol/src/packets/login/serverbound_hello_packet.rs b/minecraft-protocol/src/packets/login/serverbound_hello_packet.rs index 9415fe82..69448074 100644 --- a/minecraft-protocol/src/packets/login/serverbound_hello_packet.rs +++ b/minecraft-protocol/src/packets/login/serverbound_hello_packet.rs @@ -1,8 +1,7 @@ -use async_trait::async_trait; use std::hash::Hash; use tokio::io::BufReader; -use crate::{mc_buf, packets::Packet}; +use crate::mc_buf; use super::LoginPacket; @@ -21,7 +20,7 @@ impl ServerboundHelloPacket { } pub async fn read<T: tokio::io::AsyncRead + std::marker::Unpin + std::marker::Send>( - buf: &mut BufReader<T>, + _buf: &mut BufReader<T>, ) -> Result<LoginPacket, String> { Err("ServerboundHelloPacket::read not implemented".to_string()) } diff --git a/minecraft-protocol/src/packets/mod.rs b/minecraft-protocol/src/packets/mod.rs index d55bd364..a074b570 100644 --- a/minecraft-protocol/src/packets/mod.rs +++ b/minecraft-protocol/src/packets/mod.rs @@ -4,7 +4,7 @@ pub mod login; pub mod status; use async_trait::async_trait; -use tokio::io::{AsyncRead, BufReader}; +use tokio::io::BufReader; use crate::connect::PacketFlow; @@ -23,7 +23,7 @@ pub enum Packet { Game(game::GamePacket), Handshake(handshake::HandshakePacket), Login(login::LoginPacket), - Status(status::StatusPacket), + Status(Box<status::StatusPacket>), } /// An enum of packets for a certain protocol diff --git a/minecraft-protocol/src/packets/status/clientbound_status_response_packet.rs b/minecraft-protocol/src/packets/status/clientbound_status_response_packet.rs index f19ab024..fc5d8a2a 100644 --- a/minecraft-protocol/src/packets/status/clientbound_status_response_packet.rs +++ b/minecraft-protocol/src/packets/status/clientbound_status_response_packet.rs @@ -1,10 +1,9 @@ -use async_trait::async_trait; use minecraft_chat::component::Component; -use serde::{Deserialize, Deserializer}; +use serde::Deserialize; use serde_json::Value; use tokio::io::BufReader; -use crate::{mc_buf, packets::Packet}; +use crate::mc_buf; use super::StatusPacket; @@ -38,7 +37,7 @@ pub struct ClientboundStatusResponsePacket { impl ClientboundStatusResponsePacket { pub fn get(self) -> StatusPacket { - StatusPacket::ClientboundStatusResponsePacket(self) + StatusPacket::ClientboundStatusResponsePacket(Box::new(self)) } pub fn write(&self, _buf: &mut Vec<u8>) {} diff --git a/minecraft-protocol/src/packets/status/mod.rs b/minecraft-protocol/src/packets/status/mod.rs index 2696cc07..ac6a34e1 100644 --- a/minecraft-protocol/src/packets/status/mod.rs +++ b/minecraft-protocol/src/packets/status/mod.rs @@ -17,7 +17,7 @@ where serverbound_status_request_packet::ServerboundStatusRequestPacket, ), ClientboundStatusResponsePacket( - clientbound_status_response_packet::ClientboundStatusResponsePacket, + Box<clientbound_status_response_packet::ClientboundStatusResponsePacket>, ), } diff --git a/minecraft-protocol/src/packets/status/serverbound_status_request_packet.rs b/minecraft-protocol/src/packets/status/serverbound_status_request_packet.rs index 8b29391a..6a58da1f 100644 --- a/minecraft-protocol/src/packets/status/serverbound_status_request_packet.rs +++ b/minecraft-protocol/src/packets/status/serverbound_status_request_packet.rs @@ -1,9 +1,6 @@ -use async_trait::async_trait; use std::hash::Hash; use tokio::io::BufReader; -use crate::packets::{Packet, ProtocolPacket}; - use super::StatusPacket; #[derive(Hash, Clone, Debug)] diff --git a/minecraft-protocol/src/read.rs b/minecraft-protocol/src/read.rs index 7f4eeaac..f0c82641 100644 --- a/minecraft-protocol/src/read.rs +++ b/minecraft-protocol/src/read.rs @@ -22,7 +22,7 @@ pub async fn read_packet<P: ProtocolPacket>( // if we recognize the packet id, parse it - let packet = P::read(packet_id.try_into().unwrap(), &flow, &mut buf).await?; + let packet = P::read(packet_id.try_into().unwrap(), flow, &mut buf).await?; Ok(packet) } |
