diff options
| author | mat <git@matdoes.dev> | 2023-05-12 23:40:34 -0500 |
|---|---|---|
| committer | mat <git@matdoes.dev> | 2023-05-12 23:40:34 -0500 |
| commit | 49952dd1507d70cd63305ffbcae4b062dfb4ce68 (patch) | |
| tree | 1b3e5bbd757634048988b9c8d96d5fb97f669427 /azalea-client/src/packet_handling.rs | |
| parent | 657c073eab0f09d873bde21d5cdeb13a1bebb71b (diff) | |
| parent | 2057877eba5f6f13ba6863b48a9cdd44910a44f8 (diff) | |
| download | azalea-drasl-49952dd1507d70cd63305ffbcae4b062dfb4ce68.tar.xz | |
Merge branch 'main' into 1.20
Diffstat (limited to 'azalea-client/src/packet_handling.rs')
| -rw-r--r-- | azalea-client/src/packet_handling.rs | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/azalea-client/src/packet_handling.rs b/azalea-client/src/packet_handling.rs index 8ffff870..50887096 100644 --- a/azalea-client/src/packet_handling.rs +++ b/azalea-client/src/packet_handling.rs @@ -9,7 +9,9 @@ use azalea_protocol::{ serverbound_custom_payload_packet::ServerboundCustomPayloadPacket, serverbound_keep_alive_packet::ServerboundKeepAlivePacket, serverbound_move_player_pos_rot_packet::ServerboundMovePlayerPosRotPacket, - ClientboundGamePacket, ServerboundGamePacket, + serverbound_pong_packet::ServerboundPongPacket, + serverbound_resource_pack_packet::ServerboundResourcePackPacket, ClientboundGamePacket, + ServerboundGamePacket, }, read::ReadPacketError, }; @@ -995,7 +997,15 @@ fn process_packet_events(ecs: &mut World) { }) } ClientboundGamePacket::OpenSignEditor(_) => {} - ClientboundGamePacket::Ping(_) => {} + ClientboundGamePacket::Ping(p) => { + debug!("Got ping packet {:?}", p); + + let mut system_state: SystemState<Query<&mut LocalPlayer>> = SystemState::new(ecs); + let mut query = system_state.get_mut(ecs); + + let local_player = query.get_mut(player_entity).unwrap(); + local_player.write_packet(ServerboundPongPacket { id: p.id }.get()); + } ClientboundGamePacket::PlaceGhostRecipe(_) => {} ClientboundGamePacket::PlayerCombatEnd(_) => {} ClientboundGamePacket::PlayerCombatEnter(_) => {} @@ -1023,7 +1033,16 @@ fn process_packet_events(ecs: &mut World) { } ClientboundGamePacket::PlayerLookAt(_) => {} ClientboundGamePacket::RemoveMobEffect(_) => {} - ClientboundGamePacket::ResourcePack(_) => {} + ClientboundGamePacket::ResourcePack(p) => { + debug!("Got resource pack packet {:?}", p); + + let mut system_state: SystemState<Query<&mut LocalPlayer>> = SystemState::new(ecs); + let mut query = system_state.get_mut(ecs); + + let local_player = query.get_mut(player_entity).unwrap(); + // always accept resource pack + local_player.write_packet(ServerboundResourcePackPacket { action: azalea_protocol::packets::game::serverbound_resource_pack_packet::Action::Accepted }.get()); + } ClientboundGamePacket::Respawn(p) => { debug!("Got respawn packet {:?}", p); |
