Add disconnect notification

This commit is contained in:
lcdr
2020-05-31 15:31:32 +02:00
parent 59908fb000
commit 6cdee984a7
2 changed files with 9 additions and 0 deletions
+5
View File
@@ -7,6 +7,7 @@ use endio::LittleEndian as LE;
pub enum MessageId {
ConnectedPong = 3,
ConnectionRequestAccepted = 14,
DisconnectionNotification = 19,
UserMessage = 83,
}
@@ -18,6 +19,7 @@ macro_rules! rak_client_msg {
pub enum Message {
ConnectedPong($crate::raknet::client::ConnectedPong),
ConnectionRequestAccepted($crate::raknet::client::ConnectionRequestAccepted),
DisconnectionNotification,
UserMessage($T),
}
@@ -36,6 +38,9 @@ impl<W: LEWrite> endio::Serialize<LE, W> for &Message
writer.write($crate::raknet::client::MessageId::ConnectionRequestAccepted as u8)?;
writer.write(msg)?;
}
Message::DisconnectionNotification => {
writer.write($crate::raknet::client::MessageId::DisconnectionNotification as u8)?;
}
Message::UserMessage(msg) => {
writer.write($crate::raknet::client::MessageId::UserMessage as u8)?;
writer.write(msg)?;
+4
View File
@@ -11,6 +11,7 @@ pub enum MessageId {
InternalPing = 0,
ConnectionRequest = 4,
NewIncomingConnection = 17,
DisconnectionNotification = 19,
UserMessage = 83,
}
@@ -23,6 +24,7 @@ pub enum Message {
InternalPing($crate::raknet::server::InternalPing),
ConnectionRequest($crate::raknet::server::ConnectionRequest),
NewIncomingConnection($crate::raknet::server::NewIncomingConnection),
DisconnectionNotification,
UserMessage($T),
}
@@ -40,6 +42,8 @@ impl<R: endio::LERead> endio::Deserialize<LE, R> for Message
Self::ConnectionRequest(LERead::read(reader)?)
} else if message_id == $crate::raknet::server::MessageId::NewIncomingConnection as u8 {
Self::NewIncomingConnection(LERead::read(reader)?)
} else if message_id == $crate::raknet::server::MessageId::DisconnectionNotification as u8 {
Self::DisconnectionNotification
} else if message_id == $crate::raknet::server::MessageId::UserMessage as u8 {
Self::UserMessage(LERead::read(reader)?)
} else {