aboutsummaryrefslogtreecommitdiff
path: root/azalea-client/src/respawn.rs
diff options
context:
space:
mode:
authormat <git@matdoes.dev>2023-05-16 23:26:45 -0500
committermat <git@matdoes.dev>2023-05-16 23:26:45 -0500
commit2ba7b83490f5fb6e40a4e94da743bebe23cd7862 (patch)
tree730115f764f623069b490f62101c229726da815a /azalea-client/src/respawn.rs
parent0cc76dfb67e852868e30d1c8529826c41a18e9d1 (diff)
downloadazalea-drasl-2ba7b83490f5fb6e40a4e94da743bebe23cd7862.tar.xz
ClientBuilder::new_without_plugins
Diffstat (limited to 'azalea-client/src/respawn.rs')
-rw-r--r--azalea-client/src/respawn.rs21
1 files changed, 10 insertions, 11 deletions
diff --git a/azalea-client/src/respawn.rs b/azalea-client/src/respawn.rs
index 4e42157c..3ac17612 100644
--- a/azalea-client/src/respawn.rs
+++ b/azalea-client/src/respawn.rs
@@ -4,7 +4,7 @@ use azalea_protocol::packets::game::serverbound_client_command_packet::{
use bevy_app::{App, Plugin};
use bevy_ecs::prelude::*;
-use crate::LocalPlayer;
+use crate::local_player::{handle_send_packet_event, SendPacketEvent};
/// Tell the server that we're respawning.
#[derive(Debug, Clone)]
@@ -17,22 +17,21 @@ pub struct RespawnPlugin;
impl Plugin for RespawnPlugin {
fn build(&self, app: &mut App) {
app.add_event::<PerformRespawnEvent>()
- .add_system(perform_respawn);
+ .add_system(perform_respawn.before(handle_send_packet_event));
}
}
pub fn perform_respawn(
mut events: EventReader<PerformRespawnEvent>,
- mut query: Query<&mut LocalPlayer>,
+ mut send_packets: EventWriter<SendPacketEvent>,
) {
for event in events.iter() {
- if let Ok(local_player) = query.get_mut(event.entity) {
- local_player.write_packet(
- ServerboundClientCommandPacket {
- action: serverbound_client_command_packet::Action::PerformRespawn,
- }
- .get(),
- );
- }
+ send_packets.send(SendPacketEvent {
+ entity: event.entity,
+ packet: ServerboundClientCommandPacket {
+ action: serverbound_client_command_packet::Action::PerformRespawn,
+ }
+ .get(),
+ });
}
}