From d6c16f0d5d1829462f51b1ba10df31ed1836ccac Mon Sep 17 00:00:00 2001 From: ErrorNoInternet Date: Mon, 13 Apr 2026 09:13:58 -0400 Subject: [PATCH] fix(replay): rename paths to compile Haven't tested yet though. --- src/events.rs | 6 +++++- src/main.rs | 20 ++++++++++---------- src/replay/plugin.rs | 9 ++++----- 3 files changed, 19 insertions(+), 16 deletions(-) diff --git a/src/events.rs b/src/events.rs index bf5cdaf..e1e3c3c 100644 --- a/src/events.rs +++ b/src/events.rs @@ -13,7 +13,7 @@ use tokio::net::TcpListener; #[cfg(feature = "matrix")] use {crate::matrix, std::time::Duration, tokio::time::sleep}; #[cfg(feature = "replay")] -use {crate::replay::recorder::Recorder, mlua::Error, std::process::exit}; +use {crate::replay::recorder::Recorder, anyhow::Context, mlua::Error, std::process::exit}; use crate::{ State, @@ -97,6 +97,9 @@ pub async fn handle_event(client: Client, event: Event, state: State) -> Result< }) .await } + Event::ConnectionFailed(error) => { + call_listeners(&state, "connection_failed", || Ok(error.to_string())).await + } Event::Death(packet) => { if let Some(packet) = packet { call_listeners(&state, "death", || { @@ -129,6 +132,7 @@ pub async fn handle_event(client: Client, event: Event, state: State) -> Result< } } Event::KeepAlive(id) => call_listeners(&state, "keep_alive", || Ok(id)).await, + Event::ReceiveChunk(_) => Ok(()), Event::RemovePlayer(player_info) => { call_listeners(&state, "remove_player", || Ok(Player::from(player_info))).await } diff --git a/src/main.rs b/src/main.rs index d736696..0a6b213 100644 --- a/src/main.rs +++ b/src/main.rs @@ -40,7 +40,10 @@ use futures_locks::RwLock; use log::debug; use mlua::{Function, Lua}; #[cfg(feature = "replay")] -use replay::{mlua::Table, plugin::RecordPlugin, recorder::Recorder}; +use { + mlua::Table, + replay::{plugin::RecordPlugin, recorder::Recorder}, +}; #[cfg(feature = "mimalloc")] #[global_allocator] @@ -96,15 +99,12 @@ async fn main() -> Result<()> { DefaultPlugins.set(LogPlugin { custom_layer: |_| { env::var("LOG_FILE").ok().map(|path| { - layer() - .with_writer( - OpenOptions::new() - .append(true) - .create(true) - .open(&path) - .expect(&(path + " should be accessible")), - ) - .boxed() + let file = OpenOptions::new() + .append(true) + .create(true) + .open(&path) + .expect(&(path + " should be accessible")); + layer().with_writer(file).boxed() }) }, ..Default::default() diff --git a/src/replay/plugin.rs b/src/replay/plugin.rs index 7f2e8cd..6785176 100644 --- a/src/replay/plugin.rs +++ b/src/replay/plugin.rs @@ -3,7 +3,6 @@ use std::sync::Arc; use azalea::{ - ecs::event::EventReader, packet::{ config::ReceiveConfigPacketEvent, game::ReceiveGamePacketEvent, login::ReceiveLoginPacketEvent, @@ -11,7 +10,7 @@ use azalea::{ protocol::packets::login::ClientboundLoginPacket, }; use bevy_app::{App, First, Plugin}; -use bevy_ecs::system::ResMut; +use bevy_ecs::{message::MessageReader, system::ResMut}; use log::error; use parking_lot::Mutex; @@ -35,7 +34,7 @@ impl Plugin for RecordPlugin { fn record_login_packets( recorder: Option>, - mut events: EventReader, + mut events: MessageReader, ) { if let Some(mut recorder) = recorder { for event in events.read() { @@ -54,7 +53,7 @@ fn record_login_packets( fn record_configuration_packets( recorder: Option>, - mut events: EventReader, + mut events: MessageReader, ) { if let Some(mut recorder) = recorder { for event in events.read() { @@ -67,7 +66,7 @@ fn record_configuration_packets( fn record_game_packets( recorder: Option>, - mut events: EventReader, + mut events: MessageReader, ) { if let Some(mut recorder) = recorder { for event in events.read() {