Add new SystemChatMessage and handle in server
This commit is contained in:
parent
dfa6fa34b5
commit
4eea97520c
|
@ -911,6 +911,13 @@ state_packets!(
|
||||||
field nodes: LenPrefixed<VarInt, packet::CommandNode> =,
|
field nodes: LenPrefixed<VarInt, packet::CommandNode> =,
|
||||||
field root_index: VarInt =,
|
field root_index: VarInt =,
|
||||||
}
|
}
|
||||||
|
/// SystemChatMessage is sent by the server for system messages, the system/chat
|
||||||
|
/// distinction exists to respect the user's chat visibility settings.
|
||||||
|
packet SystemChatMessage {
|
||||||
|
field message: format::Component =,
|
||||||
|
/// Whether the message is an actionbar or chat message
|
||||||
|
field overlay: bool =,
|
||||||
|
}
|
||||||
/// ServerMessage is a message sent by the server. It could be from a player
|
/// ServerMessage is a message sent by the server. It could be from a player
|
||||||
/// or just a system message. The Type field controls the location the
|
/// or just a system message. The Type field controls the location the
|
||||||
/// message is displayed at and when the message is displayed.
|
/// message is displayed at and when the message is displayed.
|
||||||
|
|
|
@ -155,7 +155,7 @@ protocol_packet_ids!(
|
||||||
0x5c => EntitySoundEffect
|
0x5c => EntitySoundEffect
|
||||||
0x5d => SoundEffect
|
0x5d => SoundEffect
|
||||||
0x5e => StopSound
|
0x5e => StopSound
|
||||||
//0x5f => SystemChatMessage // TODO
|
0x5f => SystemChatMessage
|
||||||
0x60 => PlayerListHeaderFooter
|
0x60 => PlayerListHeaderFooter
|
||||||
0x61 => NBTQueryResponse
|
0x61 => NBTQueryResponse
|
||||||
0x62 => CollectItem
|
0x62 => CollectItem
|
||||||
|
|
|
@ -680,6 +680,7 @@ impl Server {
|
||||||
UpdateSign_u16 => on_sign_update_u16,
|
UpdateSign_u16 => on_sign_update_u16,
|
||||||
PlayerInfo => on_player_info,
|
PlayerInfo => on_player_info,
|
||||||
PlayerInfo_String => on_player_info_string,
|
PlayerInfo_String => on_player_info_string,
|
||||||
|
SystemChatMessage => on_system_chat_message,
|
||||||
ServerMessage_NoPosition => on_servermessage_noposition,
|
ServerMessage_NoPosition => on_servermessage_noposition,
|
||||||
ServerMessage_Position => on_servermessage_position,
|
ServerMessage_Position => on_servermessage_position,
|
||||||
ServerMessage_Sender => on_servermessage_sender,
|
ServerMessage_Sender => on_servermessage_sender,
|
||||||
|
@ -1996,6 +1997,14 @@ impl Server {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn on_system_chat_message(
|
||||||
|
&mut self,
|
||||||
|
m: packet::play::clientbound::SystemChatMessage,
|
||||||
|
) {
|
||||||
|
// TODO: flag as system message (vs chat message)
|
||||||
|
self.on_servermessage(&m.message, None, None);
|
||||||
|
}
|
||||||
|
|
||||||
fn on_servermessage_noposition(
|
fn on_servermessage_noposition(
|
||||||
&mut self,
|
&mut self,
|
||||||
m: packet::play::clientbound::ServerMessage_NoPosition,
|
m: packet::play::clientbound::ServerMessage_NoPosition,
|
||||||
|
|
Loading…
Reference in New Issue