[INFO] cloning repository https://github.com/jsjs66-hub/fps-king
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jsjs66-hub/fps-king" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjsjs66-hub%2Ffps-king", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjsjs66-hub%2Ffps-king'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c9fa1e276b7e54be4f12c1e50d6b503971b112db
[INFO] checking jsjs66-hub/fps-king against master#f8463896a9b36a04899c013bd8825a7fd29dd7a4 for pr-151920
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjsjs66-hub%2Ffps-king" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jsjs66-hub/fps-king
[INFO] finished tweaking git repo https://github.com/jsjs66-hub/fps-king
[INFO] tweaked toml for git repo https://github.com/jsjs66-hub/fps-king written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jsjs66-hub/fps-king on toolchain f8463896a9b36a04899c013bd8825a7fd29dd7a4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f8463896a9b36a04899c013bd8825a7fd29dd7a4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jsjs66-hub/fps-king 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" "+f8463896a9b36a04899c013bd8825a7fd29dd7a4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded bevy_internal v0.13.2
[INFO] [stderr]   Downloaded bevy_a11y v0.13.2
[INFO] [stderr]   Downloaded encase_derive_impl v0.7.0
[INFO] [stderr]   Downloaded bevy_diagnostic v0.13.2
[INFO] [stderr]   Downloaded bevy_encase_derive v0.13.2
[INFO] [stderr]   Downloaded bevy_utils v0.13.2
[INFO] [stderr]   Downloaded bevy_window v0.13.2
[INFO] [stderr]   Downloaded bevy_audio v0.13.2
[INFO] [stderr]   Downloaded bevy_scene v0.13.2
[INFO] [stderr]   Downloaded bevy_gizmos_macros v0.13.2
[INFO] [stderr]   Downloaded cc v1.2.44
[INFO] [stderr]   Downloaded bevy_gilrs v0.13.2
[INFO] [stderr]   Downloaded encase_derive v0.7.0
[INFO] [stderr]   Downloaded bevy_sprite v0.13.2
[INFO] [stderr]   Downloaded bevy_text v0.13.2
[INFO] [stderr]   Downloaded bevy_app v0.13.2
[INFO] [stderr]   Downloaded bevy_asset v0.13.2
[INFO] [stderr]   Downloaded bevy_pbr v0.13.2
[INFO] [stderr]   Downloaded taffy v0.3.19
[INFO] [stderr]   Downloaded bevy_gltf v0.13.2
[INFO] [stderr]   Downloaded bevy_mikktspace v0.13.2
[INFO] [stderr]   Downloaded naga_oil v0.13.0
[INFO] [stderr]   Downloaded bevy_render v0.13.2
[INFO] [stderr]   Downloaded bevy_transform v0.13.2
[INFO] [stderr]   Downloaded bevy_time v0.13.2
[INFO] [stderr]   Downloaded encase v0.7.0
[INFO] [stderr]   Downloaded bevy_ui v0.13.2
[INFO] [stderr]   Downloaded bevy v0.13.2
[INFO] [stderr]   Downloaded bevy_hierarchy v0.13.2
[INFO] [stderr]   Downloaded bevy_ptr v0.13.2
[INFO] [stderr]   Downloaded ruzstd v0.5.0
[INFO] [stderr]   Downloaded bevy_reflect v0.13.2
[INFO] [stderr]   Downloaded bevy_tasks v0.13.2
[INFO] [stderr]   Downloaded bevy_input v0.13.2
[INFO] [stderr]   Downloaded bevy_core_pipeline v0.13.2
[INFO] [stderr]   Downloaded bevy_math v0.13.2
[INFO] [stderr]   Downloaded bevy_gizmos v0.13.2
[INFO] [stderr]   Downloaded bevy_animation v0.13.2
[INFO] [stderr]   Downloaded bevy_render_macros v0.13.2
[INFO] [stderr]   Downloaded hexasphere v10.0.0
[INFO] [stderr]   Downloaded bevy_ecs_macros v0.13.2
[INFO] [stderr]   Downloaded bevy_asset_macros v0.13.2
[INFO] [stderr]   Downloaded bevy_core v0.13.2
[INFO] [stderr]   Downloaded bevy_log v0.13.2
[INFO] [stderr]   Downloaded bevy_reflect_derive v0.13.2
[INFO] [stderr]   Downloaded accesskit_winit v0.17.0
[INFO] [stderr]   Downloaded bevy_macro_utils v0.13.2
[INFO] [stderr]   Downloaded bevy_winit v0.13.2
[INFO] [stderr]   Downloaded bevy_derive v0.13.2
[INFO] [stderr]   Downloaded bevy_ecs v0.13.2
[INFO] [stderr]   Downloaded bevy_utils_proc_macros v0.13.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+f8463896a9b36a04899c013bd8825a7fd29dd7a4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 67f536b5bb54793014c5c76ecb4748c708ed9f6d6e616886ef96ec92fdbec681
[INFO] running `Command { std: "docker" "start" "-a" "67f536b5bb54793014c5c76ecb4748c708ed9f6d6e616886ef96ec92fdbec681", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "67f536b5bb54793014c5c76ecb4748c708ed9f6d6e616886ef96ec92fdbec681", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "67f536b5bb54793014c5c76ecb4748c708ed9f6d6e616886ef96ec92fdbec681", kill_on_drop: false }`
[INFO] [stdout] 67f536b5bb54793014c5c76ecb4748c708ed9f6d6e616886ef96ec92fdbec681
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+f8463896a9b36a04899c013bd8825a7fd29dd7a4" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 09f324c67fd4eb0454bf1d571748858680a8293d053038c0cf7bde6efafc32d4
[INFO] running `Command { std: "docker" "start" "-a" "09f324c67fd4eb0454bf1d571748858680a8293d053038c0cf7bde6efafc32d4", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]     Checking cfg-if v1.0.4
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]     Checking pin-project-lite v0.2.16
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking log v0.4.28
[INFO] [stderr]    Compiling hashbrown v0.16.0
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling winnow v0.5.40
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]     Checking parking v2.2.1
[INFO] [stderr]    Compiling syn v2.0.108
[INFO] [stderr]    Compiling indexmap v2.12.0
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]     Checking tracing-core v0.1.34
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]     Checking futures-core v0.3.31
[INFO] [stderr]     Checking allocator-api2 v0.2.21
[INFO] [stderr]     Checking event-listener v5.4.1
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]     Checking fastrand v2.3.0
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]     Checking slab v0.4.11
[INFO] [stderr]     Checking futures-lite v2.6.1
[INFO] [stderr]    Compiling toml_edit v0.21.1
[INFO] [stderr]    Compiling typeid v1.0.3
[INFO] [stderr]     Checking async-task v4.7.1
[INFO] [stderr]     Checking async-channel v2.5.0
[INFO] [stderr]     Checking smol_str v0.2.2
[INFO] [stderr]     Checking fixedbitset v0.4.2
[INFO] [stderr]    Compiling erased-serde v0.4.8
[INFO] [stderr]     Checking nonmax v0.5.5
[INFO] [stderr]     Checking petgraph v0.6.5
[INFO] [stderr]     Checking memchr v2.7.6
[INFO] [stderr]     Checking web-time v0.2.4
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]     Checking async-executor v1.13.3
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]     Checking downcast-rs v1.2.1
[INFO] [stderr]     Checking bevy_ptr v0.13.2
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]     Checking bevy_tasks v0.13.2
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking libloading v0.8.9
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]    Compiling uuid v1.18.1
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]    Compiling pkg-config v0.3.32
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]     Checking nu-ansi-term v0.50.3
[INFO] [stderr]     Checking tracing-log v0.1.4
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]     Checking lock_api v0.4.14
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking raw-window-handle v0.6.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking bit-vec v0.6.3
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]     Checking unicode-width v0.1.14
[INFO] [stderr]    Compiling bevy_macro_utils v0.13.2
[INFO] [stderr]     Checking termcolor v1.4.1
[INFO] [stderr]    Compiling find-msvc-tools v0.1.4
[INFO] [stderr]     Checking codespan-reporting v0.11.1
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]    Compiling cc v1.2.44
[INFO] [stderr]     Checking bit-set v0.5.3
[INFO] [stderr]     Checking spirv v0.3.0+sdk-1.3.268.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling khronos-egl v6.0.0
[INFO] [stderr]     Checking hexf-parse v0.2.1
[INFO] [stderr]     Checking unicode-xid v0.2.6
[INFO] [stderr]    Compiling ash v0.37.3+1.3.251
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]     Checking atomic-waker v1.1.2
[INFO] [stderr]     Checking piper v0.2.4
[INFO] [stderr]    Compiling wgpu-hal v0.19.5
[INFO] [stderr]     Checking gpu-alloc-types v0.3.0
[INFO] [stderr]     Checking gpu-descriptor-types v0.1.2
[INFO] [stderr]     Checking libloading v0.7.4
[INFO] [stderr]     Checking adler2 v2.0.1
[INFO] [stderr]     Checking accesskit v0.12.3
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking gpu-alloc v0.6.0
[INFO] [stderr]     Checking blocking v1.6.2
[INFO] [stderr]    Compiling encase_derive_impl v0.7.0
[INFO] [stderr]    Compiling wgpu-core v0.19.4
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking async-lock v3.4.1
[INFO] [stderr]     Checking wgpu-types v0.19.2
[INFO] [stderr]     Checking constant_time_eq v0.3.1
[INFO] [stderr]     Checking arrayref v0.3.9
[INFO] [stderr]     Checking profiling v1.0.17
[INFO] [stderr]     Checking glow v0.13.1
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking base64 v0.21.7
[INFO] [stderr]     Checking event-listener v2.5.3
[INFO] [stderr]     Checking renderdoc-sys v1.1.0
[INFO] [stderr]     Checking async-broadcast v0.5.1
[INFO] [stderr]     Checking async-fs v2.2.0
[INFO] [stderr]     Checking flate2 v1.1.5
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]    Compiling wgpu v0.19.4
[INFO] [stderr]     Checking typewit v1.14.2
[INFO] [stderr]     Checking const_soft_float v0.1.4
[INFO] [stderr]     Checking const_panic v0.2.15
[INFO] [stderr]     Checking constgebra v0.1.4
[INFO] [stderr]     Checking png v0.17.16
[INFO] [stderr]     Checking twox-hash v1.6.3
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]     Checking data-encoding v2.9.0
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking jpeg-decoder v0.3.2
[INFO] [stderr]     Checking ktx2 v0.3.0
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]     Checking radsort v0.1.1
[INFO] [stderr]    Compiling alsa-sys v0.3.1
[INFO] [stderr]    Compiling blake3 v1.8.2
[INFO] [stderr]    Compiling cfg_aliases v0.2.1
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling libudev-sys v0.1.4
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]     Checking euclid v0.22.11
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]     Checking svg_fmt v0.4.5
[INFO] [stderr]     Checking ttf-parser v0.25.1
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[INFO] [stderr]     Checking guillotiere v0.6.2
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]    Compiling winit v0.29.15
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]    Compiling slotmap v1.0.7
[INFO] [stderr]     Checking rectangle-pack v0.4.2
[INFO] [stderr]     Checking itoa v1.0.15
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.10
[INFO] [stderr]     Checking x11rb-protocol v0.13.2
[INFO] [stderr]     Checking xkeysym v0.2.1
[INFO] [stderr]     Checking percent-encoding v2.3.2
[INFO] [stderr]     Checking as-raw-xcb-connection v1.0.1
[INFO] [stderr]    Compiling inflections v1.1.1
[INFO] [stderr]     Checking ryu v1.0.20
[INFO] [stderr]    Compiling cpal v0.15.3
[INFO] [stderr]     Checking tinyvec_macros v0.1.1
[INFO] [stderr]     Checking tinyvec v1.10.0
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking inotify v0.10.2
[INFO] [stderr]     Checking alsa v0.9.1
[INFO] [stderr]     Checking owned_ttf_parser v0.25.1
[INFO] [stderr]     Checking ab_glyph v0.2.32
[INFO] [stderr]     Checking ogg v0.8.0
[INFO] [stderr]     Checking cursor-icon v1.2.0
[INFO] [stderr]     Checking xi-unicode v0.3.0
[INFO] [stderr]    Compiling gilrs v0.10.10
[INFO] [stderr]     Checking polling v3.11.0
[INFO] [stderr]     Checking gethostname v1.1.0
[INFO] [stderr]     Checking dasp_sample v0.11.0
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking glyph_brush_layout v0.2.4
[INFO] [stderr]     Checking lewton v0.10.2
[INFO] [stderr]     Checking grid v0.10.0
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]     Checking sysinfo v0.30.13
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking const-fnv1a-hash v1.1.0
[INFO] [stderr]     Checking taffy v0.3.19
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking mio v1.1.0
[INFO] [stderr]     Checking socket2 v0.6.1
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking signal-hook-registry v1.4.6
[INFO] [stderr]     Checking bytes v1.10.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling bevy_utils_proc_macros v0.13.2
[INFO] [stderr]    Compiling bevy_reflect_derive v0.13.2
[INFO] [stderr]    Compiling bevy_ecs_macros v0.13.2
[INFO] [stderr]    Compiling bevy_derive v0.13.2
[INFO] [stderr]    Compiling bevy_asset_macros v0.13.2
[INFO] [stderr]    Compiling derive_more v0.99.20
[INFO] [stderr]    Compiling encase_derive v0.7.0
[INFO] [stderr]     Checking naga v0.19.2
[INFO] [stderr]     Checking bytemuck v1.24.0
[INFO] [stderr]    Compiling bevy_encase_derive v0.13.2
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]    Compiling bevy_render_macros v0.13.2
[INFO] [stderr]     Checking symphonia-core v0.5.5
[INFO] [stderr]     Checking symphonia-metadata v0.5.5
[INFO] [stderr]     Checking symphonia-bundle-mp3 v0.5.5
[INFO] [stderr]     Checking calloop v0.12.4
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]    Compiling gltf-derive v1.4.1
[INFO] [stderr]     Checking symphonia v0.5.5
[INFO] [stderr]     Checking rodio v0.17.3
[INFO] [stderr]    Compiling bevy_gizmos_macros v0.13.2
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]     Checking naga_oil v0.13.0
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking glam v0.25.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.20
[INFO] [stderr]     Checking bevy_utils v0.13.2
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking gpu-descriptor v0.2.4
[INFO] [stderr]     Checking ron v0.8.1
[INFO] [stderr]     Checking gilrs-core v0.5.15
[INFO] [stderr]     Checking gltf-json v1.4.1
[INFO] [stderr]     Checking accesskit_winit v0.17.0
[INFO] [stderr]     Checking bevy_math v0.13.2
[INFO] [stderr]     Checking hexasphere v10.0.0
[INFO] [stderr]     Checking encase v0.7.0
[INFO] [stderr]     Checking bevy_mikktspace v0.13.2
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking bevy_reflect v0.13.2
[INFO] [stderr]     Checking gltf v1.4.1
[INFO] [stderr]     Checking ruzstd v0.5.0
[INFO] [stderr]     Checking tokio v1.48.0
[INFO] [stderr]     Checking bevy_ecs v0.13.2
[INFO] [stderr]     Checking bevy_app v0.13.2
[INFO] [stderr]     Checking bevy_log v0.13.2
[INFO] [stderr]     Checking bevy_core v0.13.2
[INFO] [stderr]     Checking bevy_input v0.13.2
[INFO] [stderr]     Checking bevy_a11y v0.13.2
[INFO] [stderr]     Checking bevy_time v0.13.2
[INFO] [stderr]     Checking bevy_asset v0.13.2
[INFO] [stderr]     Checking bevy_hierarchy v0.13.2
[INFO] [stderr]     Checking bevy_diagnostic v0.13.2
[INFO] [stderr]     Checking bevy_transform v0.13.2
[INFO] [stderr]     Checking bevy_window v0.13.2
[INFO] [stderr]     Checking bevy_gilrs v0.13.2
[INFO] [stderr]     Checking bevy_winit v0.13.2
[INFO] [stderr]     Checking bevy_audio v0.13.2
[INFO] [stderr]     Checking bevy_render v0.13.2
[INFO] [stderr]     Checking bevy_core_pipeline v0.13.2
[INFO] [stderr]     Checking bevy_scene v0.13.2
[INFO] [stderr]     Checking bevy_animation v0.13.2
[INFO] [stderr]     Checking bevy_sprite v0.13.2
[INFO] [stderr]     Checking bevy_pbr v0.13.2
[INFO] [stderr]     Checking bevy_text v0.13.2
[INFO] [stderr]     Checking bevy_ui v0.13.2
[INFO] [stderr]     Checking bevy_gltf v0.13.2
[INFO] [stderr]     Checking bevy_gizmos v0.13.2
[INFO] [stderr]     Checking bevy_internal v0.13.2
[INFO] [stderr]     Checking bevy v0.13.2
[INFO] [stderr]     Checking bevy_sniper_duel v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `WindowRef` and `render::camera::RenderTarget`
[INFO] [stdout]  --> src/main.rs:4:44
[INFO] [stdout]   |
[INFO] [stdout] 4 |     window::{ExitCondition, PrimaryWindow, WindowRef, PresentMode},
[INFO] [stdout]   |                                            ^^^^^^^^^
[INFO] [stdout] 5 |     render::view::RenderLayers,
[INFO] [stdout] 6 |     render::camera::RenderTarget,
[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 imports: `BRICK_COLS` and `BRICK_ROWS`
[INFO] [stdout]   --> src/gameplay.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     BRICK_COLS, BRICK_ROWS, BRICK_WIDTH, BRICK_HEIGHT,
[INFO] [stdout]    |     ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bincode`
[INFO] [stdout]  --> src/room.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use bincode;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy::render::view::RenderLayers`
[INFO] [stdout]  --> src/network_game.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use bevy::render::view::RenderLayers;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy::ecs::system::ParamSet`
[INFO] [stdout]  --> src/network_game.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bevy::ecs::system::ParamSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WindowRef` and `render::camera::RenderTarget`
[INFO] [stdout]  --> src/main.rs:4:44
[INFO] [stdout]   |
[INFO] [stdout] 4 |     window::{ExitCondition, PrimaryWindow, WindowRef, PresentMode},
[INFO] [stdout]   |                                            ^^^^^^^^^
[INFO] [stdout] 5 |     render::view::RenderLayers,
[INFO] [stdout] 6 |     render::camera::RenderTarget,
[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 imports: `BRICK_COLS` and `BRICK_ROWS`
[INFO] [stdout]   --> src/gameplay.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     BRICK_COLS, BRICK_ROWS, BRICK_WIDTH, BRICK_HEIGHT,
[INFO] [stdout]    |     ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bincode`
[INFO] [stdout]  --> src/room.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use bincode;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy::render::view::RenderLayers`
[INFO] [stdout]  --> src/network_game.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use bevy::render::view::RenderLayers;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy::ecs::system::ParamSet`
[INFO] [stdout]  --> src/network_game.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bevy::ecs::system::ParamSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]    --> src/gameplay.rs:524:14
[INFO] [stdout]     |
[INFO] [stdout] 524 |         for (entity, camera, _, _, _, _) in camera_query.iter() {
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[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/gameplay.rs:524:22
[INFO] [stdout]     |
[INFO] [stdout] 524 |         for (entity, camera, _, _, _, _) in camera_query.iter() {
[INFO] [stdout]     |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gameplay.rs:739:14
[INFO] [stdout]     |
[INFO] [stdout] 739 |     let Some(mut timer) = game_over_delay.timer.as_mut() else {
[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: `is_host`
[INFO] [stdout]    --> src/gameplay.rs:781:21
[INFO] [stdout]     |
[INFO] [stdout] 781 |                 let is_host = network_manager.as_ref().map(|nm| nm.is_host).unwrap_or(false);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_host`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `part_name`
[INFO] [stdout]     --> src/gameplay.rs:1024:21
[INFO] [stdout]      |
[INFO] [stdout] 1024 |                 let part_name = match hitbox_type {
[INFO] [stdout]      |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_part_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `old_health`
[INFO] [stdout]     --> src/gameplay.rs:1037:21
[INFO] [stdout]      |
[INFO] [stdout] 1037 |                 let old_health = health.0;
[INFO] [stdout]      |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_health`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/gameplay.rs:1690:38
[INFO] [stdout]      |
[INFO] [stdout] 1690 |                         if let (Some(mut broken_data), Some(room)) = (broken_wall_data.as_mut(), room_info.as_ref()) {
[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/gameplay.rs:1787:30
[INFO] [stdout]      |
[INFO] [stdout] 1787 |     for (entity, mut camera, mut transform, mut projection, defender_camera, mut render_layers) in camera_query.iter_mut() {
[INFO] [stdout]      |                              ----^^^^^^^^^
[INFO] [stdout]      |                              |
[INFO] [stdout]      |                              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `view_config`
[INFO] [stdout]     --> src/gameplay.rs:1761:5
[INFO] [stdout]      |
[INFO] [stdout] 1761 |     view_config: Res<crate::ViewConfig>,
[INFO] [stdout]      |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_view_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transform`
[INFO] [stdout]     --> src/gameplay.rs:1787:30
[INFO] [stdout]      |
[INFO] [stdout] 1787 |     for (entity, mut camera, mut transform, mut projection, defender_camera, mut render_layers) in camera_query.iter_mut() {
[INFO] [stdout]      |                              ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transform`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bullet_query`
[INFO] [stdout]     --> src/gameplay.rs:1882:5
[INFO] [stdout]      |
[INFO] [stdout] 1882 |     bullet_query: Query<Entity, With<Bullet>>,
[INFO] [stdout]      |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bullet_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/gameplay.rs:2028:5
[INFO] [stdout]      |
[INFO] [stdout] 2028 |     mut camera_query: Query<(Entity, &mut Camera, &mut Transform, &mut Projection, Option<&DefenderCamera>, Option<&mut RenderLaye...
[INFO] [stdout]      |     ----^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `camera_query`
[INFO] [stdout]     --> src/gameplay.rs:2028:5
[INFO] [stdout]      |
[INFO] [stdout] 2028 |     mut camera_query: Query<(Entity, &mut Camera, &mut Transform, &mut Projection, Option<&DefenderCamera>, Option<&mut RenderLaye...
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/gameplay.rs:2051:9
[INFO] [stdout]      |
[INFO] [stdout] 2051 |     for entity in &all_cameras {
[INFO] [stdout]      |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `old_is_attacker`
[INFO] [stdout]     --> src/gameplay.rs:2173:17
[INFO] [stdout]      |
[INFO] [stdout] 2173 |             let old_is_attacker = view_config.is_attacker_view;
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_is_attacker`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `role`
[INFO] [stdout]     --> src/gameplay.rs:2208:21
[INFO] [stdout]      |
[INFO] [stdout] 2208 |             for (_, role, id, _, _, _) in query.iter() {
[INFO] [stdout]      |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_role`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]     --> src/gameplay.rs:2208:27
[INFO] [stdout]      |
[INFO] [stdout] 2208 |             for (_, role, id, _, _, _) in query.iter() {
[INFO] [stdout]      |                           ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]     --> src/gameplay.rs:2598:9
[INFO] [stdout]      |
[INFO] [stdout] 2598 |     for event in reader.read() {
[INFO] [stdout]      |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/gameplay.rs:2830:5
[INFO] [stdout]      |
[INFO] [stdout] 2830 |     mut camera_query: Query<(Entity, &mut Camera), (With<Camera2d>, With<IsDefaultUiCamera>)>,
[INFO] [stdout]      |     ----^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_host`
[INFO] [stdout]     --> src/gameplay.rs:2859:9
[INFO] [stdout]      |
[INFO] [stdout] 2859 |     let is_host = room_info.as_ref().map(|r| r.is_host).unwrap_or(false);
[INFO] [stdout]      |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_host`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `game_over_entity`
[INFO] [stdout]     --> src/gameplay.rs:2903:9
[INFO] [stdout]      |
[INFO] [stdout] 2903 |     let game_over_entity = commands.spawn(NodeBundle {
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_game_over_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `found_game_over` is assigned to, but never used
[INFO] [stdout]     --> src/gameplay.rs:3287:13
[INFO] [stdout]      |
[INFO] [stdout] 3287 |         let mut found_game_over = false;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_found_game_over` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `found_game_over` is never read
[INFO] [stdout]     --> src/gameplay.rs:3292:21
[INFO] [stdout]      |
[INFO] [stdout] 3292 |                     found_game_over = true;
[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: variable `needs_update` is assigned to, but never used
[INFO] [stdout]     --> src/gameplay.rs:3407:9
[INFO] [stdout]      |
[INFO] [stdout] 3407 |     let mut needs_update = false;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_needs_update` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `needs_update` is never read
[INFO] [stdout]     --> src/gameplay.rs:3415:13
[INFO] [stdout]      |
[INFO] [stdout] 3415 |             needs_update = true;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `image`
[INFO] [stdout]     --> src/gameplay.rs:3491:33
[INFO] [stdout]      |
[INFO] [stdout] 3491 |                     if let Some(image) = images.get(image_handle) {
[INFO] [stdout]      |                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_image`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `room_info`
[INFO] [stdout]   --> src/room.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     room_info: Res<RoomInfo>,
[INFO] [stdout]    |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_room_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/room.rs:474:5
[INFO] [stdout]     |
[INFO] [stdout] 474 |     mut interaction_query: Query<&Interaction, (Changed<Interaction>, With<IpInputBox>)>,
[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/room.rs:570:5
[INFO] [stdout]     |
[INFO] [stdout] 570 |     mut interaction_query: Query<(&Interaction, Entity), (Changed<Interaction>, With<Button>)>,
[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/room.rs:606:5
[INFO] [stdout]     |
[INFO] [stdout] 606 |     mut network_manager: ResMut<NetworkManager>,
[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/room.rs:663:5
[INFO] [stdout]     |
[INFO] [stdout] 663 |     mut network_manager: ResMut<NetworkManager>,
[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/room.rs:664:5
[INFO] [stdout]     |
[INFO] [stdout] 664 |     mut room_info: ResMut<RoomInfo>,
[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/room.rs:760:5
[INFO] [stdout]     |
[INFO] [stdout] 760 |     mut interaction_query: Query<(&Interaction, Entity), (Changed<Interaction>, With<Button>)>,
[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/room.rs:763:5
[INFO] [stdout]     |
[INFO] [stdout] 763 |     mut network_manager: ResMut<NetworkManager>,
[INFO] [stdout]     |     ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/room.rs:803:33
[INFO] [stdout]     |
[INFO] [stdout] 803 | ...                   for i in 0..3 {
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `room_info`
[INFO] [stdout]    --> src/room.rs:833:5
[INFO] [stdout]     |
[INFO] [stdout] 833 |     room_info: Res<RoomInfo>,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_room_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `preview`
[INFO] [stdout]    --> src/network_game.rs:591:33
[INFO] [stdout]     |
[INFO] [stdout] 591 | ...                   let preview = &buf[..size.min(20)];
[INFO] [stdout]     |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_preview`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `local_addr`
[INFO] [stdout]    --> src/network_game.rs:461:15
[INFO] [stdout]     |
[INFO] [stdout] 461 |     if let Ok(local_addr) = socket.local_addr() {
[INFO] [stdout]     |               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `preview`
[INFO] [stdout]    --> src/network_game.rs:968:37
[INFO] [stdout]     |
[INFO] [stdout] 968 | ...                   let preview = &buf[..size.min(20)];
[INFO] [stdout]     |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_preview`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `local_addr`
[INFO] [stdout]    --> src/network_game.rs:831:19
[INFO] [stdout]     |
[INFO] [stdout] 831 |         if let Ok(local_addr) = socket.local_addr() {
[INFO] [stdout]     |                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/network_game.rs:1059:5
[INFO] [stdout]      |
[INFO] [stdout] 1059 |     mut network_manager: ResMut<NetworkManager>,
[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/network_game.rs:1060:5
[INFO] [stdout]      |
[INFO] [stdout] 1060 |     mut room_info: ResMut<RoomInfo>,
[INFO] [stdout]      |     ----^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `remote_addr`
[INFO] [stdout]     --> src/network_game.rs:1104:29
[INFO] [stdout]      |
[INFO] [stdout] 1104 |                         let remote_addr = network_manager.remote_addr.lock().unwrap();
[INFO] [stdout]      |                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_remote_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/network_game.rs:1363:30
[INFO] [stdout]      |
[INFO] [stdout] 1363 |                         for (entity, pid, mut transform, _, mut player_role) in player_query.iter_mut() {
[INFO] [stdout]      |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/network_game.rs:1393:30
[INFO] [stdout]      |
[INFO] [stdout] 1393 |                         for (entity, pid, _, mut health_comp, _) in player_query.iter_mut() {
[INFO] [stdout]      |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `old_is_attacker`
[INFO] [stdout]     --> src/network_game.rs:1438:29
[INFO] [stdout]      |
[INFO] [stdout] 1438 |                         let old_is_attacker = view_config.is_attacker_view;
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_is_attacker`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `winner`
[INFO] [stdout]     --> src/network_game.rs:1469:44
[INFO] [stdout]      |
[INFO] [stdout] 1469 |                 NetworkMessage::GameOver { winner } => {
[INFO] [stdout]      |                                            ^^^^^^ help: try ignoring the field: `winner: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/network_game.rs:1498:5
[INFO] [stdout]      |
[INFO] [stdout] 1498 |     mut view_config: ResMut<ViewConfig>,
[INFO] [stdout]      |     ----^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `view_config`
[INFO] [stdout]     --> src/network_game.rs:1498:5
[INFO] [stdout]      |
[INFO] [stdout] 1498 |     mut view_config: ResMut<ViewConfig>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_view_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cursor_pos`
[INFO] [stdout]     --> src/network_game.rs:1724:5
[INFO] [stdout]      |
[INFO] [stdout] 1724 |     cursor_pos: ResMut<CursorPosition>,
[INFO] [stdout]      |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cursor_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]     --> src/network_game.rs:1727:5
[INFO] [stdout]      |
[INFO] [stdout] 1727 |     time: Res<Time>,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]     --> src/network_game.rs:1802:5
[INFO] [stdout]      |
[INFO] [stdout] 1802 |     time: Res<Time>,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `winner`
[INFO] [stdout]     --> src/network_game.rs:1949:44
[INFO] [stdout]      |
[INFO] [stdout] 1949 |                 NetworkMessage::GameOver { winner } => {
[INFO] [stdout]      |                                            ^^^^^^ help: try ignoring the field: `winner: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `count` is assigned to, but never used
[INFO] [stdout]    --> src/main.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 202 |     let mut count = 0;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `count` is never read
[INFO] [stdout]    --> src/main.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 206 |         count += 1;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `count` is assigned to, but never used
[INFO] [stdout]    --> src/main.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |     let mut count = 0;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `count` is never read
[INFO] [stdout]    --> src/main.rs:221:9
[INFO] [stdout]     |
[INFO] [stdout] 221 |         count += 1;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `count` is assigned to, but never used
[INFO] [stdout]    --> src/main.rs:252:9
[INFO] [stdout]     |
[INFO] [stdout] 252 |     let mut count = 0;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `count` is never read
[INFO] [stdout]    --> src/main.rs:255:9
[INFO] [stdout]     |
[INFO] [stdout] 255 |         count += 1;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bgm_entity`
[INFO] [stdout]    --> src/main.rs:375:21
[INFO] [stdout]     |
[INFO] [stdout] 375 |                 let bgm_entity = commands.spawn((
[INFO] [stdout]     |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bgm_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_current_player`
[INFO] [stdout]    --> src/main.rs:671:5
[INFO] [stdout]     |
[INFO] [stdout] 671 |     is_current_player: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_current_player`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `segment_entity`
[INFO] [stdout]     --> src/main.rs:1334:21
[INFO] [stdout]      |
[INFO] [stdout] 1334 |                 let segment_entity = commands.spawn((
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_segment_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total_humanoids`
[INFO] [stdout]     --> src/main.rs:1501:9
[INFO] [stdout]      |
[INFO] [stdout] 1501 |     let total_humanoids: usize = humanoid_query.iter().count();
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_humanoids`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/main.rs:1509:14
[INFO] [stdout]      |
[INFO] [stdout] 1509 |         for (entity, wall_segment, render_layers) in wall_segment_query.iter() {
[INFO] [stdout]      |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_defender_view`
[INFO] [stdout]     --> src/main.rs:1510:17
[INFO] [stdout]      |
[INFO] [stdout] 1510 |             let is_defender_view = matches!(wall_segment.view_layer, ViewLayer::DefenderView);
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_defender_view`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_layer_0`
[INFO] [stdout]     --> src/main.rs:1511:17
[INFO] [stdout]      |
[INFO] [stdout] 1511 |             let is_layer_0 = render_layers.map(|rl| rl.intersects(&RenderLayers::layer(0))).unwrap_or(true);
[INFO] [stdout]      |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_layer_0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_layer_1`
[INFO] [stdout]     --> src/main.rs:1512:17
[INFO] [stdout]      |
[INFO] [stdout] 1512 |             let is_layer_1 = render_layers.map(|rl| rl.intersects(&RenderLayers::layer(1))).unwrap_or(false);
[INFO] [stdout]      |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_layer_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/main.rs:1517:14
[INFO] [stdout]      |
[INFO] [stdout] 1517 |         for (entity, wall_background, render_layers) in wall_background_query.iter() {
[INFO] [stdout]      |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_defender_view`
[INFO] [stdout]     --> src/main.rs:1518:17
[INFO] [stdout]      |
[INFO] [stdout] 1518 |             let is_defender_view = matches!(wall_background.view_layer, ViewLayer::DefenderView);
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_defender_view`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_layer_0`
[INFO] [stdout]     --> src/main.rs:1519:17
[INFO] [stdout]      |
[INFO] [stdout] 1519 |             let is_layer_0 = render_layers.map(|rl| rl.intersects(&RenderLayers::layer(0))).unwrap_or(true);
[INFO] [stdout]      |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_layer_0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_layer_1`
[INFO] [stdout]     --> src/main.rs:1520:17
[INFO] [stdout]      |
[INFO] [stdout] 1520 |             let is_layer_1 = render_layers.map(|rl| rl.intersects(&RenderLayers::layer(1))).unwrap_or(false);
[INFO] [stdout]      |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_layer_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `render_layers`
[INFO] [stdout]     --> src/main.rs:1694:18
[INFO] [stdout]      |
[INFO] [stdout] 1694 |     for (entity, render_layers) in sprite_entities_to_delete {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_render_layers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `all_cameras`
[INFO] [stdout]     --> src/main.rs:1746:5
[INFO] [stdout]      |
[INFO] [stdout] 1746 |     all_cameras: Query<Entity, With<Camera2d>>,
[INFO] [stdout]      |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_all_cameras`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_attacker_view`
[INFO] [stdout]     --> src/main.rs:1758:9
[INFO] [stdout]      |
[INFO] [stdout] 1758 |     let is_attacker_view = view_config.is_attacker_view;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_attacker_view`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_attacker_view`
[INFO] [stdout]     --> src/main.rs:1814:9
[INFO] [stdout]      |
[INFO] [stdout] 1814 |     let is_attacker_view = view_config.is_attacker_view;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_attacker_view`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/main.rs:1899:33
[INFO] [stdout]      |
[INFO] [stdout] 1899 |                     if let Some(mut ui_cameras) = ui_camera_entities.as_mut() {
[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/main.rs:1921:21
[INFO] [stdout]      |
[INFO] [stdout] 1921 |         if let Some(mut ui_cameras) = ui_camera_entities.as_mut() {
[INFO] [stdout]      |                     ----^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/main.rs:1878:10
[INFO] [stdout]      |
[INFO] [stdout] 1878 |     for (entity, camera, is_ui_camera) in camera_query.iter() {
[INFO] [stdout]      |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/main.rs:2027:22
[INFO] [stdout]      |
[INFO] [stdout] 2027 |         for (entity, mut camera, projection, defender_camera, is_ui_camera) in write_query.iter_mut() {
[INFO] [stdout]      |                      ----^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `game_camera_active` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:1967:9
[INFO] [stdout]      |
[INFO] [stdout] 1967 |     let mut game_camera_active = false;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_game_camera_active` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/main.rs:2049:14
[INFO] [stdout]      |
[INFO] [stdout] 2049 |         for (entity, is_active, is_defender, _, scale) in game_cameras.iter() {
[INFO] [stdout]      |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_active`
[INFO] [stdout]     --> src/main.rs:2049:22
[INFO] [stdout]      |
[INFO] [stdout] 2049 |         for (entity, is_active, is_defender, _, scale) in game_cameras.iter() {
[INFO] [stdout]      |                      ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_active`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_defender`
[INFO] [stdout]     --> src/main.rs:2049:33
[INFO] [stdout]      |
[INFO] [stdout] 2049 |         for (entity, is_active, is_defender, _, scale) in game_cameras.iter() {
[INFO] [stdout]      |                                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_defender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]     --> src/main.rs:2049:49
[INFO] [stdout]      |
[INFO] [stdout] 2049 |         for (entity, is_active, is_defender, _, scale) in game_cameras.iter() {
[INFO] [stdout]      |                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_defender_camera`
[INFO] [stdout]     --> src/main.rs:2074:29
[INFO] [stdout]      |
[INFO] [stdout] 2074 |             for (entity, _, is_defender_camera, _, scale) in game_cameras.iter() {
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_defender_camera`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `order`
[INFO] [stdout]     --> src/main.rs:2189:33
[INFO] [stdout]      |
[INFO] [stdout] 2189 |         for (entity, is_active, order) in ui_cameras.iter() {
[INFO] [stdout]      |                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_order`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `game_camera_active` is never read
[INFO] [stdout]     --> src/main.rs:1980:17
[INFO] [stdout]      |
[INFO] [stdout] 1980 |                 game_camera_active = camera.is_active;
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/main.rs:2293:25
[INFO] [stdout]      |
[INFO] [stdout] 2293 |             if let Some(mut ui_cameras) = ui_camera_entities.as_mut() {
[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/main.rs:2316:29
[INFO] [stdout]      |
[INFO] [stdout] 2316 |                 if let Some(mut ui_cameras) = ui_camera_entities.as_mut() {
[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/main.rs:2348:21
[INFO] [stdout]      |
[INFO] [stdout] 2348 |         if let Some(mut ui_cameras) = ui_camera_entities.as_mut() {
[INFO] [stdout]      |                     ----^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `current_player_pos` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:2244:9
[INFO] [stdout]      |
[INFO] [stdout] 2244 |     let mut current_player_pos = Vec3::ZERO;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_current_player_pos` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `despawn_count` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:2354:9
[INFO] [stdout]      |
[INFO] [stdout] 2354 |     let mut despawn_count = 0;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_despawn_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `p1_role` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:2392:9
[INFO] [stdout]      |
[INFO] [stdout] 2392 |     let mut p1_role = PlayerRole::Attacker;
[INFO] [stdout]      |         ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_p1_role` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `p2_role` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:2394:9
[INFO] [stdout]      |
[INFO] [stdout] 2394 |     let mut p2_role = PlayerRole::Defender;
[INFO] [stdout]      |         ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_p2_role` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `segment_entity`
[INFO] [stdout]     --> src/main.rs:2515:21
[INFO] [stdout]      |
[INFO] [stdout] 2515 |                 let segment_entity = commands.spawn((
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_segment_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `current_player_pos` is never read
[INFO] [stdout]     --> src/main.rs:2248:13
[INFO] [stdout]      |
[INFO] [stdout] 2248 |             current_player_pos = transform.translation;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `despawn_count` is never read
[INFO] [stdout]     --> src/main.rs:2381:9
[INFO] [stdout]      |
[INFO] [stdout] 2381 |         despawn_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `despawn_count` is never read
[INFO] [stdout]     --> src/main.rs:2377:9
[INFO] [stdout]      |
[INFO] [stdout] 2377 |         despawn_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `despawn_count` is never read
[INFO] [stdout]     --> src/main.rs:2373:9
[INFO] [stdout]      |
[INFO] [stdout] 2373 |         despawn_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `despawn_count` is never read
[INFO] [stdout]     --> src/main.rs:2369:9
[INFO] [stdout]      |
[INFO] [stdout] 2369 |         despawn_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `despawn_count` is never read
[INFO] [stdout]     --> src/main.rs:2365:9
[INFO] [stdout]      |
[INFO] [stdout] 2365 |         despawn_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `despawn_count` is never read
[INFO] [stdout]     --> src/main.rs:2361:9
[INFO] [stdout]      |
[INFO] [stdout] 2361 |         despawn_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `despawn_count` is never read
[INFO] [stdout]     --> src/main.rs:2357:9
[INFO] [stdout]      |
[INFO] [stdout] 2357 |         despawn_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `p1_role` is never read
[INFO] [stdout]     --> src/main.rs:2400:17
[INFO] [stdout]      |
[INFO] [stdout] 2400 |                 p1_role = *role;
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `p2_role` is never read
[INFO] [stdout]     --> src/main.rs:2404:17
[INFO] [stdout]      |
[INFO] [stdout] 2404 |                 p2_role = *role;
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `defender_root_count` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:2695:9
[INFO] [stdout]      |
[INFO] [stdout] 2695 |     let mut defender_root_count = 0;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_defender_root_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `old_display`
[INFO] [stdout]     --> src/main.rs:2703:13
[INFO] [stdout]      |
[INFO] [stdout] 2703 |         let old_display = style.display.clone();
[INFO] [stdout]      |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_display`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `defender_root_count` is never read
[INFO] [stdout]     --> src/main.rs:2702:9
[INFO] [stdout]      |
[INFO] [stdout] 2702 |         defender_root_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ui_camera`
[INFO] [stdout]     --> src/main.rs:2800:25
[INFO] [stdout]      |
[INFO] [stdout] 2800 |             if let Some(ui_camera) = ui_camera_entity {
[INFO] [stdout]      |                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ui_camera`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ui_camera_count`
[INFO] [stdout]     --> src/main.rs:2844:9
[INFO] [stdout]      |
[INFO] [stdout] 2844 |     let ui_camera_count = ui_camera_query.iter().count();
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ui_camera_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/main.rs:2846:10
[INFO] [stdout]      |
[INFO] [stdout] 2846 |     for (entity, camera, render_layers) in ui_camera_query.iter() {
[INFO] [stdout]      |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `camera`
[INFO] [stdout]     --> src/main.rs:2846:18
[INFO] [stdout]      |
[INFO] [stdout] 2846 |     for (entity, camera, render_layers) in ui_camera_query.iter() {
[INFO] [stdout]      |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `render_layers`
[INFO] [stdout]     --> src/main.rs:2846:26
[INFO] [stdout]      |
[INFO] [stdout] 2846 |     for (entity, camera, render_layers) in ui_camera_query.iter() {
[INFO] [stdout]      |                          ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_render_layers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `style`
[INFO] [stdout]     --> src/main.rs:2856:19
[INFO] [stdout]      |
[INFO] [stdout] 2856 |         if let Ok(style) = style_query.get(root_entity) {
[INFO] [stdout]      |                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `visibility`
[INFO] [stdout]     --> src/main.rs:2860:19
[INFO] [stdout]      |
[INFO] [stdout] 2860 |         if let Ok(visibility) = visibility_query.get(root_entity) {
[INFO] [stdout]      |                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_visibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parent_style`
[INFO] [stdout]     --> src/main.rs:2870:23
[INFO] [stdout]      |
[INFO] [stdout] 2870 |             if let Ok(parent_style) = style_query.get(parent_entity) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parent_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parent_visibility`
[INFO] [stdout]     --> src/main.rs:2874:23
[INFO] [stdout]      |
[INFO] [stdout] 2874 |             if let Ok(parent_visibility) = visibility_query.get(parent_entity) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parent_visibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]     --> src/main.rs:2881:22
[INFO] [stdout]      |
[INFO] [stdout] 2881 |                 for (i, child) in parent_children.iter().enumerate() {
[INFO] [stdout]      |                      ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `child_style`
[INFO] [stdout]     --> src/main.rs:2882:31
[INFO] [stdout]      |
[INFO] [stdout] 2882 |                     if let Ok(child_style) = style_query.get(*child) {
[INFO] [stdout]      |                               ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_child_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `style`
[INFO] [stdout]     --> src/main.rs:2928:19
[INFO] [stdout]      |
[INFO] [stdout] 2928 |         if let Ok(style) = style_query.get(root_entity) {
[INFO] [stdout]      |                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `visibility`
[INFO] [stdout]     --> src/main.rs:2932:19
[INFO] [stdout]      |
[INFO] [stdout] 2932 |         if let Ok(visibility) = visibility_query.get(root_entity) {
[INFO] [stdout]      |                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_visibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]     --> src/main.rs:2939:18
[INFO] [stdout]      |
[INFO] [stdout] 2939 |             for (i, child) in children.iter().enumerate() {
[INFO] [stdout]      |                  ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `child_style`
[INFO] [stdout]     --> src/main.rs:2940:27
[INFO] [stdout]      |
[INFO] [stdout] 2940 |                 if let Ok(child_style) = style_query.get(*child) {
[INFO] [stdout]      |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_child_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `child_visibility`
[INFO] [stdout]     --> src/main.rs:2944:27
[INFO] [stdout]      |
[INFO] [stdout] 2944 |                 if let Ok(child_visibility) = visibility_query.get(*child) {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_child_visibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/main.rs:3035:17
[INFO] [stdout]      |
[INFO] [stdout] 3035 |             for entity in defender_check.iter() {
[INFO] [stdout]      |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HealthText` is never constructed
[INFO] [stdout]    --> src/main.rs:101:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | struct HealthText;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_ui_target_cameras` is never used
[INFO] [stdout]    --> src/main.rs:230:4
[INFO] [stdout]     |
[INFO] [stdout] 230 | fn setup_ui_target_cameras(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cleanup_attacker_view_entities_system` is never used
[INFO] [stdout]     --> src/main.rs:1475:4
[INFO] [stdout]      |
[INFO] [stdout] 1475 | fn cleanup_attacker_view_entities_system(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `debug_all_cameras_system` is never used
[INFO] [stdout]     --> src/main.rs:1804:4
[INFO] [stdout]      |
[INFO] [stdout] 1804 | fn debug_all_cameras_system(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `debug_ui_camera_and_defender_ui` is never used
[INFO] [stdout]     --> src/main.rs:2812:4
[INFO] [stdout]      |
[INFO] [stdout] 2812 | fn debug_ui_camera_and_defender_ui(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `debug_defender_ui_children` is never used
[INFO] [stdout]     --> src/main.rs:2895:4
[INFO] [stdout]      |
[INFO] [stdout] 2895 | fn debug_defender_ui_children(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `wall_entity` and `position` are never read
[INFO] [stdout]    --> src/gameplay.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub struct WallSegment {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] 100 |     pub wall_entity: Entity,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 101 |     pub position: Vec2,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WallSegment` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `owner` is never read
[INFO] [stdout]    --> src/gameplay.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub struct Bullet {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub owner: PlayerId,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Bullet` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `BulletRenderLayer` is never used
[INFO] [stdout]    --> src/gameplay.rs:122:10
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub enum BulletRenderLayer {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `direction` and `move_timer` are never read
[INFO] [stdout]    --> src/gameplay.rs:144:9
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub struct DefenderAI {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 144 |     pub direction: f32,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 145 |     pub move_timer: Timer,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DefenderAI` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `left_camera` and `right_camera` are never read
[INFO] [stdout]    --> src/gameplay.rs:241:9
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub struct LocalMultiplayerCameras {
[INFO] [stdout]     |            ----------------------- fields in this struct
[INFO] [stdout] 241 |     pub left_camera: Entity,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 242 |     pub right_camera: Entity,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LocalMultiplayerCameras` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `player_id` and `damage` are never read
[INFO] [stdout]    --> src/gameplay.rs:248:9
[INFO] [stdout]     |
[INFO] [stdout] 247 | pub struct PlayerHitEvent {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 248 |     pub player_id: PlayerId,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 249 |     pub damage: f32,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PlayerHitEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `player_id` and `action` are never read
[INFO] [stdout]    --> src/gameplay.rs:261:9
[INFO] [stdout]     |
[INFO] [stdout] 260 | pub struct PlayerActionEvent {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 261 |     pub player_id: PlayerId,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 262 |     pub action: DodgeAction,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PlayerActionEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_network_camera_view` is never used
[INFO] [stdout]    --> src/gameplay.rs:419:8
[INFO] [stdout]     |
[INFO] [stdout] 419 | pub fn apply_network_camera_view(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_collision` is never used
[INFO] [stdout]     --> src/gameplay.rs:2606:4
[INFO] [stdout]      |
[INFO] [stdout] 2606 | fn check_collision(pos1: Vec3, size1: Vec2, pos2: Vec3, size2: Vec2) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_room_code` is never used
[INFO] [stdout]    --> src/network.rs:199:4
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn generate_room_code() -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search_room_delayed` is never used
[INFO] [stdout]     --> src/network_game.rs:1058:8
[INFO] [stdout]      |
[INFO] [stdout] 1058 | pub fn search_room_delayed(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `EntityCommands::<'_>::id` that must be used
[INFO] [stdout]     --> src/main.rs:3120:13
[INFO] [stdout]      |
[INFO] [stdout] 3120 | /             parent.spawn((
[INFO] [stdout] 3121 | |                 NodeBundle {
[INFO] [stdout] 3122 | |                     style: Style {
[INFO] [stdout] 3123 | |                         width: Val::Percent(100.0),
[INFO] [stdout] ...    |
[INFO] [stdout] 3142 | |                 }).id();
[INFO] [stdout]      | |_______________________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: Omit the .id() call if you do not need to store the `Entity` identifier.
[INFO] [stdout]      = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 3120 |             let _ = parent.spawn((
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]    --> src/gameplay.rs:524:14
[INFO] [stdout]     |
[INFO] [stdout] 524 |         for (entity, camera, _, _, _, _) in camera_query.iter() {
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[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/gameplay.rs:524:22
[INFO] [stdout]     |
[INFO] [stdout] 524 |         for (entity, camera, _, _, _, _) in camera_query.iter() {
[INFO] [stdout]     |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gameplay.rs:739:14
[INFO] [stdout]     |
[INFO] [stdout] 739 |     let Some(mut timer) = game_over_delay.timer.as_mut() else {
[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: `is_host`
[INFO] [stdout]    --> src/gameplay.rs:781:21
[INFO] [stdout]     |
[INFO] [stdout] 781 |                 let is_host = network_manager.as_ref().map(|nm| nm.is_host).unwrap_or(false);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_host`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `part_name`
[INFO] [stdout]     --> src/gameplay.rs:1024:21
[INFO] [stdout]      |
[INFO] [stdout] 1024 |                 let part_name = match hitbox_type {
[INFO] [stdout]      |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_part_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `old_health`
[INFO] [stdout]     --> src/gameplay.rs:1037:21
[INFO] [stdout]      |
[INFO] [stdout] 1037 |                 let old_health = health.0;
[INFO] [stdout]      |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_health`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/gameplay.rs:1690:38
[INFO] [stdout]      |
[INFO] [stdout] 1690 |                         if let (Some(mut broken_data), Some(room)) = (broken_wall_data.as_mut(), room_info.as_ref()) {
[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/gameplay.rs:1787:30
[INFO] [stdout]      |
[INFO] [stdout] 1787 |     for (entity, mut camera, mut transform, mut projection, defender_camera, mut render_layers) in camera_query.iter_mut() {
[INFO] [stdout]      |                              ----^^^^^^^^^
[INFO] [stdout]      |                              |
[INFO] [stdout]      |                              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `view_config`
[INFO] [stdout]     --> src/gameplay.rs:1761:5
[INFO] [stdout]      |
[INFO] [stdout] 1761 |     view_config: Res<crate::ViewConfig>,
[INFO] [stdout]      |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_view_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transform`
[INFO] [stdout]     --> src/gameplay.rs:1787:30
[INFO] [stdout]      |
[INFO] [stdout] 1787 |     for (entity, mut camera, mut transform, mut projection, defender_camera, mut render_layers) in camera_query.iter_mut() {
[INFO] [stdout]      |                              ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transform`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bullet_query`
[INFO] [stdout]     --> src/gameplay.rs:1882:5
[INFO] [stdout]      |
[INFO] [stdout] 1882 |     bullet_query: Query<Entity, With<Bullet>>,
[INFO] [stdout]      |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bullet_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/gameplay.rs:2028:5
[INFO] [stdout]      |
[INFO] [stdout] 2028 |     mut camera_query: Query<(Entity, &mut Camera, &mut Transform, &mut Projection, Option<&DefenderCamera>, Option<&mut RenderLaye...
[INFO] [stdout]      |     ----^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `camera_query`
[INFO] [stdout]     --> src/gameplay.rs:2028:5
[INFO] [stdout]      |
[INFO] [stdout] 2028 |     mut camera_query: Query<(Entity, &mut Camera, &mut Transform, &mut Projection, Option<&DefenderCamera>, Option<&mut RenderLaye...
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/gameplay.rs:2051:9
[INFO] [stdout]      |
[INFO] [stdout] 2051 |     for entity in &all_cameras {
[INFO] [stdout]      |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `old_is_attacker`
[INFO] [stdout]     --> src/gameplay.rs:2173:17
[INFO] [stdout]      |
[INFO] [stdout] 2173 |             let old_is_attacker = view_config.is_attacker_view;
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_is_attacker`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `role`
[INFO] [stdout]     --> src/gameplay.rs:2208:21
[INFO] [stdout]      |
[INFO] [stdout] 2208 |             for (_, role, id, _, _, _) in query.iter() {
[INFO] [stdout]      |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_role`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]     --> src/gameplay.rs:2208:27
[INFO] [stdout]      |
[INFO] [stdout] 2208 |             for (_, role, id, _, _, _) in query.iter() {
[INFO] [stdout]      |                           ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]     --> src/gameplay.rs:2598:9
[INFO] [stdout]      |
[INFO] [stdout] 2598 |     for event in reader.read() {
[INFO] [stdout]      |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/gameplay.rs:2830:5
[INFO] [stdout]      |
[INFO] [stdout] 2830 |     mut camera_query: Query<(Entity, &mut Camera), (With<Camera2d>, With<IsDefaultUiCamera>)>,
[INFO] [stdout]      |     ----^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_host`
[INFO] [stdout]     --> src/gameplay.rs:2859:9
[INFO] [stdout]      |
[INFO] [stdout] 2859 |     let is_host = room_info.as_ref().map(|r| r.is_host).unwrap_or(false);
[INFO] [stdout]      |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_host`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `game_over_entity`
[INFO] [stdout]     --> src/gameplay.rs:2903:9
[INFO] [stdout]      |
[INFO] [stdout] 2903 |     let game_over_entity = commands.spawn(NodeBundle {
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_game_over_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `found_game_over` is assigned to, but never used
[INFO] [stdout]     --> src/gameplay.rs:3287:13
[INFO] [stdout]      |
[INFO] [stdout] 3287 |         let mut found_game_over = false;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_found_game_over` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `found_game_over` is never read
[INFO] [stdout]     --> src/gameplay.rs:3292:21
[INFO] [stdout]      |
[INFO] [stdout] 3292 |                     found_game_over = true;
[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: variable `needs_update` is assigned to, but never used
[INFO] [stdout]     --> src/gameplay.rs:3407:9
[INFO] [stdout]      |
[INFO] [stdout] 3407 |     let mut needs_update = false;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_needs_update` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `needs_update` is never read
[INFO] [stdout]     --> src/gameplay.rs:3415:13
[INFO] [stdout]      |
[INFO] [stdout] 3415 |             needs_update = true;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `image`
[INFO] [stdout]     --> src/gameplay.rs:3491:33
[INFO] [stdout]      |
[INFO] [stdout] 3491 |                     if let Some(image) = images.get(image_handle) {
[INFO] [stdout]      |                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_image`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `room_info`
[INFO] [stdout]   --> src/room.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     room_info: Res<RoomInfo>,
[INFO] [stdout]    |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_room_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/room.rs:474:5
[INFO] [stdout]     |
[INFO] [stdout] 474 |     mut interaction_query: Query<&Interaction, (Changed<Interaction>, With<IpInputBox>)>,
[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/room.rs:570:5
[INFO] [stdout]     |
[INFO] [stdout] 570 |     mut interaction_query: Query<(&Interaction, Entity), (Changed<Interaction>, With<Button>)>,
[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/room.rs:606:5
[INFO] [stdout]     |
[INFO] [stdout] 606 |     mut network_manager: ResMut<NetworkManager>,
[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/room.rs:663:5
[INFO] [stdout]     |
[INFO] [stdout] 663 |     mut network_manager: ResMut<NetworkManager>,
[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/room.rs:664:5
[INFO] [stdout]     |
[INFO] [stdout] 664 |     mut room_info: ResMut<RoomInfo>,
[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/room.rs:760:5
[INFO] [stdout]     |
[INFO] [stdout] 760 |     mut interaction_query: Query<(&Interaction, Entity), (Changed<Interaction>, With<Button>)>,
[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/room.rs:763:5
[INFO] [stdout]     |
[INFO] [stdout] 763 |     mut network_manager: ResMut<NetworkManager>,
[INFO] [stdout]     |     ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/room.rs:803:33
[INFO] [stdout]     |
[INFO] [stdout] 803 | ...                   for i in 0..3 {
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `room_info`
[INFO] [stdout]    --> src/room.rs:833:5
[INFO] [stdout]     |
[INFO] [stdout] 833 |     room_info: Res<RoomInfo>,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_room_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `preview`
[INFO] [stdout]    --> src/network_game.rs:591:33
[INFO] [stdout]     |
[INFO] [stdout] 591 | ...                   let preview = &buf[..size.min(20)];
[INFO] [stdout]     |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_preview`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `local_addr`
[INFO] [stdout]    --> src/network_game.rs:461:15
[INFO] [stdout]     |
[INFO] [stdout] 461 |     if let Ok(local_addr) = socket.local_addr() {
[INFO] [stdout]     |               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `preview`
[INFO] [stdout]    --> src/network_game.rs:968:37
[INFO] [stdout]     |
[INFO] [stdout] 968 | ...                   let preview = &buf[..size.min(20)];
[INFO] [stdout]     |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_preview`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `local_addr`
[INFO] [stdout]    --> src/network_game.rs:831:19
[INFO] [stdout]     |
[INFO] [stdout] 831 |         if let Ok(local_addr) = socket.local_addr() {
[INFO] [stdout]     |                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/network_game.rs:1059:5
[INFO] [stdout]      |
[INFO] [stdout] 1059 |     mut network_manager: ResMut<NetworkManager>,
[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/network_game.rs:1060:5
[INFO] [stdout]      |
[INFO] [stdout] 1060 |     mut room_info: ResMut<RoomInfo>,
[INFO] [stdout]      |     ----^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `remote_addr`
[INFO] [stdout]     --> src/network_game.rs:1104:29
[INFO] [stdout]      |
[INFO] [stdout] 1104 |                         let remote_addr = network_manager.remote_addr.lock().unwrap();
[INFO] [stdout]      |                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_remote_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/network_game.rs:1363:30
[INFO] [stdout]      |
[INFO] [stdout] 1363 |                         for (entity, pid, mut transform, _, mut player_role) in player_query.iter_mut() {
[INFO] [stdout]      |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/network_game.rs:1393:30
[INFO] [stdout]      |
[INFO] [stdout] 1393 |                         for (entity, pid, _, mut health_comp, _) in player_query.iter_mut() {
[INFO] [stdout]      |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `old_is_attacker`
[INFO] [stdout]     --> src/network_game.rs:1438:29
[INFO] [stdout]      |
[INFO] [stdout] 1438 |                         let old_is_attacker = view_config.is_attacker_view;
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_is_attacker`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `winner`
[INFO] [stdout]     --> src/network_game.rs:1469:44
[INFO] [stdout]      |
[INFO] [stdout] 1469 |                 NetworkMessage::GameOver { winner } => {
[INFO] [stdout]      |                                            ^^^^^^ help: try ignoring the field: `winner: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/network_game.rs:1498:5
[INFO] [stdout]      |
[INFO] [stdout] 1498 |     mut view_config: ResMut<ViewConfig>,
[INFO] [stdout]      |     ----^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `view_config`
[INFO] [stdout]     --> src/network_game.rs:1498:5
[INFO] [stdout]      |
[INFO] [stdout] 1498 |     mut view_config: ResMut<ViewConfig>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_view_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cursor_pos`
[INFO] [stdout]     --> src/network_game.rs:1724:5
[INFO] [stdout]      |
[INFO] [stdout] 1724 |     cursor_pos: ResMut<CursorPosition>,
[INFO] [stdout]      |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cursor_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]     --> src/network_game.rs:1727:5
[INFO] [stdout]      |
[INFO] [stdout] 1727 |     time: Res<Time>,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]     --> src/network_game.rs:1802:5
[INFO] [stdout]      |
[INFO] [stdout] 1802 |     time: Res<Time>,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `winner`
[INFO] [stdout]     --> src/network_game.rs:1949:44
[INFO] [stdout]      |
[INFO] [stdout] 1949 |                 NetworkMessage::GameOver { winner } => {
[INFO] [stdout]      |                                            ^^^^^^ help: try ignoring the field: `winner: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `count` is assigned to, but never used
[INFO] [stdout]    --> src/main.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 202 |     let mut count = 0;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `count` is never read
[INFO] [stdout]    --> src/main.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 206 |         count += 1;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `count` is assigned to, but never used
[INFO] [stdout]    --> src/main.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |     let mut count = 0;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `count` is never read
[INFO] [stdout]    --> src/main.rs:221:9
[INFO] [stdout]     |
[INFO] [stdout] 221 |         count += 1;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `count` is assigned to, but never used
[INFO] [stdout]    --> src/main.rs:252:9
[INFO] [stdout]     |
[INFO] [stdout] 252 |     let mut count = 0;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `count` is never read
[INFO] [stdout]    --> src/main.rs:255:9
[INFO] [stdout]     |
[INFO] [stdout] 255 |         count += 1;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bgm_entity`
[INFO] [stdout]    --> src/main.rs:375:21
[INFO] [stdout]     |
[INFO] [stdout] 375 |                 let bgm_entity = commands.spawn((
[INFO] [stdout]     |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bgm_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_current_player`
[INFO] [stdout]    --> src/main.rs:671:5
[INFO] [stdout]     |
[INFO] [stdout] 671 |     is_current_player: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_current_player`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `segment_entity`
[INFO] [stdout]     --> src/main.rs:1334:21
[INFO] [stdout]      |
[INFO] [stdout] 1334 |                 let segment_entity = commands.spawn((
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_segment_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total_humanoids`
[INFO] [stdout]     --> src/main.rs:1501:9
[INFO] [stdout]      |
[INFO] [stdout] 1501 |     let total_humanoids: usize = humanoid_query.iter().count();
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_humanoids`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/main.rs:1509:14
[INFO] [stdout]      |
[INFO] [stdout] 1509 |         for (entity, wall_segment, render_layers) in wall_segment_query.iter() {
[INFO] [stdout]      |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_defender_view`
[INFO] [stdout]     --> src/main.rs:1510:17
[INFO] [stdout]      |
[INFO] [stdout] 1510 |             let is_defender_view = matches!(wall_segment.view_layer, ViewLayer::DefenderView);
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_defender_view`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_layer_0`
[INFO] [stdout]     --> src/main.rs:1511:17
[INFO] [stdout]      |
[INFO] [stdout] 1511 |             let is_layer_0 = render_layers.map(|rl| rl.intersects(&RenderLayers::layer(0))).unwrap_or(true);
[INFO] [stdout]      |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_layer_0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_layer_1`
[INFO] [stdout]     --> src/main.rs:1512:17
[INFO] [stdout]      |
[INFO] [stdout] 1512 |             let is_layer_1 = render_layers.map(|rl| rl.intersects(&RenderLayers::layer(1))).unwrap_or(false);
[INFO] [stdout]      |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_layer_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/main.rs:1517:14
[INFO] [stdout]      |
[INFO] [stdout] 1517 |         for (entity, wall_background, render_layers) in wall_background_query.iter() {
[INFO] [stdout]      |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_defender_view`
[INFO] [stdout]     --> src/main.rs:1518:17
[INFO] [stdout]      |
[INFO] [stdout] 1518 |             let is_defender_view = matches!(wall_background.view_layer, ViewLayer::DefenderView);
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_defender_view`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_layer_0`
[INFO] [stdout]     --> src/main.rs:1519:17
[INFO] [stdout]      |
[INFO] [stdout] 1519 |             let is_layer_0 = render_layers.map(|rl| rl.intersects(&RenderLayers::layer(0))).unwrap_or(true);
[INFO] [stdout]      |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_layer_0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_layer_1`
[INFO] [stdout]     --> src/main.rs:1520:17
[INFO] [stdout]      |
[INFO] [stdout] 1520 |             let is_layer_1 = render_layers.map(|rl| rl.intersects(&RenderLayers::layer(1))).unwrap_or(false);
[INFO] [stdout]      |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_layer_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `render_layers`
[INFO] [stdout]     --> src/main.rs:1694:18
[INFO] [stdout]      |
[INFO] [stdout] 1694 |     for (entity, render_layers) in sprite_entities_to_delete {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_render_layers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `all_cameras`
[INFO] [stdout]     --> src/main.rs:1746:5
[INFO] [stdout]      |
[INFO] [stdout] 1746 |     all_cameras: Query<Entity, With<Camera2d>>,
[INFO] [stdout]      |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_all_cameras`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_attacker_view`
[INFO] [stdout]     --> src/main.rs:1758:9
[INFO] [stdout]      |
[INFO] [stdout] 1758 |     let is_attacker_view = view_config.is_attacker_view;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_attacker_view`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_attacker_view`
[INFO] [stdout]     --> src/main.rs:1814:9
[INFO] [stdout]      |
[INFO] [stdout] 1814 |     let is_attacker_view = view_config.is_attacker_view;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_attacker_view`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/main.rs:1899:33
[INFO] [stdout]      |
[INFO] [stdout] 1899 |                     if let Some(mut ui_cameras) = ui_camera_entities.as_mut() {
[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/main.rs:1921:21
[INFO] [stdout]      |
[INFO] [stdout] 1921 |         if let Some(mut ui_cameras) = ui_camera_entities.as_mut() {
[INFO] [stdout]      |                     ----^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/main.rs:1878:10
[INFO] [stdout]      |
[INFO] [stdout] 1878 |     for (entity, camera, is_ui_camera) in camera_query.iter() {
[INFO] [stdout]      |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/main.rs:2027:22
[INFO] [stdout]      |
[INFO] [stdout] 2027 |         for (entity, mut camera, projection, defender_camera, is_ui_camera) in write_query.iter_mut() {
[INFO] [stdout]      |                      ----^^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `game_camera_active` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:1967:9
[INFO] [stdout]      |
[INFO] [stdout] 1967 |     let mut game_camera_active = false;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_game_camera_active` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/main.rs:2049:14
[INFO] [stdout]      |
[INFO] [stdout] 2049 |         for (entity, is_active, is_defender, _, scale) in game_cameras.iter() {
[INFO] [stdout]      |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_active`
[INFO] [stdout]     --> src/main.rs:2049:22
[INFO] [stdout]      |
[INFO] [stdout] 2049 |         for (entity, is_active, is_defender, _, scale) in game_cameras.iter() {
[INFO] [stdout]      |                      ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_active`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_defender`
[INFO] [stdout]     --> src/main.rs:2049:33
[INFO] [stdout]      |
[INFO] [stdout] 2049 |         for (entity, is_active, is_defender, _, scale) in game_cameras.iter() {
[INFO] [stdout]      |                                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_defender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]     --> src/main.rs:2049:49
[INFO] [stdout]      |
[INFO] [stdout] 2049 |         for (entity, is_active, is_defender, _, scale) in game_cameras.iter() {
[INFO] [stdout]      |                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_defender_camera`
[INFO] [stdout]     --> src/main.rs:2074:29
[INFO] [stdout]      |
[INFO] [stdout] 2074 |             for (entity, _, is_defender_camera, _, scale) in game_cameras.iter() {
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_defender_camera`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `order`
[INFO] [stdout]     --> src/main.rs:2189:33
[INFO] [stdout]      |
[INFO] [stdout] 2189 |         for (entity, is_active, order) in ui_cameras.iter() {
[INFO] [stdout]      |                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_order`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `game_camera_active` is never read
[INFO] [stdout]     --> src/main.rs:1980:17
[INFO] [stdout]      |
[INFO] [stdout] 1980 |                 game_camera_active = camera.is_active;
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/main.rs:2293:25
[INFO] [stdout]      |
[INFO] [stdout] 2293 |             if let Some(mut ui_cameras) = ui_camera_entities.as_mut() {
[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/main.rs:2316:29
[INFO] [stdout]      |
[INFO] [stdout] 2316 |                 if let Some(mut ui_cameras) = ui_camera_entities.as_mut() {
[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/main.rs:2348:21
[INFO] [stdout]      |
[INFO] [stdout] 2348 |         if let Some(mut ui_cameras) = ui_camera_entities.as_mut() {
[INFO] [stdout]      |                     ----^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `current_player_pos` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:2244:9
[INFO] [stdout]      |
[INFO] [stdout] 2244 |     let mut current_player_pos = Vec3::ZERO;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_current_player_pos` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `despawn_count` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:2354:9
[INFO] [stdout]      |
[INFO] [stdout] 2354 |     let mut despawn_count = 0;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_despawn_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `p1_role` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:2392:9
[INFO] [stdout]      |
[INFO] [stdout] 2392 |     let mut p1_role = PlayerRole::Attacker;
[INFO] [stdout]      |         ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_p1_role` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `p2_role` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:2394:9
[INFO] [stdout]      |
[INFO] [stdout] 2394 |     let mut p2_role = PlayerRole::Defender;
[INFO] [stdout]      |         ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_p2_role` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `segment_entity`
[INFO] [stdout]     --> src/main.rs:2515:21
[INFO] [stdout]      |
[INFO] [stdout] 2515 |                 let segment_entity = commands.spawn((
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_segment_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `current_player_pos` is never read
[INFO] [stdout]     --> src/main.rs:2248:13
[INFO] [stdout]      |
[INFO] [stdout] 2248 |             current_player_pos = transform.translation;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `despawn_count` is never read
[INFO] [stdout]     --> src/main.rs:2381:9
[INFO] [stdout]      |
[INFO] [stdout] 2381 |         despawn_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `despawn_count` is never read
[INFO] [stdout]     --> src/main.rs:2377:9
[INFO] [stdout]      |
[INFO] [stdout] 2377 |         despawn_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `despawn_count` is never read
[INFO] [stdout]     --> src/main.rs:2373:9
[INFO] [stdout]      |
[INFO] [stdout] 2373 |         despawn_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `despawn_count` is never read
[INFO] [stdout]     --> src/main.rs:2369:9
[INFO] [stdout]      |
[INFO] [stdout] 2369 |         despawn_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `despawn_count` is never read
[INFO] [stdout]     --> src/main.rs:2365:9
[INFO] [stdout]      |
[INFO] [stdout] 2365 |         despawn_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `despawn_count` is never read
[INFO] [stdout]     --> src/main.rs:2361:9
[INFO] [stdout]      |
[INFO] [stdout] 2361 |         despawn_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `despawn_count` is never read
[INFO] [stdout]     --> src/main.rs:2357:9
[INFO] [stdout]      |
[INFO] [stdout] 2357 |         despawn_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `p1_role` is never read
[INFO] [stdout]     --> src/main.rs:2400:17
[INFO] [stdout]      |
[INFO] [stdout] 2400 |                 p1_role = *role;
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `p2_role` is never read
[INFO] [stdout]     --> src/main.rs:2404:17
[INFO] [stdout]      |
[INFO] [stdout] 2404 |                 p2_role = *role;
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `defender_root_count` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:2695:9
[INFO] [stdout]      |
[INFO] [stdout] 2695 |     let mut defender_root_count = 0;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_defender_root_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `old_display`
[INFO] [stdout]     --> src/main.rs:2703:13
[INFO] [stdout]      |
[INFO] [stdout] 2703 |         let old_display = style.display.clone();
[INFO] [stdout]      |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_display`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `defender_root_count` is never read
[INFO] [stdout]     --> src/main.rs:2702:9
[INFO] [stdout]      |
[INFO] [stdout] 2702 |         defender_root_count += 1;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ui_camera`
[INFO] [stdout]     --> src/main.rs:2800:25
[INFO] [stdout]      |
[INFO] [stdout] 2800 |             if let Some(ui_camera) = ui_camera_entity {
[INFO] [stdout]      |                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ui_camera`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ui_camera_count`
[INFO] [stdout]     --> src/main.rs:2844:9
[INFO] [stdout]      |
[INFO] [stdout] 2844 |     let ui_camera_count = ui_camera_query.iter().count();
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ui_camera_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/main.rs:2846:10
[INFO] [stdout]      |
[INFO] [stdout] 2846 |     for (entity, camera, render_layers) in ui_camera_query.iter() {
[INFO] [stdout]      |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `camera`
[INFO] [stdout]     --> src/main.rs:2846:18
[INFO] [stdout]      |
[INFO] [stdout] 2846 |     for (entity, camera, render_layers) in ui_camera_query.iter() {
[INFO] [stdout]      |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `render_layers`
[INFO] [stdout]     --> src/main.rs:2846:26
[INFO] [stdout]      |
[INFO] [stdout] 2846 |     for (entity, camera, render_layers) in ui_camera_query.iter() {
[INFO] [stdout]      |                          ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_render_layers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `style`
[INFO] [stdout]     --> src/main.rs:2856:19
[INFO] [stdout]      |
[INFO] [stdout] 2856 |         if let Ok(style) = style_query.get(root_entity) {
[INFO] [stdout]      |                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `visibility`
[INFO] [stdout]     --> src/main.rs:2860:19
[INFO] [stdout]      |
[INFO] [stdout] 2860 |         if let Ok(visibility) = visibility_query.get(root_entity) {
[INFO] [stdout]      |                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_visibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parent_style`
[INFO] [stdout]     --> src/main.rs:2870:23
[INFO] [stdout]      |
[INFO] [stdout] 2870 |             if let Ok(parent_style) = style_query.get(parent_entity) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parent_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parent_visibility`
[INFO] [stdout]     --> src/main.rs:2874:23
[INFO] [stdout]      |
[INFO] [stdout] 2874 |             if let Ok(parent_visibility) = visibility_query.get(parent_entity) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parent_visibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]     --> src/main.rs:2881:22
[INFO] [stdout]      |
[INFO] [stdout] 2881 |                 for (i, child) in parent_children.iter().enumerate() {
[INFO] [stdout]      |                      ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `child_style`
[INFO] [stdout]     --> src/main.rs:2882:31
[INFO] [stdout]      |
[INFO] [stdout] 2882 |                     if let Ok(child_style) = style_query.get(*child) {
[INFO] [stdout]      |                               ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_child_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `style`
[INFO] [stdout]     --> src/main.rs:2928:19
[INFO] [stdout]      |
[INFO] [stdout] 2928 |         if let Ok(style) = style_query.get(root_entity) {
[INFO] [stdout]      |                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `visibility`
[INFO] [stdout]     --> src/main.rs:2932:19
[INFO] [stdout]      |
[INFO] [stdout] 2932 |         if let Ok(visibility) = visibility_query.get(root_entity) {
[INFO] [stdout]      |                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_visibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]     --> src/main.rs:2939:18
[INFO] [stdout]      |
[INFO] [stdout] 2939 |             for (i, child) in children.iter().enumerate() {
[INFO] [stdout]      |                  ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `child_style`
[INFO] [stdout]     --> src/main.rs:2940:27
[INFO] [stdout]      |
[INFO] [stdout] 2940 |                 if let Ok(child_style) = style_query.get(*child) {
[INFO] [stdout]      |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_child_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `child_visibility`
[INFO] [stdout]     --> src/main.rs:2944:27
[INFO] [stdout]      |
[INFO] [stdout] 2944 |                 if let Ok(child_visibility) = visibility_query.get(*child) {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_child_visibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]     --> src/main.rs:3035:17
[INFO] [stdout]      |
[INFO] [stdout] 3035 |             for entity in defender_check.iter() {
[INFO] [stdout]      |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HealthText` is never constructed
[INFO] [stdout]    --> src/main.rs:101:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | struct HealthText;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_ui_target_cameras` is never used
[INFO] [stdout]    --> src/main.rs:230:4
[INFO] [stdout]     |
[INFO] [stdout] 230 | fn setup_ui_target_cameras(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cleanup_attacker_view_entities_system` is never used
[INFO] [stdout]     --> src/main.rs:1475:4
[INFO] [stdout]      |
[INFO] [stdout] 1475 | fn cleanup_attacker_view_entities_system(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `debug_all_cameras_system` is never used
[INFO] [stdout]     --> src/main.rs:1804:4
[INFO] [stdout]      |
[INFO] [stdout] 1804 | fn debug_all_cameras_system(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `debug_ui_camera_and_defender_ui` is never used
[INFO] [stdout]     --> src/main.rs:2812:4
[INFO] [stdout]      |
[INFO] [stdout] 2812 | fn debug_ui_camera_and_defender_ui(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `debug_defender_ui_children` is never used
[INFO] [stdout]     --> src/main.rs:2895:4
[INFO] [stdout]      |
[INFO] [stdout] 2895 | fn debug_defender_ui_children(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `wall_entity` and `position` are never read
[INFO] [stdout]    --> src/gameplay.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub struct WallSegment {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] 100 |     pub wall_entity: Entity,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 101 |     pub position: Vec2,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WallSegment` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `owner` is never read
[INFO] [stdout]    --> src/gameplay.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub struct Bullet {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub owner: PlayerId,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Bullet` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `BulletRenderLayer` is never used
[INFO] [stdout]    --> src/gameplay.rs:122:10
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub enum BulletRenderLayer {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `direction` and `move_timer` are never read
[INFO] [stdout]    --> src/gameplay.rs:144:9
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub struct DefenderAI {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 144 |     pub direction: f32,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 145 |     pub move_timer: Timer,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DefenderAI` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `left_camera` and `right_camera` are never read
[INFO] [stdout]    --> src/gameplay.rs:241:9
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub struct LocalMultiplayerCameras {
[INFO] [stdout]     |            ----------------------- fields in this struct
[INFO] [stdout] 241 |     pub left_camera: Entity,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 242 |     pub right_camera: Entity,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LocalMultiplayerCameras` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `player_id` and `damage` are never read
[INFO] [stdout]    --> src/gameplay.rs:248:9
[INFO] [stdout]     |
[INFO] [stdout] 247 | pub struct PlayerHitEvent {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 248 |     pub player_id: PlayerId,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 249 |     pub damage: f32,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PlayerHitEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `player_id` and `action` are never read
[INFO] [stdout]    --> src/gameplay.rs:261:9
[INFO] [stdout]     |
[INFO] [stdout] 260 | pub struct PlayerActionEvent {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 261 |     pub player_id: PlayerId,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 262 |     pub action: DodgeAction,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PlayerActionEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_network_camera_view` is never used
[INFO] [stdout]    --> src/gameplay.rs:419:8
[INFO] [stdout]     |
[INFO] [stdout] 419 | pub fn apply_network_camera_view(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_collision` is never used
[INFO] [stdout]     --> src/gameplay.rs:2606:4
[INFO] [stdout]      |
[INFO] [stdout] 2606 | fn check_collision(pos1: Vec3, size1: Vec2, pos2: Vec3, size2: Vec2) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_room_code` is never used
[INFO] [stdout]    --> src/network.rs:199:4
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn generate_room_code() -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search_room_delayed` is never used
[INFO] [stdout]     --> src/network_game.rs:1058:8
[INFO] [stdout]      |
[INFO] [stdout] 1058 | pub fn search_room_delayed(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `EntityCommands::<'_>::id` that must be used
[INFO] [stdout]     --> src/main.rs:3120:13
[INFO] [stdout]      |
[INFO] [stdout] 3120 | /             parent.spawn((
[INFO] [stdout] 3121 | |                 NodeBundle {
[INFO] [stdout] 3122 | |                     style: Style {
[INFO] [stdout] 3123 | |                         width: Val::Percent(100.0),
[INFO] [stdout] ...    |
[INFO] [stdout] 3142 | |                 }).id();
[INFO] [stdout]      | |_______________________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: Omit the .id() call if you do not need to store the `Entity` identifier.
[INFO] [stdout]      = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 3120 |             let _ = parent.spawn((
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [optimized + debuginfo] target(s) in 8m 22s
[INFO] running `Command { std: "docker" "inspect" "09f324c67fd4eb0454bf1d571748858680a8293d053038c0cf7bde6efafc32d4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "09f324c67fd4eb0454bf1d571748858680a8293d053038c0cf7bde6efafc32d4", kill_on_drop: false }`
[INFO] [stdout] 09f324c67fd4eb0454bf1d571748858680a8293d053038c0cf7bde6efafc32d4
