[INFO] cloning repository https://github.com/VoxanyNet/rust-game
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/VoxanyNet/rust-game" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVoxanyNet%2Frust-game", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVoxanyNet%2Frust-game'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 99eaa0ea3a75426b8cb74a8c0481d920908c407f
[INFO] testing VoxanyNet/rust-game against beta-2025-09-21 for beta-1.91-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVoxanyNet%2Frust-game" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/VoxanyNet/rust-game
[INFO] finished tweaking git repo https://github.com/VoxanyNet/rust-game
[INFO] tweaked toml for git repo https://github.com/VoxanyNet/rust-game written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/VoxanyNet/rust-game on toolchain beta-2025-09-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/VoxanyNet/rust-game already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Updating git repository `https://github.com/VoxanyNet/gamelibrary`
[INFO] [stderr]     Updating git repository `https://github.com/VoxanyNet/macroquad`
[INFO] [stderr]     Updating git repository `https://github.com/VoxanyNet/nalgebra`
[INFO] [stderr]     Updating git repository `https://github.com/VoxanyNet/parry`
[INFO] [stderr]     Updating git repository `https://github.com/VoxanyNet/rapier`
[INFO] [stderr]     Updating git repository `https://github.com/VoxanyNet/glam-rs`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tungstenite v0.23.0
[INFO] [stderr]   Downloaded bytemuck v1.16.3
[INFO] [stderr]   Downloaded serde_yaml v0.9.34+deprecated
[INFO] [stderr]   Downloaded bitcode_derive v0.6.5
[INFO] [stderr]   Downloaded diff-struct v0.5.3
[INFO] [stderr]   Downloaded ogg v0.7.1
[INFO] [stderr]   Downloaded ears v0.8.0
[INFO] [stderr]   Downloaded audir-sles v0.1.0
[INFO] [stderr]   Downloaded bitcode v0.6.6
[INFO] [stderr]   Downloaded gilrs-core v0.6.0
[INFO] [stderr]   Downloaded ewebsock v0.7.0
[INFO] [stderr]   Downloaded objc-rs v0.2.8
[INFO] [stderr]   Downloaded miniquad v0.4.8
[INFO] [stderr]   Downloaded wide v0.7.26
[INFO] [stderr]   Downloaded unsafe-libyaml v0.2.11
[INFO] [stderr]   Downloaded spade v2.10.0
[INFO] [stderr]   Downloaded cc v1.1.7
[INFO] [stderr]   Downloaded audrey v0.3.0
[INFO] [stderr]   Downloaded noise v0.9.0
[INFO] [stderr]   Downloaded lz4_flex v0.11.3
[INFO] [stderr]   Downloaded ordered-float v4.2.2
[INFO] [stderr]   Downloaded dasp_frame v0.11.0
[INFO] [stderr]   Downloaded indexmap v2.3.0
[INFO] [stderr]   Downloaded quad-alsa-sys v0.3.2
[INFO] [stderr]   Downloaded quad-snd v0.2.8
[INFO] [stderr]   Downloaded fontdue v0.9.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ea474704573da2a1878cf659fbb98643c3d14c9cc78bec3a1781d7c6649032fb
[INFO] running `Command { std: "docker" "start" "-a" "ea474704573da2a1878cf659fbb98643c3d14c9cc78bec3a1781d7c6649032fb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ea474704573da2a1878cf659fbb98643c3d14c9cc78bec3a1781d7c6649032fb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ea474704573da2a1878cf659fbb98643c3d14c9cc78bec3a1781d7c6649032fb", kill_on_drop: false }`
[INFO] [stdout] ea474704573da2a1878cf659fbb98643c3d14c9cc78bec3a1781d7c6649032fb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c841b9508156bd04d66e5f8000882c3f663acf00344ada2c96e9f969d58db98f
[INFO] running `Command { std: "docker" "start" "-a" "c841b9508156bd04d66e5f8000882c3f663acf00344ada2c96e9f969d58db98f", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling serde v1.0.208
[INFO] [stderr]    Compiling libm v0.2.8
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]    Compiling bytemuck v1.16.3
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.100
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling allocator-api2 v0.2.18
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling bumpalo v3.16.0
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling syn v2.0.72
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling safe_arch v0.7.2
[INFO] [stderr]    Compiling matrixmultiply v0.3.9
[INFO] [stderr]    Compiling quad-alsa-sys v0.3.2
[INFO] [stderr]    Compiling wasm-bindgen v0.2.100
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling miniz_oxide v0.7.4
[INFO] [stderr]    Compiling ogg v0.7.1
[INFO] [stderr]    Compiling crc32fast v1.4.2
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling cfg_aliases v0.2.1
[INFO] [stderr]    Compiling dasp_frame v0.11.0
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling wide v0.7.26
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling libudev-sys v0.1.4
[INFO] [stderr]    Compiling fdeflate v0.3.4
[INFO] [stderr]    Compiling lewton v0.9.4
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling flate2 v1.0.30
[INFO] [stderr]    Compiling slotmap v1.0.7
[INFO] [stderr]    Compiling miniquad v0.4.8
[INFO] [stderr]    Compiling bytes v1.6.1
[INFO] [stderr]    Compiling robust v1.1.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling quad-snd v0.2.8
[INFO] [stderr]    Compiling png v0.17.13
[INFO] [stderr]    Compiling crossbeam-queue v0.3.11
[INFO] [stderr]    Compiling crossbeam-channel v0.5.13
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling spade v2.10.0
[INFO] [stderr]    Compiling http v1.1.0
[INFO] [stderr]    Compiling ordered-float v4.2.2
[INFO] [stderr]    Compiling crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling rustc-hash v2.0.0
[INFO] [stderr]    Compiling ttf-parser v0.21.1
[INFO] [stderr]    Compiling data-encoding v2.6.0
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling downcast-rs v1.2.1
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling document-features v0.2.10
[INFO] [stderr]    Compiling audrey v0.3.0
[INFO] [stderr]    Compiling crossbeam v0.8.4
[INFO] [stderr]    Compiling twox-hash v1.6.3
[INFO] [stderr]    Compiling indexmap v2.3.0
[INFO] [stderr]    Compiling uuid v1.17.0
[INFO] [stderr]    Compiling image v0.24.9
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling quad-rand v0.2.3
[INFO] [stderr]    Compiling macroquad_macro v0.1.8 (https://github.com/VoxanyNet/macroquad?rev=499690e415414f86679c924a7db447115d645ab3#499690e4)
[INFO] [stderr]    Compiling gilrs v0.11.0
[INFO] [stderr]    Compiling lz4_flex v0.11.3
[INFO] [stderr]    Compiling rand_xorshift v0.3.0
[INFO] [stderr]    Compiling fxhash v0.2.1
[INFO] [stderr]    Compiling web-time v1.1.0
[INFO] [stderr]    Compiling liquidators v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling diff_derive v0.2.3
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling fontdue v0.9.2
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.100
[INFO] [stderr]    Compiling serde_derive v1.0.208
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling thiserror-impl v1.0.63
[INFO] [stderr]    Compiling nalgebra-macros v0.2.2 (https://github.com/VoxanyNet/nalgebra?rev=c57d898ac19a01ac5ad2d6da5f98dea91257ac9e#c57d898a)
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling bitcode_derive v0.6.5
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling thiserror v1.0.63
[INFO] [stderr]    Compiling ppv-lite86 v0.2.19
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.100
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.100
[INFO] [stderr]    Compiling tungstenite v0.23.0
[INFO] [stderr]    Compiling noise v0.9.0
[INFO] [stderr]    Compiling ewebsock v0.7.0
[INFO] [stderr]    Compiling js-sys v0.3.77
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling wasm-bindgen-futures v0.4.45
[INFO] [stderr]    Compiling web-sys v0.3.72
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling arrayvec v0.7.4
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling bit-vec v0.7.0
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stderr]    Compiling bitcode v0.6.6
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling bincode v2.0.1
[INFO] [stderr]    Compiling inotify v0.11.0
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling simba v0.9.0
[INFO] [stderr]    Compiling diff-struct v0.5.3
[INFO] [stderr]    Compiling gilrs-core v0.6.0
[INFO] [stderr]    Compiling glam v0.29.0 (https://github.com/VoxanyNet/glam-rs?rev=ff883c571416372facf957855043e8ffe77e9cc6#ff883c57)
[INFO] [stderr]    Compiling macroquad v0.4.14 (https://github.com/VoxanyNet/macroquad?rev=499690e415414f86679c924a7db447115d645ab3#499690e4)
[INFO] [stderr]    Compiling nalgebra v0.33.0 (https://github.com/VoxanyNet/nalgebra?rev=c57d898ac19a01ac5ad2d6da5f98dea91257ac9e#c57d898a)
[INFO] [stderr]    Compiling parry2d v0.17.0 (https://github.com/VoxanyNet/parry?rev=10a5155cb735ca3d2e912473b22bad2f2ad5889e#10a5155c)
[INFO] [stderr]    Compiling rapier2d v0.22.0 (https://github.com/VoxanyNet/rapier?rev=d2945de2055e11538e437246d5084463a9335a2e#d2945de2)
[INFO] [stderr]    Compiling gamelibrary v0.1.0 (https://github.com/VoxanyNet/gamelibrary?rev=a73261771d46708edc74ba912b1dc773dfcade71#a7326177)
[INFO] [stdout] error[E0425]: cannot find value `state_diff` in this scope
[INFO] [stdout]    --> src/server.rs:163:35
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 self.state.apply(&state_diff);
[INFO] [stdout]     |                                   ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Instant`, `fs`, and `path::Path`
[INFO] [stdout]  --> src/lib.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fs, path::Path, time::{Duration, Instant}};
[INFO] [stdout]   |           ^^  ^^^^^^^^^^                   ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::executor::block_on`
[INFO] [stdout]  --> src/lib.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use futures::executor::block_on;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `camera::Camera2D`, `load_sound`, `play_sound_once`, and `prelude::camera::mouse::Camera`
[INFO] [stdout]  --> src/lib.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | ...::{load_sound, play_sound_once}, camera::Camera2D, input::{is_mouse_button_down, mouse_delta_position}, math::{Rect, Vec2}, prelude::camera::mouse::Camera};
[INFO] [stdout]   |       ^^^^^^^^^^  ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `coordinates::X`
[INFO] [stdout]  --> src/lib.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 | use nalgebra::{coordinates::X, vector};
[INFO] [stdout]   |                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Group` and `InteractionGroups`
[INFO] [stdout]   --> src/lib.rs:11:58
[INFO] [stdout]    |
[INFO] [stdout] 11 | use rapier2d::prelude::{ColliderBuilder, ColliderHandle, Group, InteractionGroups, QueryFilter, RigidBodyHandle};
[INFO] [stdout]    |                                                          ^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log`
[INFO] [stdout]  --> src/game_state.rs:5:74
[INFO] [stdout]   |
[INFO] [stdout] 5 | use gamelibrary::{arenaiter::SyncArenaIterator, font_loader::FontLoader, log, rapier_mouse_world_pos, sync_arena::Index, texture_loader::...
[INFO] [stdout]   |                                                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Event` and `self`
[INFO] [stdout]  --> src/game_state.rs:9:48
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::{chat::Chat, enemy::Enemy, events::{self, Event}, level::Level, player::player::Player, structure::Structure, TickContext};
[INFO] [stdout]   |                                                ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RigidBodyHandle`
[INFO] [stdout]   --> src/physics_square.rs:10:44
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rapier2d::dynamics::{RigidBodyBuilder, RigidBodyHandle, RigidBodyType};
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ColliderHandle`
[INFO] [stdout]   --> src/physics_square.rs:11:43
[INFO] [stdout]    |
[INFO] [stdout] 11 | use rapier2d::geometry::{ColliderBuilder, ColliderHandle};
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/level.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::{HashMap, HashSet}, fs};
[INFO] [stdout]   |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Index`, `SyncColliderHandle`, `SyncRigidBodyHandle`, `log`, and `swapiter::SwapIter`
[INFO] [stdout]  --> src/level.rs:4:74
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...r, log, macroquad_to_rapier, mouse_world_pos, rapier_mouse_world_pos, space::{Space, SyncColliderHandle, SyncRigidBodyHandle}, swapiter::SwapIter, sync_arena::{Index, S...
[INFO] [stdout]   |       ^^^                                                                               ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Camera`, `draw_rectangle`, `is_key_pressed`, `self`, and `text::draw_text_ex`
[INFO] [stdout]  --> src/level.rs:5:83
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...n, is_key_pressed, is_key_released, KeyCode}, math::{Rect, Vec2}, prelude::camera::mouse::{self, Camera}, shapes::{draw_rectangle, draw_rectangle_ex, draw_rectangle_lines, DrawRectangleParams}, text::draw_text_ex, t...
[INFO] [stdout]   |       ^^^^^^^^^^^^^^                                                                          ^^^^  ^^^^^^            ^^^^^^^^^^^^^^                                                                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `self`, `self`, and `weapon::Weapon`
[INFO] [stdout]   --> src/level.rs:10:152
[INFO] [stdout]    |
[INFO] [stdout] 10 | ...::{self, body_part::BodyPart, player::{Player, WeaponTickParameters}}, portal::Portal, portal_bullet::PortalBullet, radio::{Radio, RadioBuilder}, shotgun::{self, Shotgun}, sky::Sky, structure::Structure, teleporter::Teleporter, weapon::Weapon, T...
[INFO] [stdout]    |       ^^^^                                                                                                                                                     ^^^^                                                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/structure.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log`
[INFO] [stdout]  --> src/structure.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | use gamelibrary::{log, menu::Menu, mouse_world_pos, rapier_mouse_world_pos, rapier_to_macroquad, space::{Space, SyncColliderHandle, SyncI...
[INFO] [stdout]   |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Color`, `DrawTextureParams`, `MaterialParams`, `Material`, `draw_rectangle_ex`, `draw_rectangle`, `draw_texture_ex`, `draw_texture`, `gl::GL_SCISSOR_TEST`, `gl_use_default_material`, `gl_use_material`, `load_material`, `load_texture`, and `text::draw_text`
[INFO] [stdout]  --> src/structure.rs:6:43
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...::{Color, DARKGRAY, RED, WHITE}, input::{self, is_key_down, is_key_released, is_mouse_button_pressed, is_mouse_button_released, KeyCode}, math::{Rect, Vec2}, miniquad::{self, gl::GL_SCISSOR_TEST}, prelude::{gl_use_default_material, gl_use_material, load_material, Material, MaterialParams}, shapes::{draw_circle, draw_line, draw_rectangle, draw_rectangle_ex}, text::draw_text, texture::{draw_texture, draw_texture_ex, load_texture, DrawTextureParams}, ...
[INFO] [stdout]   |       ^^^^^                                                                                                                                                                       ^^^^^^^^^^^^^^^^^^^             ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^                                    ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^            ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `dynamics::RigidBodyHandle` and `geometry::ColliderHandle`
[INFO] [stdout]  --> src/structure.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rapier2d::{dynamics::RigidBodyHandle, geometry::ColliderHandle, prelude::{ColliderBuilder, RigidBodyBuilder}};
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `level::Level` and `self`
[INFO] [stdout]   --> src/structure.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::{level::Level, player::{self, player::Player}, weapon::BulletImpactData, Grabbable, TickContext};
[INFO] [stdout]    |             ^^^^^^^^^^^^           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `Instant`
[INFO] [stdout]  --> src/shotgun.rs:1:40
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, time::{Duration, Instant}};
[INFO] [stdout]   |                                        ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HasPhysics`, `Index`, `draw_texture_onto_physics_body`, `get_angle_to_mouse`, `mouse_world_pos`, `rapier_mouse_world_pos`, `rapier_to_macroquad`, `sound::soundmanager::SoundHandle`, and `time::Time`
[INFO] [stdout]  --> src/shotgun.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...::{get_angle_to_mouse, mouse_world_pos, rapier_mouse_world_pos, rapier_to_macroquad, sound::soundmanager::SoundHandle, space::{Space, SyncColliderHandle, SyncImpulseJointHandle, SyncRigidBodyHandle}, sync_arena::{Index, SyncArena}, texture_loader::TextureLoader, time::Time, traits::{draw_texture_onto_physics_body, HasPhysics}};
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                                ^^^^^                                             ^^^^^^^^^^           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DrawTextureParams`, `RED`, `WHITE`, `draw_circle`, `draw_rectangle`, `draw_texture_ex`, `miniquad::TextureParams`, and `vec2`
[INFO] [stdout]  --> src/shotgun.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...::{RED, WHITE}, input::is_mouse_button_released, math::{vec2, Vec2}, miniquad::TextureParams, shapes::{draw_circle, draw_rectangle}, texture::{draw_texture_ex, DrawTextureParams}};
[INFO] [stdout]   |       ^^^  ^^^^^                                           ^^^^         ^^^^^^^^^^^^^^^^^^^^^^^           ^^^^^^^^^^^  ^^^^^^^^^^^^^^             ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `point` and `vector`
[INFO] [stdout]  --> src/shotgun.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use nalgebra::{point, vector, Const, OPoint};
[INFO] [stdout]   |                ^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `query::Ray` and `shape::Shape`
[INFO] [stdout]  --> src/shotgun.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use parry2d::{query::Ray, shape::Shape};
[INFO] [stdout]   |               ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ColliderHandle`, `QueryFilter`, `RigidBodyBuilder`, and `RigidBodyHandle`
[INFO] [stdout]  --> src/shotgun.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rapier2d::prelude::{ColliderHandle, QueryFilter, RigidBodyBuilder, RigidBodyHandle};
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Grabbable`, `collider_from_texture_size`, `enemy::Enemy`, `muzzle_flash::MuzzleFlash`, and `self`
[INFO] [stdout]   --> src/shotgun.rs:11:54
[INFO] [stdout]    |
[INFO] [stdout] 11 | ...l, collider_from_texture_size, damage_number::{self, DamageNumber}, enemy::Enemy, muzzle_flash::MuzzleFlash, player::player::{Facing, Player, PlayerWeapon, WeaponTickParameters}, weapon::Weapon, Grabbable, T...
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^                  ^^^^                 ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::Instant`
[INFO] [stdout]  --> src/player/player.rs:1:50
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, f32::consts::PI, time::Instant};
[INFO] [stdout]   |                                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::TimeDelta`
[INFO] [stdout]  --> src/player/player.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chrono::TimeDelta;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Index`, `collider_top_left_pos`, `current_unix_millis`, `log`, and `swapiter::SwapIter`
[INFO] [stdout]  --> src/player/player.rs:5:75
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...r, collider_top_left_pos, current_unix_millis, get_angle_between_rapier_points, get_angle_to_mouse, log, rapier_mouse_world_pos, rapier_to_macroquad, sound::soundmanager::{SoundHandle, SoundManager}, space::{Space, SyncColliderHandle, SyncImpulseJointHandle, SyncRigidBodyHandle}, swapiter::SwapIter, sync_arena::{Index, S...
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^                                                       ^^^                                                                                                                                                                                  ^^^^^^^^^^^^^^^^^^               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WHITE` and `time::get_frame_time`
[INFO] [stdout]  --> src/player/player.rs:7:32
[INFO] [stdout]   |
[INFO] [stdout] 7 | ...N, WHITE}, input::{is_key_down, is_key_released, is_mouse_button_down, is_mouse_button_released, KeyCode}, math::{vec2, Rect, Vec2}, shapes::draw_rectangle, time::get_frame_time};
[INFO] [stdout]   |       ^^^^^                                                                                                                                                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Group`, `ImpulseJointHandle`, `InteractionGroups`, and `crossbeam::epoch::Pointable`
[INFO] [stdout]   --> src/player/player.rs:10:16
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rapier2d::{crossbeam::epoch::Pointable, prelude::{Group, ImpulseJointHandle, InteractionGroups, RevoluteJointBuilder, RigidBody}};
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^            ^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gamelibrary::sound::backends::macroquad::MacroquadSoundManager as SelectedSoundManager`
[INFO] [stdout]   --> src/player/player.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use gamelibrary::sound::backends::macroquad::MacroquadSoundManager as SelectedSoundManager;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BODY_PART_GROUP`, `DETACHED_BODY_PART_GROUP`, `level::Level`, and `player`
[INFO] [stdout]   --> src/player/player.rs:19:86
[INFO] [stdout]    |
[INFO] [stdout] 19 | ...ps::{BODY_PART_GROUP, DETACHED_BODY_PART_GROUP}, damage_number::DamageNumber, enemy::Enemy, level::Level, pistol::Pistol, player, port...
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^                                              ^^^^^^^^^^^^                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ColliderHandle` and `RigidBodyHandle`
[INFO] [stdout]  --> src/player/body_part.rs:5:42
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rapier2d::prelude::{ColliderBuilder, ColliderHandle, Group, InteractionGroups, RigidBodyBuilder, RigidBodyHandle};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^                                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ColliderHandle` and `RigidBodyHandle`
[INFO] [stdout]  --> src/radio.rs:5:42
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rapier2d::prelude::{ColliderBuilder, ColliderHandle, RigidBodyBuilder, RigidBodyHandle};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^                    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ColliderHandle` and `RigidBodyHandle`
[INFO] [stdout]  --> src/brick.rs:6:56
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rapier2d::prelude::{ActiveEvents, ColliderBuilder, ColliderHandle, RigidBodyBuilder, RigidBodyHandle};
[INFO] [stdout]   |                                                        ^^^^^^^^^^^^^^                    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rapier2d::prelude::ColliderHandle`
[INFO] [stdout]  --> src/portal.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rapier2d::prelude::ColliderHandle;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ColliderHandle` and `RigidBodyHandle`
[INFO] [stdout]  --> src/teleporter.rs:6:42
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rapier2d::prelude::{ColliderBuilder, ColliderHandle, InteractionGroups, QueryFilter, RigidBodyBuilder, RigidBodyHandle};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^                                                    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::Instant`
[INFO] [stdout]  --> src/main_menu.rs:1:28
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{f32::consts::PI, time::Instant};
[INFO] [stdout]   |                            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::executor::block_on`
[INFO] [stdout]  --> src/main_menu.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use futures::executor::block_on;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DARKGRAY`
[INFO] [stdout]  --> src/main_menu.rs:5:39
[INFO] [stdout]   |
[INFO] [stdout] 5 | use macroquad::{color::{Color, BLACK, DARKGRAY}, math::{Rect, Vec2}, miniquad::window::request_quit, text::{draw_text_ex, load_ttf_font, ...
[INFO] [stdout]   |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/enemy.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `KeyCode` and `is_key_down`
[INFO] [stdout]  --> src/enemy.rs:6:25
[INFO] [stdout]   |
[INFO] [stdout] 6 | use macroquad::{input::{is_key_down, KeyCode}, math::Vec2};
[INFO] [stdout]   |                         ^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parry2d::math::Vector`
[INFO] [stdout]  --> src/enemy.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use parry2d::math::Vector;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/enemy.rs:12:84
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::{collider_groups::{BODY_PART_GROUP, DETACHED_BODY_PART_GROUP}, player::{self, body_part::BodyPart, player::{Facing, Player}}, ...
[INFO] [stdout]    |                                                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `draw_rectangle` and `texture::draw_texture_ex`
[INFO] [stdout]  --> src/pixel.rs:5:60
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...h::{vec2, Vec2}, shapes::{draw_rectangle, draw_rectangle_ex, DrawRectangleParams}, texture::draw_texture_ex};
[INFO] [stdout]   |                              ^^^^^^^^^^^^^^                                           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::Duration`
[INFO] [stdout]  --> src/damage_number.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{hash::Hash, time::Duration};
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `traits::draw_hitbox`
[INFO] [stdout]  --> src/damage_number.rs:4:122
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...space::{Space, SyncColliderHandle, SyncRigidBodyHandle}, traits::draw_hitbox};
[INFO] [stdout]   |                                                             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Font`, `GREEN`, and `draw_text`
[INFO] [stdout]  --> src/damage_number.rs:5:32
[INFO] [stdout]   |
[INFO] [stdout] 5 | use macroquad::{color::{Color, GREEN, RED}, math::{vec2, Vec2}, text::{draw_text, draw_text_ex, Font, TextParams}};
[INFO] [stdout]   |                                ^^^^^                                   ^^^^^^^^^                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MassProperties`
[INFO] [stdout]  --> src/damage_number.rs:7:42
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rapier2d::prelude::{ColliderBuilder, MassProperties, RigidBodyBuilder};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::Time`
[INFO] [stdout]  --> src/bullet_trail.rs:2:40
[INFO] [stdout]   |
[INFO] [stdout] 2 | use gamelibrary::{rapier_to_macroquad, time::Time};
[INFO] [stdout]   |                                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RED` and `self`
[INFO] [stdout]  --> src/bullet_trail.rs:3:25
[INFO] [stdout]   |
[INFO] [stdout] 3 | use macroquad::{color::{self, Color, RED, WHITE}, math::Vec2, shapes::draw_line};
[INFO] [stdout]   |                         ^^^^         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::Duration`
[INFO] [stdout]  --> src/pistol.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, time::Duration};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SoundHandle` and `time::Time`
[INFO] [stdout]  --> src/pistol.rs:4:41
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...::{SoundHandle, SoundManager}, space::{Space, SyncColliderHandle, SyncImpulseJointHandle, SyncRigidBodyHandle}, sync_arena::SyncArena, texture_loader::TextureLoader, time::Time};
[INFO] [stdout]   |       ^^^^^^^^^^^                                                                                                                                                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `is_key_released`
[INFO] [stdout]  --> src/pistol.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | use macroquad::{input::{is_key_released, is_mouse_button_released}, math::Vec2};
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Player` and `enemy::Enemy`
[INFO] [stdout]  --> src/pistol.rs:8:83
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::{blood::Blood, bullet_trail::BulletTrail, damage_number::DamageNumber, enemy::Enemy, player::{self, player::{Facing, Player, W...
[INFO] [stdout]   |                                                                                   ^^^^^^^^^^^^                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `Instant`
[INFO] [stdout]  --> src/weapon.rs:1:40
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, time::{Duration, Instant}};
[INFO] [stdout]   |                                        ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Index`, `get_angle_to_mouse`, `mouse_world_pos`, and `rapier_mouse_world_pos`
[INFO] [stdout]  --> src/weapon.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...::{get_angle_to_mouse, mouse_world_pos, rapier_mouse_world_pos, rapier_to_macroquad, sound::soundmanager::SoundHandle, space::{Space, SyncColliderHandle, SyncImpulseJointHandle, SyncRigidBodyHandle}, sync_arena::{Index, S...
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^                                                                                                                                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RED`, `draw_circle`, `draw_rectangle`, `draw_texture`, `is_mouse_button_released`, `miniquad::TextureParams`, and `vec2`
[INFO] [stdout]  --> src/weapon.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...::{RED, WHITE}, input::{is_key_released, is_mouse_button_released}, math::{vec2, Vec2}, miniquad::TextureParams, shapes::{draw_circle, draw_rectangle}, text::{draw_text_ex, TextParams}, texture::{draw_texture, d...
[INFO] [stdout]   |       ^^^                                   ^^^^^^^^^^^^^^^^^^^^^^^^          ^^^^         ^^^^^^^^^^^^^^^^^^^^^^^           ^^^^^^^^^^^  ^^^^^^^^^^^^^^                                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Vector` and `shape::Shape`
[INFO] [stdout]  --> src/weapon.rs:7:35
[INFO] [stdout]   |
[INFO] [stdout] 7 | use parry2d::{math::{Translation, Vector}, query::Ray, shape::Shape};
[INFO] [stdout]   |                                   ^^^^^^               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PlayerWeapon`, `enemy::Enemy`, `self`, `self`, and `structure::Structure`
[INFO] [stdout]   --> src/weapon.rs:12:127
[INFO] [stdout]    |
[INFO] [stdout] 12 | ...::{self, DamageNumber}, enemy::Enemy, muzzle_flash::MuzzleFlash, player::{self, player::{Facing, Player, PlayerWeapon, WeaponTickParameters}}, structure::Structure, G...
[INFO] [stdout]    |       ^^^^                 ^^^^^^^^^^^^                                      ^^^^                           ^^^^^^^^^^^^                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::Duration`
[INFO] [stdout]  --> src/server.rs:1:54
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{net::{SocketAddr, TcpListener, TcpStream}, time::Duration};
[INFO] [stdout]   |                                                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gamelibrary::sync::server::SyncServer`
[INFO] [stdout]  --> src/server.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use gamelibrary::sync::server::SyncServer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Instant`
[INFO] [stdout]  --> src/editor_client.rs:1:32
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fs, time::{Duration, Instant}};
[INFO] [stdout]   |                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Space`, `SyncRigidBodyHandle`, `log`, and `swapiter::SwapIter`
[INFO] [stdout]  --> src/editor_client.rs:3:49
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...r, log, menu::Button, mouse_world_pos, rapier_mouse_world_pos, rapier_to_macroquad, space::{Space, SyncRigidBodyHandle}, swapiter::SwapIter, s...
[INFO] [stdout]   |       ^^^                                                                                      ^^^^^  ^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FixedJoint`
[INFO] [stdout]  --> src/editor_client.rs:6:50
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rapier2d::prelude::{ColliderBuilder, Cuboid, FixedJoint, FixedJointBuilder, QueryFilter, RigidBodyBuilder, RigidBodyHandle};
[INFO] [stdout]   |                                                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TickContext` and `self`
[INFO] [stdout]  --> src/editor_client.rs:7:39
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::{level::Level, structure::{self, Structure}, TickContext};
[INFO] [stdout]   |                                       ^^^^              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `draw_rectangle`
[INFO] [stdout]  --> src/editor_client.rs:8:251
[INFO] [stdout]   |
[INFO] [stdout] 8 | ...sition, mouse_wheel, KeyCode}, math::{Rect, Vec2}, shapes::{draw_rectangle, draw_rectangle_lines}, text::draw_text, time::get_fps, win...
[INFO] [stdout]   |                                                                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::Duration`
[INFO] [stdout]  --> src/editor_server.rs:1:28
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{net::SocketAddr, time::Duration};
[INFO] [stdout]   |                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RigidBody`
[INFO] [stdout]  --> src/bullet_casing.rs:6:68
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rapier2d::prelude::{ColliderBuilder, Group, InteractionGroups, RigidBody, RigidBodyBuilder};
[INFO] [stdout]   |                                                                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Vec2`, `draw_rectangle`, and `texture::draw_texture_ex`
[INFO] [stdout]  --> src/blood.rs:5:51
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...ED}, math::{vec2, Vec2}, shapes::{draw_rectangle, draw_rectangle_ex, DrawRectangleParams}, texture::draw_texture_ex};
[INFO] [stdout]   |                      ^^^^            ^^^^^^^^^^^^^^                                           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TickContext`
[INFO] [stdout]   --> src/blood.rs:11:47
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::{collider_groups::PARTICLES_GROUP, TickContext};
[INFO] [stdout]    |                                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]    --> src/level.rs:517:14
[INFO] [stdout]     |
[INFO] [stdout] 517 |         for (index, player) in &self.players {
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `camera`
[INFO] [stdout]    --> src/structure.rs:382:98
[INFO] [stdout]     |
[INFO] [stdout] 382 |     pub async fn draw(&self, space: &Space, texture_path: &String, textures: &mut TextureLoader, camera: &Camera2D) {
[INFO] [stdout]     |                                                                                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `textures`
[INFO] [stdout]    --> src/main_menu.rs:126:30
[INFO] [stdout]     |
[INFO] [stdout] 126 |     pub async fn draw(&self, textures: &mut TextureLoader, fonts: &mut FontLoader) {
[INFO] [stdout]     |                              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_textures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `state` on type `&mut server::Server`
[INFO] [stdout]    --> src/server.rs:163:22
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 self.state.apply(&state_diff);
[INFO] [stdout]     |                      ^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `game_state`, `player_count`, `listener`, `clients`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sound::soundmanager::SoundManager`
[INFO] [stdout]  --> src/lib.rs:6:68
[INFO] [stdout]   |
[INFO] [stdout] 6 | use gamelibrary::{font_loader::FontLoader, rapier_mouse_world_pos, sound::soundmanager::SoundManager, space::{Space, SyncColliderHandle, ...
[INFO] [stdout]   |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SoundManager`
[INFO] [stdout]  --> src/pistol.rs:4:54
[INFO] [stdout]   |
[INFO] [stdout] 4 | use gamelibrary::{sound::soundmanager::{SoundHandle, SoundManager}, space::{Space, SyncColliderHandle, SyncImpulseJointHandle, SyncRigidB...
[INFO] [stdout]   |                                                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SoundManager`
[INFO] [stdout]  --> src/player/player.rs:5:257
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...pos, rapier_to_macroquad, sound::soundmanager::{SoundHandle, SoundManager}, space::{Space, SyncColliderHandle, SyncImpulseJointHandle,...
[INFO] [stdout]   |                                                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `space`
[INFO] [stdout]   --> src/level.rs:43:17
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let mut space = Space::new();
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_space`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/level.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let mut space = Space::new();
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]   --> src/level.rs:78:35
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub fn spawn_pixel(&mut self, pos: Vec2, ctx: &mut TickContext) {
[INFO] [stdout]    |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `structure_iter`
[INFO] [stdout]    --> src/level.rs:230:17
[INFO] [stdout]     |
[INFO] [stdout] 230 |         let mut structure_iter = SyncArenaIterator::new(&mut self.structures);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_structure_iter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/level.rs:206:13
[INFO] [stdout]     |
[INFO] [stdout] 206 |         let mut players_iter = &mut SyncArenaIterator::new(&mut self.players);
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/level.rs:230:13
[INFO] [stdout]     |
[INFO] [stdout] 230 |         let mut structure_iter = SyncArenaIterator::new(&mut self.structures);
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `structures`
[INFO] [stdout]    --> src/level.rs:260:36
[INFO] [stdout]     |
[INFO] [stdout] 260 |         while let Some((structure, structures)) = structures_iter.next() {
[INFO] [stdout]     |                                    ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_structures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `textures`
[INFO] [stdout]    --> src/level.rs:252:70
[INFO] [stdout]     |
[INFO] [stdout] 252 |     pub fn editor_tick(&mut self, camera_rect: &Rect, uuid: &String, textures: &mut TextureLoader) {
[INFO] [stdout]     |                                                                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_textures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `impact_data`
[INFO] [stdout]   --> src/structure.rs:65:37
[INFO] [stdout]    |
[INFO] [stdout] 65 |     pub fn handle_bullet(&mut self, impact_data: &BulletImpactData, space: &mut Space) {
[INFO] [stdout]    |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_impact_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `player`
[INFO] [stdout]    --> src/structure.rs:267:17
[INFO] [stdout]     |
[INFO] [stdout] 267 |         for (_, player) in players {
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/structure.rs:265:36
[INFO] [stdout]     |
[INFO] [stdout] 265 |     pub fn update_owner(&mut self, ctx: &mut TickContext, space: &mut Space, players: &SyncArena<Player>) {
[INFO] [stdout]     |                                    ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `space`
[INFO] [stdout]    --> src/structure.rs:265:59
[INFO] [stdout]     |
[INFO] [stdout] 265 |     pub fn update_owner(&mut self, ctx: &mut TickContext, space: &mut Space, players: &SyncArena<Player>) {
[INFO] [stdout]     |                                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_space`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `players`
[INFO] [stdout]   --> src/shotgun.rs:97:32
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn all_tick(&mut self, players: &mut SyncArena<Player>, space: &mut Space, ctx: &mut TickContext, weapon_tick_parameters: &mut We...
[INFO] [stdout]    |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_players`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `owner`
[INFO] [stdout]    --> src/player/player.rs:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let owner = self.owner.clone();
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_owner`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/player/player.rs:324:50
[INFO] [stdout]     |
[INFO] [stdout] 324 |     pub fn upright(&mut self, space: &mut Space, ctx: &mut TickContext) {
[INFO] [stdout]     |                                                  ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `then`
[INFO] [stdout]    --> src/player/player.rs:369:13
[INFO] [stdout]     |
[INFO] [stdout] 369 |         let then =web_time::Instant::now();
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_then`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bricks`
[INFO] [stdout]    --> src/player/player.rs:347:9
[INFO] [stdout]     |
[INFO] [stdout] 347 |         bricks: &mut Vec<Brick>, 
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bricks`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `then`
[INFO] [stdout]    --> src/player/player.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |         let then =web_time::Instant::now();
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_then`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `structures`
[INFO] [stdout]    --> src/player/player.rs:510:40
[INFO] [stdout]     |
[INFO] [stdout] 510 |         while let Some((mut structure, structures)) = structures_iter.next() {
[INFO] [stdout]     |                                        ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_structures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body_body_pos`
[INFO] [stdout]    --> src/player/player.rs:535:13
[INFO] [stdout]     |
[INFO] [stdout] 535 |         let body_body_pos = Vec2::new(body_body.translation().x, body_body.translation().y);
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_body_body_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `camera_rect`
[INFO] [stdout]    --> src/player/player.rs:523:64
[INFO] [stdout]     |
[INFO] [stdout] 523 |     pub fn angle_weapon_to_mouse(&mut self, space: &mut Space, camera_rect: &Rect) {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera_rect`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `head_joint_handle`
[INFO] [stdout]    --> src/player/player.rs:611:13
[INFO] [stdout]     |
[INFO] [stdout] 611 |         let head_joint_handle = match self.head_joint_handle {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_head_joint_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `space`
[INFO] [stdout]    --> src/player/player.rs:609:43
[INFO] [stdout]     |
[INFO] [stdout] 609 |     pub fn detach_head_if_dead(&mut self, space: &mut Space) {
[INFO] [stdout]     |                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_space`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `player_index`
[INFO] [stdout]    --> src/player/player.rs:787:18
[INFO] [stdout]     |
[INFO] [stdout] 787 |             for (player_index, player) in other_players.iter() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/player/player.rs:763:103
[INFO] [stdout]     |
[INFO] [stdout] 763 | ...res: &mut SyncArena<Structure>, ctx: &mut TickContext, other_players: &mut SyncArena<Player>) {
[INFO] [stdout]     |                                    ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `textures`
[INFO] [stdout]   --> src/player/body_part.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         textures: &mut TextureLoader,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_textures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rigid_body`
[INFO] [stdout]   --> src/player/body_part.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |         let rigid_body = space.sync_rigid_body_set.get_sync(self.body_handle).unwrap();
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rigid_body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/player/body_part.rs:87:43
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn all_tick(&mut self, space: &Space, ctx: &mut TickContext) {
[INFO] [stdout]    |                                           ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/teleporter.rs:77:32
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn all_tick(&mut self, ctx: &mut TickContext) {
[INFO] [stdout]    |                                ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/teleporter.rs:87:53
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn get_teleport_candidate_bodies(&mut self, ctx: &mut TickContext, space: &mut Space, players: &mut SyncArena<Player>) -> Vec<Syn...
[INFO] [stdout]    |                                                     ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `teleporter_half_extents`
[INFO] [stdout]    --> src/teleporter.rs:152:13
[INFO] [stdout]     |
[INFO] [stdout] 152 |         let teleporter_half_extents = teleporter_collider.shape().as_cuboid().unwrap().half_extents;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_teleporter_half_extents`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position_relative_to_teleporter`
[INFO] [stdout]    --> src/teleporter.rs:171:17
[INFO] [stdout]     |
[INFO] [stdout] 171 |             let position_relative_to_teleporter = Vec2 {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position_relative_to_teleporter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `lowest_distance` is never read
[INFO] [stdout]    --> src/enemy.rs:200:21
[INFO] [stdout]     |
[INFO] [stdout] 200 |                     lowest_distance = distance;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/enemy.rs:223:50
[INFO] [stdout]     |
[INFO] [stdout] 223 |     pub fn upright(&mut self, space: &mut Space, ctx: &mut TickContext) {
[INFO] [stdout]     |                                                  ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `textures`
[INFO] [stdout]   --> src/weapon.rs:76:9
[INFO] [stdout]    |
[INFO] [stdout] 76 |         textures: &mut TextureLoader,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_textures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hit_markers`
[INFO] [stdout]    --> src/weapon.rs:221:9
[INFO] [stdout]     |
[INFO] [stdout] 221 |         hit_markers: &mut Vec<Vec2>, 
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hit_markers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `space`
[INFO] [stdout]    --> src/weapon.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 222 |         space: &mut Space, 
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_space`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `damage_numbers`
[INFO] [stdout]    --> src/weapon.rs:224:9
[INFO] [stdout]     |
[INFO] [stdout] 224 |         damage_numbers: &mut HashSet<DamageNumber>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_damage_numbers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bullet_trails`
[INFO] [stdout]    --> src/weapon.rs:225:9
[INFO] [stdout]     |
[INFO] [stdout] 225 |         bullet_trails: &mut SyncArena<BulletTrail>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bullet_trails`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `blood`
[INFO] [stdout]    --> src/weapon.rs:226:9
[INFO] [stdout]     |
[INFO] [stdout] 226 |         blood: &mut HashSet<Blood>, 
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_blood`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `weapon_tick_parameter`
[INFO] [stdout]    --> src/weapon.rs:227:9
[INFO] [stdout]     |
[INFO] [stdout] 227 |         weapon_tick_parameter: &mut WeaponTickParameters,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_weapon_tick_parameter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `distance`
[INFO] [stdout]    --> src/weapon.rs:553:17
[INFO] [stdout]     |
[INFO] [stdout] 553 |             let distance = collider.translation() - weapon_position;
[INFO] [stdout]     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_distance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hit_markers`
[INFO] [stdout]    --> src/weapon.rs:340:9
[INFO] [stdout]     |
[INFO] [stdout] 340 |         hit_markers: &mut Vec<Vec2>, 
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hit_markers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `damage_numbers`
[INFO] [stdout]    --> src/weapon.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |         damage_numbers: &mut HashSet<DamageNumber>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_damage_numbers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `blood`
[INFO] [stdout]    --> src/weapon.rs:343:9
[INFO] [stdout]     |
[INFO] [stdout] 343 |         blood: &mut HashSet<Blood>,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_blood`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]    --> src/weapon.rs:602:14
[INFO] [stdout]     |
[INFO] [stdout] 602 |         for (index, player) in players {
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `structures`
[INFO] [stdout]    --> src/editor_client.rs:313:36
[INFO] [stdout]     |
[INFO] [stdout] 313 |         while let Some((structure, structures)) = structure_iter.next() {
[INFO] [stdout]     |                                    ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_structures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `structures`
[INFO] [stdout]    --> src/editor_client.rs:441:36
[INFO] [stdout]     |
[INFO] [stdout] 441 |         while let Some((structure, structures)) = structurs_iter.next() {
[INFO] [stdout]     |                                    ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_structures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `liquidators` (lib) due to 2 previous errors; 125 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "c841b9508156bd04d66e5f8000882c3f663acf00344ada2c96e9f969d58db98f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c841b9508156bd04d66e5f8000882c3f663acf00344ada2c96e9f969d58db98f", kill_on_drop: false }`
[INFO] [stdout] c841b9508156bd04d66e5f8000882c3f663acf00344ada2c96e9f969d58db98f
