diff --git a/src/events.rs b/src/events.rs index 0b92feb..fb2427d 100644 --- a/src/events.rs +++ b/src/events.rs @@ -6,7 +6,7 @@ use crate::{ particle, replay::recorder::Recorder, }; -use anyhow::Context; +use anyhow::{Context, Result}; use azalea::{ brigadier::exceptions::BuiltInExceptions::DispatcherUnknownCommand, prelude::*, protocol::packets::game::ClientboundGamePacket, @@ -20,7 +20,7 @@ use std::net::SocketAddr; use tokio::net::TcpListener; #[allow(clippy::too_many_lines)] -pub async fn handle_event(client: Client, event: Event, state: State) -> anyhow::Result<()> { +pub async fn handle_event(client: Client, event: Event, state: State) -> Result<()> { match event { Event::AddPlayer(player_info) => { call_listeners(&state, "add_player", Player::from(player_info)).await; @@ -178,12 +178,11 @@ pub async fn handle_event(client: Client, event: Event, state: State) -> anyhow: debug!("received initialize event"); let globals = state.lua.globals(); - let lua_ecs = client.ecs.clone(); + let ecs = client.ecs.clone(); globals.set( "finish_replay_recording", state.lua.create_function_mut(move |_, (): ()| { - lua_ecs - .lock() + ecs.lock() .remove_resource::() .context("recording not active") .map_err(Error::external)? diff --git a/src/replay/recorder.rs b/src/replay/recorder.rs index a079d45..5d82feb 100644 --- a/src/replay/recorder.rs +++ b/src/replay/recorder.rs @@ -41,7 +41,7 @@ impl Recorder { } pub fn finish(mut self) -> Result<()> { - let elapsed = self.start.elapsed(); + let elapsed = self.start.elapsed().as_millis(); self.zip_writer .start_file("metaData.json", SimpleFileOptions::default())?; @@ -49,8 +49,8 @@ impl Recorder { json!({ "singleplayer": false, "serverName": self.server, - "duration": elapsed.as_millis(), - "date": (SystemTime::now().duration_since(UNIX_EPOCH)? - elapsed).as_millis(), + "duration": elapsed, + "date": SystemTime::now().duration_since(UNIX_EPOCH)?.as_millis() - elapsed, "mcversion": VERSION_NAME, "fileFormat": "MCPR", "fileFormatVersion": 14,