[INFO] cloning repository https://github.com/ddmills/quadboy
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ddmills/quadboy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fddmills%2Fquadboy", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fddmills%2Fquadboy'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 0271427a9a3b14cd45f7db2cf6ae4ddd3d3953fa
[INFO] building ddmills/quadboy against master#c7f6aa2869acdbf014d094c6e427e554e160b6db for pr-146237-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fddmills%2Fquadboy" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-3-tc1/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/ddmills/quadboy
[INFO] finished tweaking git repo https://github.com/ddmills/quadboy
[INFO] tweaked toml for git repo https://github.com/ddmills/quadboy written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ddmills/quadboy on toolchain c7f6aa2869acdbf014d094c6e427e554e160b6db
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ddmills/quadboy 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" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating git repository `https://github.com/not-fl3/macroquad`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded hound v3.5.1
[INFO] [stderr]   Downloaded bevy_ptr v0.16.1
[INFO] [stderr]   Downloaded audir-sles v0.1.0
[INFO] [stderr]   Downloaded tracy-client v0.17.6
[INFO] [stderr]   Downloaded audrey v0.3.0
[INFO] [stderr]   Downloaded macroquad-profiler v0.2.0
[INFO] [stderr]   Downloaded quad-alsa-sys v0.3.2
[INFO] [stderr]   Downloaded dasp_frame v0.11.0
[INFO] [stderr]   Downloaded ogg v0.7.1
[INFO] [stderr]   Downloaded quad-rand v0.2.3
[INFO] [stderr]   Downloaded assert_type_match v0.1.1
[INFO] [stderr]   Downloaded bevy_ecs_macros v0.16.1
[INFO] [stderr]   Downloaded bevy_utils v0.16.1
[INFO] [stderr]   Downloaded async-executor v1.13.2
[INFO] [stderr]   Downloaded bevy_tasks v0.16.1
[INFO] [stderr]   Downloaded bevy_platform v0.16.1
[INFO] [stderr]   Downloaded fastnoise-lite v1.1.1
[INFO] [stderr]   Downloaded variadics_please v1.1.0
[INFO] [stderr]   Downloaded thiserror-impl v2.0.15
[INFO] [stderr]   Downloaded bevy_reflect_derive v0.16.1
[INFO] [stderr]   Downloaded wgpu-types v24.0.0
[INFO] [stderr]   Downloaded objc-rs v0.2.8
[INFO] [stderr]   Downloaded bevy_macro_utils v0.16.1
[INFO] [stderr]   Downloaded downcast-rs v2.0.1
[INFO] [stderr]   Downloaded disqualified v1.0.0
[INFO] [stderr]   Downloaded nonmax v0.5.5
[INFO] [stderr]   Downloaded heapless v0.8.0
[INFO] [stderr]   Downloaded thiserror v2.0.15
[INFO] [stderr]   Downloaded fontdue v0.9.3
[INFO] [stderr]   Downloaded bevy_reflect v0.16.1
[INFO] [stderr]   Downloaded ttf-parser v0.21.1
[INFO] [stderr]   Downloaded miniquad v0.4.8
[INFO] [stderr]   Downloaded tracy-client-sys v0.24.3
[INFO] [stderr]   Downloaded glam v0.27.0
[INFO] [stderr]   Downloaded glam v0.29.3
[INFO] [stderr]   Downloaded bevy_ecs v0.16.1
[INFO] [stderr]   Downloaded quad-snd v0.2.8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1e5222e6524fb3f8fe98823017d4bc5f737552a2d1e45bce28871a13898ce472
[INFO] running `Command { std: "docker" "start" "-a" "1e5222e6524fb3f8fe98823017d4bc5f737552a2d1e45bce28871a13898ce472", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1e5222e6524fb3f8fe98823017d4bc5f737552a2d1e45bce28871a13898ce472", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1e5222e6524fb3f8fe98823017d4bc5f737552a2d1e45bce28871a13898ce472", kill_on_drop: false }`
[INFO] [stdout] 1e5222e6524fb3f8fe98823017d4bc5f737552a2d1e45bce28871a13898ce472
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 879b05c6ac910dd51cdeaf4e9ced1a9391d9ec9150f39e993c5e44f7492ea7f0
[INFO] running `Command { std: "docker" "start" "-a" "879b05c6ac910dd51cdeaf4e9ced1a9391d9ec9150f39e993c5e44f7492ea7f0", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.18
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling cfg-if v1.0.1
[INFO] [stderr]    Compiling libc v0.2.175
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.103
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling bumpalo v3.19.0
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling winnow v0.7.12
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling log v0.4.27
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling typeid v1.0.3
[INFO] [stderr]    Compiling zerocopy v0.8.26
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling indexmap v2.10.0
[INFO] [stderr]    Compiling thiserror v2.0.15
[INFO] [stderr]    Compiling parking v2.2.1
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling quad-alsa-sys v0.3.2
[INFO] [stderr]    Compiling miniquad v0.4.8
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling pin-project-lite v0.2.16
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling wasm-bindgen v0.2.103
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling futures-lite v2.6.1
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling ogg v0.7.1
[INFO] [stderr]    Compiling png v0.17.16
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling lock_api v0.4.13
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling slab v0.4.11
[INFO] [stderr]    Compiling async-task v4.7.1
[INFO] [stderr]    Compiling ttf-parser v0.21.1
[INFO] [stderr]    Compiling bytemuck v1.23.2
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling dasp_sample v0.11.0
[INFO] [stderr]    Compiling lewton v0.9.4
[INFO] [stderr]    Compiling async-executor v1.13.2
[INFO] [stderr]    Compiling uuid v1.18.0
[INFO] [stderr]    Compiling parking_lot v0.12.4
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling image v0.24.9
[INFO] [stderr]    Compiling dasp_frame v0.11.0
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling quad-snd v0.2.8
[INFO] [stderr]    Compiling glam v0.27.0
[INFO] [stderr]    Compiling bevy_ptr v0.16.1
[INFO] [stderr]    Compiling downcast-rs v2.0.1
[INFO] [stderr]    Compiling quad-rand v0.2.3
[INFO] [stderr]    Compiling hound v3.5.1
[INFO] [stderr]    Compiling macroquad_macro v0.1.8 (https://github.com/not-fl3/macroquad#330e24f8)
[INFO] [stderr]    Compiling disqualified v1.0.0
[INFO] [stderr]    Compiling atomic-waker v1.1.2
[INFO] [stderr]    Compiling serde_json v1.0.142
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling memchr v2.7.5
[INFO] [stderr]    Compiling fixedbitset v0.5.7
[INFO] [stderr]    Compiling nonmax v0.5.5
[INFO] [stderr]    Compiling itoa v1.0.15
[INFO] [stderr]    Compiling ryu v1.0.20
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling ordered-float v5.0.0
[INFO] [stderr]    Compiling fastnoise-lite v1.1.1
[INFO] [stderr]    Compiling audrey v0.3.0
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.103
[INFO] [stderr]    Compiling bevy_macro_utils v0.16.1
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.103
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling derive_more-impl v1.0.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.15
[INFO] [stderr]    Compiling bevy_reflect_derive v0.16.1
[INFO] [stderr]    Compiling assert_type_match v0.1.1
[INFO] [stderr]    Compiling variadics_please v1.1.0
[INFO] [stderr]    Compiling bevy_ecs_macros v0.16.1
[INFO] [stderr]    Compiling quadboy_macros v0.1.0 (/opt/rustwide/workdir/quadboy_macros)
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.103
[INFO] [stderr]    Compiling js-sys v0.3.80
[INFO] [stderr]    Compiling web-sys v0.3.80
[INFO] [stderr]    Compiling derive_more v1.0.0
[INFO] [stderr]    Compiling erased-serde v0.4.6
[INFO] [stderr]    Compiling bitflags v2.9.2
[INFO] [stderr]    Compiling bevy_platform v0.16.1
[INFO] [stderr]    Compiling fontdue v0.9.3
[INFO] [stderr]    Compiling bevy_utils v0.16.1
[INFO] [stderr]    Compiling bevy_tasks v0.16.1
[INFO] [stderr]    Compiling bevy_reflect v0.16.1
[INFO] [stderr]    Compiling macroquad v0.4.14 (https://github.com/not-fl3/macroquad#330e24f8)
[INFO] [stderr]    Compiling macroquad-profiler v0.2.0
[INFO] [stderr]    Compiling bevy_ecs v0.16.1
[INFO] [stderr]    Compiling quadboy v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `apply_xp_gain`, `award_xp_on_kill`, and `handle_level_up`
[INFO] [stdout]   --> src/main.rs:51:62
[INFO] [stdout]    |
[INFO] [stdout] 51 |             LevelUpEvent, LevelUpParticleQueue, XPGainEvent, apply_xp_gain, award_xp_on_kill,
[INFO] [stdout]    |                                                              ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 52 |             handle_level_up, process_level_up_particles,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::prelude::trace`
[INFO] [stdout]  --> src/domain/actions/attack_action.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use macroquad::prelude::trace;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PlayerPosition`
[INFO] [stdout]  --> src/domain/actions/attack_action.rs:9:79
[INFO] [stdout]   |
[INFO] [stdout] 9 |         Health, HitBlink, HitEffect, KnockbackAnimation, Label, MaterialType, PlayerPosition,
[INFO] [stdout]   |                                                                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StableId`
[INFO] [stdout]  --> src/domain/actions/stack_split_util.rs:8:14
[INFO] [stdout]   |
[INFO] [stdout] 8 |     engine::{StableId, StableIdRegistry},
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hit_effect::HitEffect`
[INFO] [stdout]  --> src/domain/components/default_ranged_attack.rs:3:37
[INFO] [stdout]   |
[INFO] [stdout] 3 |         destructible::MaterialType, hit_effect::HitEffect, weapon::Weapon,
[INFO] [stdout]   |                                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ActiveConditions` and `ConditionType`
[INFO] [stdout]  --> src/domain/systems/energy_system.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 |     domain::{ActiveConditions, ConditionType, Energy, Player, StatType, Stats},
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::prelude::trace`
[INFO] [stdout]  --> src/domain/systems/fuse_system.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use macroquad::prelude::trace;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::prelude::trace`
[INFO] [stdout]  --> src/domain/systems/game_systems.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use macroquad::prelude::trace;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ExplosionEvent`
[INFO] [stdout]  --> src/domain/world/load_game_cmd.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         ExplosionEvent, LoadZoneCommand, Overworld, Player, PlayerPosition, TerrainNoise, Zones,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ApplyVisibilityEffects`, `AttributePoints`, `Attributes`, `CleanupStatePlay`, `Collider`, `DefaultMeleeAttack`, `DynamicEntity`, `Energy`, `EquipmentSlots`, `FactionId`, `FactionMember`, `GlyphTextureId`, `Glyph`, `Health`, `Label`, `Layer`, `Level`, `MovementCapabilities`, `Player`, `StatModifiers`, `Stats`, `Vision`, and `common::Palette`
[INFO] [stdout]   --> src/domain/world/new_game_cmd.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  7 |     common::Palette,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]  8 |     domain::{
[INFO] [stdout]  9 |         ApplyVisibilityEffects, AttributePoints, Attributes, Collider, DefaultMeleeAttack,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |         DynamicEntity, Energy, EquipItemAction, EquipmentSlots, FactionId, FactionMember,
[INFO] [stdout]    |         ^^^^^^^^^^^^^  ^^^^^^                   ^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 11 |         GameSaveData, Health, Inventory, Label, Level, LoadZoneCommand, MovementCapabilities,
[INFO] [stdout]    |                       ^^^^^^             ^^^^^  ^^^^^                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 12 |         NeedsStableId, Overworld, Player, PlayerPosition, PlayerSaveData, Prefab, PrefabId,
[INFO] [stdout]    |                                   ^^^^^^
[INFO] [stdout] 13 |         Prefabs, StatModifiers, Stats, TerrainNoise, Vision, Zones,
[INFO] [stdout]    |                  ^^^^^^^^^^^^^  ^^^^^                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     rendering::{GameCamera, Glyph, GlyphTextureId, Layer, Position},
[INFO] [stdout]    |                             ^^^^^  ^^^^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 17 |     states::{CleanupStatePlay, CurrentGameState, GameState},
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Energy`, `Inventory`, and `Level`
[INFO] [stdout]  --> src/domain/world/prefabs/player.rs:6:44
[INFO] [stdout]   |
[INFO] [stdout] 6 |         DefaultMeleeAttack, DynamicEntity, Energy, EquipmentSlots, FactionId, FactionMember,
[INFO] [stdout]   |                                            ^^^^^^
[INFO] [stdout] 7 |         Health, HitBlink, Inventory, Level, ModifierSource, MovementCapabilities, Player,
[INFO] [stdout]   |                           ^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::Prefab`
[INFO] [stdout]  --> src/domain/world/prefabs/prefab_builder.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::Prefab;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StableId`
[INFO] [stdout]  --> src/domain/world/prefabs/spawn_prefab_cmd.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 |     engine::{StableId, StableIdRegistry},
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AudioSource`
[INFO] [stdout]   --> src/engine/mod.rs:14:51
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use audio::{Audio, AudioCollection, AudioKey, AudioSource, process_audio_queue};
[INFO] [stdout]    |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy_ecs::prelude::*`
[INFO] [stdout]  --> src/rendering/particles/condition_effects.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bevy_ecs::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::prelude::trace`
[INFO] [stdout]  --> src/rendering/particles/systems.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use macroquad::prelude::trace;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `condition_effects::*`
[INFO] [stdout]  --> src/rendering/particles/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use condition_effects::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Zones`
[INFO] [stdout]  --> src/rendering/zone_outline.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 |     domain::{PlayerPosition, Zones},
[INFO] [stdout]   |                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attacker_name`
[INFO] [stdout]    --> src/domain/actions/attack_action.rs:855:13
[INFO] [stdout]     |
[INFO] [stdout] 855 |         let attacker_name = world
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attacker_name`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_name`
[INFO] [stdout]    --> src/domain/actions/attack_action.rs:860:13
[INFO] [stdout]     |
[INFO] [stdout] 860 |         let target_name = world
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attack_name`
[INFO] [stdout]   --> src/domain/components/default_melee_attack.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         attack_name: &str,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attack_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attack_name`
[INFO] [stdout]   --> src/domain/components/default_melee_attack.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |         attack_name: &str,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attack_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attack_name`
[INFO] [stdout]   --> src/domain/components/default_ranged_attack.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         attack_name: &str,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attack_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attack_name`
[INFO] [stdout]   --> src/domain/components/default_ranged_attack.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         attack_name: &str,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attack_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ammo`
[INFO] [stdout]   --> src/domain/components/default_ranged_attack.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         ammo: usize,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]    |
[INFO] [stdout] 54 |         _ammo: usize,
[INFO] [stdout]    |         +
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `MAX_AUDIO_DISTANCE`
[INFO] [stdout]    |
[INFO] [stdout] 54 -         ammo: usize,
[INFO] [stdout] 54 +         engine::audio::MAX_AUDIO_DISTANCE: usize,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `level`
[INFO] [stdout]   --> src/domain/systems/condition_system.rs:24:67
[INFO] [stdout]    |
[INFO] [stdout] 24 |     for (_entity, mut conditions, mut health, mut stat_modifiers, level, stats) in
[INFO] [stdout]    |                                                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_level`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stats`
[INFO] [stdout]   --> src/domain/systems/condition_system.rs:24:74
[INFO] [stdout]    |
[INFO] [stdout] 24 |     for (_entity, mut conditions, mut health, mut stat_modifiers, level, stats) in
[INFO] [stdout]    |                                                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_stats`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/domain/systems/condition_system.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let mut stat_modifiers_to_add = vec![];
[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: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/amulet.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_amulet(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[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/domain/world/prefabs/apple.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_apple(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/apple.rs:9:36
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_apple(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/bandit.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_bandit(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/bandit.rs:13:37
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_bandit(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/bat.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn spawn_bat(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/bat.rs:12:34
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn spawn_bat(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/bedroll.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_bedroll(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/bedroll.rs:9:38
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_bedroll(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/boulder.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_boulder(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/boulder.rs:9:38
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_boulder(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/brown_bear.rs:13:25
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_brown_bear(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/brown_bear.rs:13:41
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_brown_bear(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/cactus.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn spawn_cactus(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[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/domain/world/prefabs/campfire.rs:5:23
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_campfire(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/campfire.rs:5:39
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_campfire(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/coyote.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_coyote(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/coyote.rs:13:37
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_coyote(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/duster.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_duster(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/duster.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_duster(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/dynamite.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn spawn_dynamite(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/dynamite.rs:10:39
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn spawn_dynamite(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/giant_firefly.rs:13:28
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_giant_firefly(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/giant_firefly.rs:13:44
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_giant_firefly(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/giant_mushroom.rs:10:29
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn spawn_giant_mushroom(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[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/domain/world/prefabs/gold_nugget.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_gold_nugget(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/gold_nugget.rs:5:42
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_gold_nugget(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/lantern.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn spawn_lantern(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/lantern.rs:10:38
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn spawn_lantern(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/long_johns.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_long_johns(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/long_johns.rs:9:41
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_long_johns(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/overcoat.rs:9:23
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_overcoat(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/overcoat.rs:9:39
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_overcoat(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/pine_tree.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn spawn_pine_tree(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[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/domain/world/prefabs/player.rs:15:21
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn spawn_player(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/player.rs:15:37
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn spawn_player(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/poncho.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_poncho(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/poncho.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_poncho(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/domain/world/prefabs/prefab_builder.rs:413:39
[INFO] [stdout]     |
[INFO] [stdout] 413 |     pub fn with_movement_capabilities(mut self, _flags: crate::domain::MovementFlags) -> Self {
[INFO] [stdout]     |                                       ----^^^^
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/rat.rs:13:18
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_rat(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/rat.rs:13:34
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_rat(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/rattlesnake.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_rattlesnake(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/rattlesnake.rs:13:42
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_rattlesnake(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/ring.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_ring(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[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/domain/world/prefabs/stair_down.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_stair_down(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/stair_down.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_stair_down(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/stair_up.rs:5:23
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_stair_up(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/stair_up.rs:5:39
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_stair_up(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/steel_toe_boots.rs:9:30
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_steel_toe_boots(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/steel_toe_boots.rs:9:46
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_steel_toe_boots(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/tree.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn spawn_tree(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[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/domain/world/prefabs/wool_shirt.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_wool_shirt(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/wool_shirt.rs:9:41
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_wool_shirt(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `clock`
[INFO] [stdout]   --> src/ui/ai_debug_dialog.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         clock: &Clock,
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_clock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xp_bar`
[INFO] [stdout]   --> src/ui/xp_progress_bar.rs:30:10
[INFO] [stdout]    |
[INFO] [stdout] 30 |     for (xp_bar, mut text, mut bar) in q_bars.iter_mut() {
[INFO] [stdout]    |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_xp_bar`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `can_increase` and `can_decrease` are never used
[INFO] [stdout]   --> src/domain/components/attributes.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl AttributePoints {
[INFO] [stdout]    | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn can_increase(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn can_decrease(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_strength`, `get_dexterity`, `get_constitution`, and `get_intelligence` are never used
[INFO] [stdout]   --> src/domain/components/attributes.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 65 | impl Attributes {
[INFO] [stdout]    | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub fn get_strength(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn get_dexterity(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn get_constitution(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub fn get_intelligence(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `old` is never read
[INFO] [stdout]   --> src/domain/components/bitmask.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct Bitmasker {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 40 |     old: Vec<usize>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `wall` and `water` are never used
[INFO] [stdout]   --> src/domain/components/collider.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | impl Collider {
[INFO] [stdout]    | ------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn wall() -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     pub fn water() -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `aquatic`, `amphibious`, and `flying` are never used
[INFO] [stdout]    --> src/domain/components/collider.rs:92:12
[INFO] [stdout]     |
[INFO] [stdout]  83 | impl MovementCapabilities {
[INFO] [stdout]     | ------------------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub fn aquatic() -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub fn amphibious() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn flying() -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_entities`, `get`, `has_entity`, `has`, `iter_entities`, and `recalculate_flags_at` are never used
[INFO] [stdout]   --> src/domain/components/collider_cache.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl ColliderCache {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn get_entities(&self, x: usize, y: usize) -> Option<&Vec<Entity>> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn get(&self, x: usize, y: usize) -> Option<&Vec<Entity>> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn has_entity(&self, entity: &Entity) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn has(&self, entity: &Entity) -> bool {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn iter_entities(&self) -> impl Iterator<Item = &Vec<Entity>> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn recalculate_flags_at(&mut self, x: usize, y: usize, world: &World) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `has_condition`, `get_conditions_of_type`, `is_empty`, and `clear` are never used
[INFO] [stdout]   --> src/domain/components/conditions.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl ActiveConditions {
[INFO] [stdout]    | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn has_condition(&self, condition_type: &ConditionType) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn get_conditions_of_type(&self, condition_type: &ConditionType) -> Vec<&Condition> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_expired` is never used
[INFO] [stdout]    --> src/domain/components/conditions.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout]  73 | impl Condition {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn is_expired(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_base_duration_ticks` is never used
[INFO] [stdout]    --> src/domain/components/conditions.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl ConditionType {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] 136 |     pub fn get_base_duration_ticks(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `environment`, `item`, and `spell` are never used
[INFO] [stdout]    --> src/domain/components/conditions.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout] 184 | impl ConditionSource {
[INFO] [stdout]     | -------------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn environment() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn item(stable_id: StableId) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 |     pub fn spell(caster: StableId, spell_name: String) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `heal` is never used
[INFO] [stdout]   --> src/domain/components/consumable.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Consumable {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn heal(amount: i32) -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `fists_with_knockback` and `electric_touch` are never used
[INFO] [stdout]    --> src/domain/components/default_melee_attack.rs:78:12
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl DefaultMeleeAttack {
[INFO] [stdout]     | ----------------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  78 |     pub fn fists_with_knockback() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     pub fn electric_touch() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `rifle` are never used
[INFO] [stdout]   --> src/domain/components/default_ranged_attack.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl DefaultRangedAttack {
[INFO] [stdout]    | ------------------------ associated functions in this implementation
[INFO] [stdout] 18 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn rifle() -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `death_audio_key` is never used
[INFO] [stdout]   --> src/domain/components/enemy_type.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl CreatureType {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] 18 |     pub fn death_audio_key(self) -> AudioKey {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_modifier`, `remove_modifier`, and `get_modifier` are never used
[INFO] [stdout]   --> src/domain/components/faction.rs:65:12
[INFO] [stdout]    |
[INFO] [stdout] 57 | impl FactionMember {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn add_modifier(&mut self, name: String, modifier: FactionModifier) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn remove_modifier(&mut self, name: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn get_modifier(&self, name: &str) -> Option<&FactionModifier> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/domain/components/health.rs:21:12
[INFO] [stdout]     |
[INFO] [stdout]  19 | impl Health {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout]  20 |     /// Create Health with specific current values (for loading saved games)
[INFO] [stdout]  21 |     pub fn new_with_current(current: i32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn new_with_current_and_armor(current: i32, current_armor: i32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |     pub fn new(max: i32) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub fn get_current_max(&self, level: &Level, stats: &Stats) -> (i32, i32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn get_percentage(&self, level: &Level, stats: &Stats) -> f32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn get_armor_percentage(&self, stats: &Stats) -> f32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 155 |     pub fn is_dead_dynamic(&self, _level: &Level, _stats: &Stats) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `xp_progress_percentage` is never used
[INFO] [stdout]   --> src/domain/components/level.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Level {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn xp_progress_percentage(&self) -> f32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `remove_equipment_modifiers` is never used
[INFO] [stdout]    --> src/domain/components/stats.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout] 104 | impl StatModifiers {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn remove_equipment_modifiers(&mut self, item_id: u64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `condition` is never used
[INFO] [stdout]    --> src/domain/components/stats.rs:160:12
[INFO] [stdout]     |
[INFO] [stdout] 145 | impl StatModifier {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn condition(value: i32, condition_id: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_melee` and `is_ranged` are never used
[INFO] [stdout]   --> src/domain/components/weapon.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl Weapon {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn is_melee(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn is_ranged(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `applies_to_weapon_type` is never used
[INFO] [stdout]   --> src/domain/components/weapon_modifiers.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl WeaponModifier {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 80 |     pub fn applies_to_weapon_type(&self, weapon_type: WeaponType) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `XP_LVL_INTENSITY` is never used
[INFO] [stdout]  --> src/domain/game_formulas.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | impl GameFormulas {
[INFO] [stdout]   | ----------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 6 |     pub const XP_LVL_INTENSITY: u32 = 10;
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_actor_at` is never used
[INFO] [stdout]    --> src/domain/player.rs:409:4
[INFO] [stdout]     |
[INFO] [stdout] 409 | fn has_actor_at(world_pos: (usize, usize, usize), q_zones: &Query<&Zone>) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `entity` is never read
[INFO] [stdout]   --> src/domain/systems/ai_util.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Actor {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 12 |     pub entity: Entity,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Actor` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Scripted` is never constructed
[INFO] [stdout]  --> src/domain/systems/destruction_system.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum DestructionCause {
[INFO] [stdout]   |          ---------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 9 |     Scripted,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `DestructionCause` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `material_type` is never read
[INFO] [stdout]   --> src/domain/systems/destruction_system.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct EntityDestroyedEvent {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub material_type: Option<MaterialType>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `with_material_type` are never used
[INFO] [stdout]   --> src/domain/systems/destruction_system.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl EntityDestroyedEvent {
[INFO] [stdout]    | ------------------------- associated functions in this implementation
[INFO] [stdout] 21 |     pub fn new(entity: Entity, position: (usize, usize, usize), cause: DestructionCause) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn with_material_type(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Reload` is never constructed
[INFO] [stdout]   --> src/domain/systems/energy_system.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum EnergyActionType {
[INFO] [stdout]    |          ---------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 21 |     Reload,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `EnergyActionType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `with_audio` is never used
[INFO] [stdout]   --> src/domain/systems/explosion_system.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl ExplosionEvent {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn with_audio(mut self, audio: AudioKey) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_relationship` is never used
[INFO] [stdout]   --> src/domain/systems/faction_system.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl FactionRelations {
[INFO] [stdout]    | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn set_relationship(&mut self, faction_a: FactionId, faction_b: FactionId, value: i8) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `are_hostile` is never used
[INFO] [stdout]   --> src/domain/systems/faction_system.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub fn are_hostile(entity_a: Entity, entity_b: Entity, world: &World) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `generate_random` and `roll_rarity_with_bonus` are never used
[INFO] [stdout]   --> src/domain/systems/weapon_generation.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl GeneratedWeapon {
[INFO] [stdout]    | -------------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn generate_random(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     fn roll_rarity_with_bonus(tier_bonus: f32, rand: &mut Rand) -> ItemRarity {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_random_weapon` is never used
[INFO] [stdout]    --> src/domain/systems/weapon_generation.rs:304:8
[INFO] [stdout]     |
[INFO] [stdout] 304 | pub fn generate_random_weapon(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `source_entity` and `source_description` are never read
[INFO] [stdout]   --> src/domain/systems/xp_system.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct XPGainEvent {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub source_entity: Entity,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 21 |     pub source_description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `old_level` and `levels_gained` are never read
[INFO] [stdout]   --> src/domain/systems/xp_system.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct LevelUpEvent {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 26 |     pub entity: Entity,
[INFO] [stdout] 27 |     pub old_level: u32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 28 |     pub new_level: u32,
[INFO] [stdout] 29 |     pub levels_gained: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_collider_flags` and `with_throwable` are never used
[INFO] [stdout]    --> src/domain/world/prefabs/prefab_builder.rs:174:12
[INFO] [stdout]     |
[INFO] [stdout]  77 | impl PrefabBuilder {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 174 |     pub fn with_collider_flags(mut self, flags: crate::domain::ColliderFlags) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 427 |     pub fn with_throwable(mut self, base_range: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Collection` is never constructed
[INFO] [stdout]   --> src/engine/audio.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum AudioSource {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] 16 |     Clip(AudioKey),
[INFO] [stdout] 17 |     Collection(AudioCollection),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AudioSource` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `collection` is never used
[INFO] [stdout]    --> src/engine/audio.rs:223:12
[INFO] [stdout]     |
[INFO] [stdout] 154 | impl Audio {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn collection(&mut self, collection: AudioCollection) -> AudioBuilder {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_frozen` is never used
[INFO] [stdout]   --> src/engine/clock.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Clock {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn is_frozen(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/engine/stable_id.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl StableId {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 22 |     pub fn new(id: u64) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Linear`, `EaseOut`, and `EaseInOut` are never constructed
[INFO] [stdout]   --> src/rendering/particles/core.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub enum SequenceEasing {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 82 |     Linear,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 83 |     EaseIn,
[INFO] [stdout] 84 |     EaseOut,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 85 |     EaseInOut,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SequenceEasing` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `TimedCurve` is never constructed
[INFO] [stdout]    --> src/rendering/particles/core.rs:118:5
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub enum GlyphAnimation {
[INFO] [stdout]     |          -------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 118 |     TimedCurve {
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GlyphAnimation` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `default_explosion` is never used
[INFO] [stdout]   --> src/rendering/particles/particle_effect_id.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl ParticleEffectId {
[INFO] [stdout]    | --------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn default_explosion(radius: f32) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Rectangle` and `Line` are never constructed
[INFO] [stdout]   --> src/rendering/particles/spawn_areas.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum SpawnArea {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 14 |     Rectangle {
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     Line {
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SpawnArea` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Uniform`, `Random`, and `Count` are never constructed
[INFO] [stdout]   --> src/rendering/particles/spawn_areas.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub enum SpawnSpacing {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 42 |     Uniform,    // Even spacing along line
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 43 |     Random,     // Random positions along line
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 44 |     Count(u32), // Specific number of evenly spaced points
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SpawnSpacing` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `formatting` is never read
[INFO] [stdout]   --> src/rendering/text_wrap.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct FormattedWord {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 11 |     pub formatting: Option<String>, // Active formatting codes like "R-G-B-y repeat"
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormattedWord` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FormattedLine` is never constructed
[INFO] [stdout]   --> src/rendering/text_wrap.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct FormattedLine {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `break_long_word` is never used
[INFO] [stdout]    --> src/rendering/text_wrap.rs:157:4
[INFO] [stdout]     |
[INFO] [stdout] 157 | fn break_long_word(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_visual_length` is never used
[INFO] [stdout]    --> src/rendering/text_wrap.rs:208:8
[INFO] [stdout]     |
[INFO] [stdout] 208 | pub fn get_visual_length(text: &str) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `carry_formatting_to_next_line` is never used
[INFO] [stdout]    --> src/rendering/text_wrap.rs:324:8
[INFO] [stdout]     |
[INFO] [stdout] 324 | pub fn carry_formatting_to_next_line(previous_line: &str, current_line: &str) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transfer_item_from_player` is never used
[INFO] [stdout]    --> src/states/state_container.rs:107:4
[INFO] [stdout]     |
[INFO] [stdout] 107 | fn transfer_item_from_player(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transfer_item_from_container` is never used
[INFO] [stdout]    --> src/states/state_container.rs:129:4
[INFO] [stdout]     |
[INFO] [stdout] 129 | fn transfer_item_from_container(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_examinable_entity_priority` is never used
[INFO] [stdout]    --> src/states/state_explore.rs:439:4
[INFO] [stdout]     |
[INFO] [stdout] 439 | fn get_examinable_entity_priority(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `open_item_actions` is never read
[INFO] [stdout]   --> src/states/state_inventory.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | struct InventoryCallbacks {
[INFO] [stdout]    |        ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     open_item_actions: SystemId,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `back_to_inventory` is never read
[INFO] [stdout]   --> src/states/state_throw.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | struct ThrowCallbacks {
[INFO] [stdout]    |        -------------- field in this struct
[INFO] [stdout] 37 |     back_to_inventory: SystemId,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `context_data`, `index`, and `parent_list` are never read
[INFO] [stdout]   --> src/ui/activatable.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     ListItem {
[INFO] [stdout]    |     -------- fields in this variant
[INFO] [stdout] ...
[INFO] [stdout] 47 |         context_data: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 48 |         index: usize,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 49 |         parent_list: Entity,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Activatable` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `with_bg` is never used
[INFO] [stdout]   --> src/ui/bar.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Bar {
[INFO] [stdout]    | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn with_bg(mut self, bg: Palette) -> Self {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `parent_dialog` and `order` are never read
[INFO] [stdout]   --> src/ui/dialog.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct DialogContent {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 44 |     pub parent_dialog: Entity,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 45 |     pub order: usize,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DialogContent` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Property` and `Description` are never constructed
[INFO] [stdout]   --> src/ui/dialog.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub enum DialogTextStyle {
[INFO] [stdout]    |          --------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 59 |     Property,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 60 |     Description,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DialogTextStyle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parent_list` is never read
[INFO] [stdout]    --> src/ui/list.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub struct ListItemBg {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] 150 |     pub index: usize,
[INFO] [stdout] 151 |     pub parent_list: Entity,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Multiple` is never constructed
[INFO] [stdout]    --> src/ui/list.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub enum SelectionMode {
[INFO] [stdout]     |          ------------- variant in this enum
[INFO] [stdout] 161 |     Single,   // Only one item can be selected at a time
[INFO] [stdout] 162 |     Multiple, // Multiple items can be selected
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SelectionMode` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parent_list` is never read
[INFO] [stdout]    --> src/ui/list.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 180 | pub struct ListScrollUpIndicator {
[INFO] [stdout]     |            --------------------- field in this struct
[INFO] [stdout] 181 |     pub parent_list: Entity,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parent_list` is never read
[INFO] [stdout]    --> src/ui/list.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub struct ListScrollDownIndicator {
[INFO] [stdout]     |            ----------------------- field in this struct
[INFO] [stdout] 186 |     pub parent_list: Entity,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_xp_display` is never used
[INFO] [stdout]   --> src/ui/xp_progress_bar.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn generate_xp_display(bar: &XPProgressBar, level: &Level) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/engine/audio.rs:219:17
[INFO] [stdout]     |
[INFO] [stdout] 219 |     pub fn clip(&mut self, key: AudioKey) -> AudioBuilder {
[INFO] [stdout]     |                 ^^^^^^^^^                    ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 219 |     pub fn clip(&mut self, key: AudioKey) -> AudioBuilder<'_> {
[INFO] [stdout]     |                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/engine/audio.rs:223:23
[INFO] [stdout]     |
[INFO] [stdout] 223 |     pub fn collection(&mut self, collection: AudioCollection) -> AudioBuilder {
[INFO] [stdout]     |                       ^^^^^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 223 |     pub fn collection(&mut self, collection: AudioCollection) -> AudioBuilder<'_> {
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5m 07s
[INFO] running `Command { std: "docker" "inspect" "879b05c6ac910dd51cdeaf4e9ced1a9391d9ec9150f39e993c5e44f7492ea7f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "879b05c6ac910dd51cdeaf4e9ced1a9391d9ec9150f39e993c5e44f7492ea7f0", kill_on_drop: false }`
[INFO] [stdout] 879b05c6ac910dd51cdeaf4e9ced1a9391d9ec9150f39e993c5e44f7492ea7f0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] be87e81a29b56fc1039837e2abacc4451529f4fea53bf87ba26b63e579ed06c1
[INFO] running `Command { std: "docker" "start" "-a" "be87e81a29b56fc1039837e2abacc4451529f4fea53bf87ba26b63e579ed06c1", kill_on_drop: false }`
[INFO] [stderr]    Compiling quadboy v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `apply_xp_gain`, `award_xp_on_kill`, and `handle_level_up`
[INFO] [stdout]   --> src/main.rs:51:62
[INFO] [stdout]    |
[INFO] [stdout] 51 |             LevelUpEvent, LevelUpParticleQueue, XPGainEvent, apply_xp_gain, award_xp_on_kill,
[INFO] [stdout]    |                                                              ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 52 |             handle_level_up, process_level_up_particles,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::prelude::trace`
[INFO] [stdout]  --> src/domain/actions/attack_action.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use macroquad::prelude::trace;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PlayerPosition`
[INFO] [stdout]  --> src/domain/actions/attack_action.rs:9:79
[INFO] [stdout]   |
[INFO] [stdout] 9 |         Health, HitBlink, HitEffect, KnockbackAnimation, Label, MaterialType, PlayerPosition,
[INFO] [stdout]   |                                                                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StableId`
[INFO] [stdout]  --> src/domain/actions/stack_split_util.rs:8:14
[INFO] [stdout]   |
[INFO] [stdout] 8 |     engine::{StableId, StableIdRegistry},
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hit_effect::HitEffect`
[INFO] [stdout]  --> src/domain/components/default_ranged_attack.rs:3:37
[INFO] [stdout]   |
[INFO] [stdout] 3 |         destructible::MaterialType, hit_effect::HitEffect, weapon::Weapon,
[INFO] [stdout]   |                                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ActiveConditions` and `ConditionType`
[INFO] [stdout]  --> src/domain/systems/energy_system.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 |     domain::{ActiveConditions, ConditionType, Energy, Player, StatType, Stats},
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::prelude::trace`
[INFO] [stdout]  --> src/domain/systems/fuse_system.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use macroquad::prelude::trace;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::prelude::trace`
[INFO] [stdout]  --> src/domain/systems/game_systems.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use macroquad::prelude::trace;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ExplosionEvent`
[INFO] [stdout]  --> src/domain/world/load_game_cmd.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         ExplosionEvent, LoadZoneCommand, Overworld, Player, PlayerPosition, TerrainNoise, Zones,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ApplyVisibilityEffects`, `AttributePoints`, `Attributes`, `CleanupStatePlay`, `Collider`, `DefaultMeleeAttack`, `DynamicEntity`, `Energy`, `EquipmentSlots`, `FactionId`, `FactionMember`, `GlyphTextureId`, `Glyph`, `Health`, `Label`, `Layer`, `Level`, `MovementCapabilities`, `Player`, `StatModifiers`, `Stats`, `Vision`, and `common::Palette`
[INFO] [stdout]   --> src/domain/world/new_game_cmd.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  7 |     common::Palette,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]  8 |     domain::{
[INFO] [stdout]  9 |         ApplyVisibilityEffects, AttributePoints, Attributes, Collider, DefaultMeleeAttack,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |         DynamicEntity, Energy, EquipItemAction, EquipmentSlots, FactionId, FactionMember,
[INFO] [stdout]    |         ^^^^^^^^^^^^^  ^^^^^^                   ^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 11 |         GameSaveData, Health, Inventory, Label, Level, LoadZoneCommand, MovementCapabilities,
[INFO] [stdout]    |                       ^^^^^^             ^^^^^  ^^^^^                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 12 |         NeedsStableId, Overworld, Player, PlayerPosition, PlayerSaveData, Prefab, PrefabId,
[INFO] [stdout]    |                                   ^^^^^^
[INFO] [stdout] 13 |         Prefabs, StatModifiers, Stats, TerrainNoise, Vision, Zones,
[INFO] [stdout]    |                  ^^^^^^^^^^^^^  ^^^^^                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     rendering::{GameCamera, Glyph, GlyphTextureId, Layer, Position},
[INFO] [stdout]    |                             ^^^^^  ^^^^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 17 |     states::{CleanupStatePlay, CurrentGameState, GameState},
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Energy`, `Inventory`, and `Level`
[INFO] [stdout]  --> src/domain/world/prefabs/player.rs:6:44
[INFO] [stdout]   |
[INFO] [stdout] 6 |         DefaultMeleeAttack, DynamicEntity, Energy, EquipmentSlots, FactionId, FactionMember,
[INFO] [stdout]   |                                            ^^^^^^
[INFO] [stdout] 7 |         Health, HitBlink, Inventory, Level, ModifierSource, MovementCapabilities, Player,
[INFO] [stdout]   |                           ^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::Prefab`
[INFO] [stdout]  --> src/domain/world/prefabs/prefab_builder.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::Prefab;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StableId`
[INFO] [stdout]  --> src/domain/world/prefabs/spawn_prefab_cmd.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 |     engine::{StableId, StableIdRegistry},
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AudioSource`
[INFO] [stdout]   --> src/engine/mod.rs:14:51
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use audio::{Audio, AudioCollection, AudioKey, AudioSource, process_audio_queue};
[INFO] [stdout]    |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy_ecs::prelude::*`
[INFO] [stdout]  --> src/rendering/particles/condition_effects.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bevy_ecs::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::prelude::trace`
[INFO] [stdout]  --> src/rendering/particles/systems.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use macroquad::prelude::trace;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `condition_effects::*`
[INFO] [stdout]  --> src/rendering/particles/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use condition_effects::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Zones`
[INFO] [stdout]  --> src/rendering/zone_outline.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 |     domain::{PlayerPosition, Zones},
[INFO] [stdout]   |                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attacker_name`
[INFO] [stdout]    --> src/domain/actions/attack_action.rs:855:13
[INFO] [stdout]     |
[INFO] [stdout] 855 |         let attacker_name = world
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attacker_name`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_name`
[INFO] [stdout]    --> src/domain/actions/attack_action.rs:860:13
[INFO] [stdout]     |
[INFO] [stdout] 860 |         let target_name = world
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attack_name`
[INFO] [stdout]   --> src/domain/components/default_melee_attack.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         attack_name: &str,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attack_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attack_name`
[INFO] [stdout]   --> src/domain/components/default_melee_attack.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |         attack_name: &str,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attack_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attack_name`
[INFO] [stdout]   --> src/domain/components/default_ranged_attack.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         attack_name: &str,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attack_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attack_name`
[INFO] [stdout]   --> src/domain/components/default_ranged_attack.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         attack_name: &str,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attack_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ammo`
[INFO] [stdout]   --> src/domain/components/default_ranged_attack.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         ammo: usize,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]    |
[INFO] [stdout] 54 |         _ammo: usize,
[INFO] [stdout]    |         +
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `MAX_AUDIO_DISTANCE`
[INFO] [stdout]    |
[INFO] [stdout] 54 -         ammo: usize,
[INFO] [stdout] 54 +         engine::audio::MAX_AUDIO_DISTANCE: usize,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `level`
[INFO] [stdout]   --> src/domain/systems/condition_system.rs:24:67
[INFO] [stdout]    |
[INFO] [stdout] 24 |     for (_entity, mut conditions, mut health, mut stat_modifiers, level, stats) in
[INFO] [stdout]    |                                                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_level`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stats`
[INFO] [stdout]   --> src/domain/systems/condition_system.rs:24:74
[INFO] [stdout]    |
[INFO] [stdout] 24 |     for (_entity, mut conditions, mut health, mut stat_modifiers, level, stats) in
[INFO] [stdout]    |                                                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_stats`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/domain/systems/condition_system.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let mut stat_modifiers_to_add = vec![];
[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: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/amulet.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_amulet(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[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/domain/world/prefabs/apple.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_apple(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/apple.rs:9:36
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_apple(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/bandit.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_bandit(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/bandit.rs:13:37
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_bandit(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/bat.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn spawn_bat(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/bat.rs:12:34
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn spawn_bat(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/bedroll.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_bedroll(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/bedroll.rs:9:38
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_bedroll(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/boulder.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_boulder(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/boulder.rs:9:38
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_boulder(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/brown_bear.rs:13:25
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_brown_bear(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/brown_bear.rs:13:41
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_brown_bear(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/cactus.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn spawn_cactus(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[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/domain/world/prefabs/campfire.rs:5:23
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_campfire(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/campfire.rs:5:39
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_campfire(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/coyote.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_coyote(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/coyote.rs:13:37
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_coyote(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/duster.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_duster(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/duster.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_duster(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/dynamite.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn spawn_dynamite(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/dynamite.rs:10:39
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn spawn_dynamite(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/giant_firefly.rs:13:28
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_giant_firefly(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/giant_firefly.rs:13:44
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_giant_firefly(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/giant_mushroom.rs:10:29
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn spawn_giant_mushroom(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[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/domain/world/prefabs/gold_nugget.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_gold_nugget(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/gold_nugget.rs:5:42
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_gold_nugget(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/lantern.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn spawn_lantern(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/lantern.rs:10:38
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn spawn_lantern(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/long_johns.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_long_johns(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/long_johns.rs:9:41
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_long_johns(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/overcoat.rs:9:23
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_overcoat(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/overcoat.rs:9:39
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_overcoat(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/pine_tree.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn spawn_pine_tree(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[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/domain/world/prefabs/player.rs:15:21
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn spawn_player(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/player.rs:15:37
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn spawn_player(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/poncho.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_poncho(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/poncho.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_poncho(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/domain/world/prefabs/prefab_builder.rs:413:39
[INFO] [stdout]     |
[INFO] [stdout] 413 |     pub fn with_movement_capabilities(mut self, _flags: crate::domain::MovementFlags) -> Self {
[INFO] [stdout]     |                                       ----^^^^
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/rat.rs:13:18
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_rat(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/rat.rs:13:34
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_rat(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/domain/world/prefabs/rattlesnake.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_rattlesnake(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/domain/world/prefabs/rattlesnake.rs:13:42
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn spawn_rattlesnake(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]    |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/ring.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_ring(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[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/domain/world/prefabs/stair_down.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_stair_down(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/stair_down.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_stair_down(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/stair_up.rs:5:23
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_stair_up(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/stair_up.rs:5:39
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spawn_stair_up(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/steel_toe_boots.rs:9:30
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_steel_toe_boots(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/steel_toe_boots.rs:9:46
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_steel_toe_boots(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]  --> src/domain/world/prefabs/tree.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn spawn_tree(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[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/domain/world/prefabs/wool_shirt.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_wool_shirt(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]  --> src/domain/world/prefabs/wool_shirt.rs:9:41
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn spawn_wool_shirt(entity: Entity, world: &mut World, config: Prefab) -> PrefabBuilder {
[INFO] [stdout]   |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `clock`
[INFO] [stdout]   --> src/ui/ai_debug_dialog.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         clock: &Clock,
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_clock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xp_bar`
[INFO] [stdout]   --> src/ui/xp_progress_bar.rs:30:10
[INFO] [stdout]    |
[INFO] [stdout] 30 |     for (xp_bar, mut text, mut bar) in q_bars.iter_mut() {
[INFO] [stdout]    |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_xp_bar`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `can_increase` and `can_decrease` are never used
[INFO] [stdout]   --> src/domain/components/attributes.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl AttributePoints {
[INFO] [stdout]    | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn can_increase(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn can_decrease(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_strength`, `get_dexterity`, `get_constitution`, and `get_intelligence` are never used
[INFO] [stdout]   --> src/domain/components/attributes.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 65 | impl Attributes {
[INFO] [stdout]    | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub fn get_strength(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn get_dexterity(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn get_constitution(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub fn get_intelligence(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `old` is never read
[INFO] [stdout]   --> src/domain/components/bitmask.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct Bitmasker {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 40 |     old: Vec<usize>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `wall` and `water` are never used
[INFO] [stdout]   --> src/domain/components/collider.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | impl Collider {
[INFO] [stdout]    | ------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn wall() -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     pub fn water() -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `aquatic`, `amphibious`, and `flying` are never used
[INFO] [stdout]    --> src/domain/components/collider.rs:92:12
[INFO] [stdout]     |
[INFO] [stdout]  83 | impl MovementCapabilities {
[INFO] [stdout]     | ------------------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub fn aquatic() -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub fn amphibious() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn flying() -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_entities`, `get`, `has_entity`, `has`, `iter_entities`, and `recalculate_flags_at` are never used
[INFO] [stdout]   --> src/domain/components/collider_cache.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl ColliderCache {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn get_entities(&self, x: usize, y: usize) -> Option<&Vec<Entity>> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn get(&self, x: usize, y: usize) -> Option<&Vec<Entity>> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn has_entity(&self, entity: &Entity) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn has(&self, entity: &Entity) -> bool {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn iter_entities(&self) -> impl Iterator<Item = &Vec<Entity>> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn recalculate_flags_at(&mut self, x: usize, y: usize, world: &World) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `has_condition`, `get_conditions_of_type`, `is_empty`, and `clear` are never used
[INFO] [stdout]   --> src/domain/components/conditions.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl ActiveConditions {
[INFO] [stdout]    | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn has_condition(&self, condition_type: &ConditionType) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn get_conditions_of_type(&self, condition_type: &ConditionType) -> Vec<&Condition> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_expired` is never used
[INFO] [stdout]    --> src/domain/components/conditions.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout]  73 | impl Condition {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn is_expired(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_base_duration_ticks` is never used
[INFO] [stdout]    --> src/domain/components/conditions.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl ConditionType {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] 136 |     pub fn get_base_duration_ticks(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `environment`, `item`, and `spell` are never used
[INFO] [stdout]    --> src/domain/components/conditions.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout] 184 | impl ConditionSource {
[INFO] [stdout]     | -------------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn environment() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn item(stable_id: StableId) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 |     pub fn spell(caster: StableId, spell_name: String) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `heal` is never used
[INFO] [stdout]   --> src/domain/components/consumable.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Consumable {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn heal(amount: i32) -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `fists_with_knockback` and `electric_touch` are never used
[INFO] [stdout]    --> src/domain/components/default_melee_attack.rs:78:12
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl DefaultMeleeAttack {
[INFO] [stdout]     | ----------------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  78 |     pub fn fists_with_knockback() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     pub fn electric_touch() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `rifle` are never used
[INFO] [stdout]   --> src/domain/components/default_ranged_attack.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl DefaultRangedAttack {
[INFO] [stdout]    | ------------------------ associated functions in this implementation
[INFO] [stdout] 18 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn rifle() -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `death_audio_key` is never used
[INFO] [stdout]   --> src/domain/components/enemy_type.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl CreatureType {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] 18 |     pub fn death_audio_key(self) -> AudioKey {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_modifier`, `remove_modifier`, and `get_modifier` are never used
[INFO] [stdout]   --> src/domain/components/faction.rs:65:12
[INFO] [stdout]    |
[INFO] [stdout] 57 | impl FactionMember {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn add_modifier(&mut self, name: String, modifier: FactionModifier) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn remove_modifier(&mut self, name: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn get_modifier(&self, name: &str) -> Option<&FactionModifier> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/domain/components/health.rs:21:12
[INFO] [stdout]     |
[INFO] [stdout]  19 | impl Health {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout]  20 |     /// Create Health with specific current values (for loading saved games)
[INFO] [stdout]  21 |     pub fn new_with_current(current: i32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn new_with_current_and_armor(current: i32, current_armor: i32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |     pub fn new(max: i32) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub fn get_current_max(&self, level: &Level, stats: &Stats) -> (i32, i32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn get_percentage(&self, level: &Level, stats: &Stats) -> f32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn get_armor_percentage(&self, stats: &Stats) -> f32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 155 |     pub fn is_dead_dynamic(&self, _level: &Level, _stats: &Stats) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `xp_progress_percentage` is never used
[INFO] [stdout]   --> src/domain/components/level.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Level {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn xp_progress_percentage(&self) -> f32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `remove_equipment_modifiers` is never used
[INFO] [stdout]    --> src/domain/components/stats.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout] 104 | impl StatModifiers {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn remove_equipment_modifiers(&mut self, item_id: u64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `condition` is never used
[INFO] [stdout]    --> src/domain/components/stats.rs:160:12
[INFO] [stdout]     |
[INFO] [stdout] 145 | impl StatModifier {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn condition(value: i32, condition_id: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_melee` and `is_ranged` are never used
[INFO] [stdout]   --> src/domain/components/weapon.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl Weapon {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn is_melee(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn is_ranged(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `applies_to_weapon_type` is never used
[INFO] [stdout]   --> src/domain/components/weapon_modifiers.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl WeaponModifier {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 80 |     pub fn applies_to_weapon_type(&self, weapon_type: WeaponType) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `XP_LVL_INTENSITY` is never used
[INFO] [stdout]  --> src/domain/game_formulas.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | impl GameFormulas {
[INFO] [stdout]   | ----------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 6 |     pub const XP_LVL_INTENSITY: u32 = 10;
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_actor_at` is never used
[INFO] [stdout]    --> src/domain/player.rs:409:4
[INFO] [stdout]     |
[INFO] [stdout] 409 | fn has_actor_at(world_pos: (usize, usize, usize), q_zones: &Query<&Zone>) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `entity` is never read
[INFO] [stdout]   --> src/domain/systems/ai_util.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Actor {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 12 |     pub entity: Entity,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Actor` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Scripted` is never constructed
[INFO] [stdout]  --> src/domain/systems/destruction_system.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum DestructionCause {
[INFO] [stdout]   |          ---------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 9 |     Scripted,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `DestructionCause` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `material_type` is never read
[INFO] [stdout]   --> src/domain/systems/destruction_system.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct EntityDestroyedEvent {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub material_type: Option<MaterialType>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `with_material_type` are never used
[INFO] [stdout]   --> src/domain/systems/destruction_system.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl EntityDestroyedEvent {
[INFO] [stdout]    | ------------------------- associated functions in this implementation
[INFO] [stdout] 21 |     pub fn new(entity: Entity, position: (usize, usize, usize), cause: DestructionCause) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn with_material_type(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Reload` is never constructed
[INFO] [stdout]   --> src/domain/systems/energy_system.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum EnergyActionType {
[INFO] [stdout]    |          ---------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 21 |     Reload,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `EnergyActionType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `with_audio` is never used
[INFO] [stdout]   --> src/domain/systems/explosion_system.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl ExplosionEvent {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn with_audio(mut self, audio: AudioKey) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_relationship` is never used
[INFO] [stdout]   --> src/domain/systems/faction_system.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl FactionRelations {
[INFO] [stdout]    | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn set_relationship(&mut self, faction_a: FactionId, faction_b: FactionId, value: i8) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `are_hostile` is never used
[INFO] [stdout]   --> src/domain/systems/faction_system.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub fn are_hostile(entity_a: Entity, entity_b: Entity, world: &World) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `generate_random` and `roll_rarity_with_bonus` are never used
[INFO] [stdout]   --> src/domain/systems/weapon_generation.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl GeneratedWeapon {
[INFO] [stdout]    | -------------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn generate_random(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     fn roll_rarity_with_bonus(tier_bonus: f32, rand: &mut Rand) -> ItemRarity {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_random_weapon` is never used
[INFO] [stdout]    --> src/domain/systems/weapon_generation.rs:304:8
[INFO] [stdout]     |
[INFO] [stdout] 304 | pub fn generate_random_weapon(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `source_entity` and `source_description` are never read
[INFO] [stdout]   --> src/domain/systems/xp_system.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct XPGainEvent {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub source_entity: Entity,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 21 |     pub source_description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `old_level` and `levels_gained` are never read
[INFO] [stdout]   --> src/domain/systems/xp_system.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct LevelUpEvent {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 26 |     pub entity: Entity,
[INFO] [stdout] 27 |     pub old_level: u32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 28 |     pub new_level: u32,
[INFO] [stdout] 29 |     pub levels_gained: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_collider_flags` and `with_throwable` are never used
[INFO] [stdout]    --> src/domain/world/prefabs/prefab_builder.rs:174:12
[INFO] [stdout]     |
[INFO] [stdout]  77 | impl PrefabBuilder {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 174 |     pub fn with_collider_flags(mut self, flags: crate::domain::ColliderFlags) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 427 |     pub fn with_throwable(mut self, base_range: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Collection` is never constructed
[INFO] [stdout]   --> src/engine/audio.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum AudioSource {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] 16 |     Clip(AudioKey),
[INFO] [stdout] 17 |     Collection(AudioCollection),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AudioSource` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `collection` is never used
[INFO] [stdout]    --> src/engine/audio.rs:223:12
[INFO] [stdout]     |
[INFO] [stdout] 154 | impl Audio {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn collection(&mut self, collection: AudioCollection) -> AudioBuilder {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_frozen` is never used
[INFO] [stdout]   --> src/engine/clock.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Clock {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn is_frozen(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/engine/stable_id.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl StableId {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 22 |     pub fn new(id: u64) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Linear`, `EaseOut`, and `EaseInOut` are never constructed
[INFO] [stdout]   --> src/rendering/particles/core.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub enum SequenceEasing {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 82 |     Linear,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 83 |     EaseIn,
[INFO] [stdout] 84 |     EaseOut,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 85 |     EaseInOut,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SequenceEasing` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `TimedCurve` is never constructed
[INFO] [stdout]    --> src/rendering/particles/core.rs:118:5
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub enum GlyphAnimation {
[INFO] [stdout]     |          -------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 118 |     TimedCurve {
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GlyphAnimation` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `default_explosion` is never used
[INFO] [stdout]   --> src/rendering/particles/particle_effect_id.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl ParticleEffectId {
[INFO] [stdout]    | --------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn default_explosion(radius: f32) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Rectangle` and `Line` are never constructed
[INFO] [stdout]   --> src/rendering/particles/spawn_areas.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum SpawnArea {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 14 |     Rectangle {
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     Line {
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SpawnArea` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Uniform`, `Random`, and `Count` are never constructed
[INFO] [stdout]   --> src/rendering/particles/spawn_areas.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub enum SpawnSpacing {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 42 |     Uniform,    // Even spacing along line
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 43 |     Random,     // Random positions along line
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 44 |     Count(u32), // Specific number of evenly spaced points
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SpawnSpacing` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FormattedLine` is never constructed
[INFO] [stdout]   --> src/rendering/text_wrap.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct FormattedLine {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `break_long_word` is never used
[INFO] [stdout]    --> src/rendering/text_wrap.rs:157:4
[INFO] [stdout]     |
[INFO] [stdout] 157 | fn break_long_word(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_visual_length` is never used
[INFO] [stdout]    --> src/rendering/text_wrap.rs:208:8
[INFO] [stdout]     |
[INFO] [stdout] 208 | pub fn get_visual_length(text: &str) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `carry_formatting_to_next_line` is never used
[INFO] [stdout]    --> src/rendering/text_wrap.rs:324:8
[INFO] [stdout]     |
[INFO] [stdout] 324 | pub fn carry_formatting_to_next_line(previous_line: &str, current_line: &str) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transfer_item_from_player` is never used
[INFO] [stdout]    --> src/states/state_container.rs:107:4
[INFO] [stdout]     |
[INFO] [stdout] 107 | fn transfer_item_from_player(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transfer_item_from_container` is never used
[INFO] [stdout]    --> src/states/state_container.rs:129:4
[INFO] [stdout]     |
[INFO] [stdout] 129 | fn transfer_item_from_container(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_examinable_entity_priority` is never used
[INFO] [stdout]    --> src/states/state_explore.rs:439:4
[INFO] [stdout]     |
[INFO] [stdout] 439 | fn get_examinable_entity_priority(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `open_item_actions` is never read
[INFO] [stdout]   --> src/states/state_inventory.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | struct InventoryCallbacks {
[INFO] [stdout]    |        ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     open_item_actions: SystemId,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `back_to_inventory` is never read
[INFO] [stdout]   --> src/states/state_throw.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | struct ThrowCallbacks {
[INFO] [stdout]    |        -------------- field in this struct
[INFO] [stdout] 37 |     back_to_inventory: SystemId,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `context_data`, `index`, and `parent_list` are never read
[INFO] [stdout]   --> src/ui/activatable.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     ListItem {
[INFO] [stdout]    |     -------- fields in this variant
[INFO] [stdout] ...
[INFO] [stdout] 47 |         context_data: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 48 |         index: usize,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 49 |         parent_list: Entity,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Activatable` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `with_bg` is never used
[INFO] [stdout]   --> src/ui/bar.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Bar {
[INFO] [stdout]    | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn with_bg(mut self, bg: Palette) -> Self {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `parent_dialog` and `order` are never read
[INFO] [stdout]   --> src/ui/dialog.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct DialogContent {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 44 |     pub parent_dialog: Entity,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 45 |     pub order: usize,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DialogContent` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Property` and `Description` are never constructed
[INFO] [stdout]   --> src/ui/dialog.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub enum DialogTextStyle {
[INFO] [stdout]    |          --------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 59 |     Property,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 60 |     Description,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DialogTextStyle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parent_list` is never read
[INFO] [stdout]    --> src/ui/list.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub struct ListItemBg {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] 150 |     pub index: usize,
[INFO] [stdout] 151 |     pub parent_list: Entity,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Multiple` is never constructed
[INFO] [stdout]    --> src/ui/list.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub enum SelectionMode {
[INFO] [stdout]     |          ------------- variant in this enum
[INFO] [stdout] 161 |     Single,   // Only one item can be selected at a time
[INFO] [stdout] 162 |     Multiple, // Multiple items can be selected
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SelectionMode` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parent_list` is never read
[INFO] [stdout]    --> src/ui/list.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 180 | pub struct ListScrollUpIndicator {
[INFO] [stdout]     |            --------------------- field in this struct
[INFO] [stdout] 181 |     pub parent_list: Entity,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parent_list` is never read
[INFO] [stdout]    --> src/ui/list.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub struct ListScrollDownIndicator {
[INFO] [stdout]     |            ----------------------- field in this struct
[INFO] [stdout] 186 |     pub parent_list: Entity,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_xp_display` is never used
[INFO] [stdout]   --> src/ui/xp_progress_bar.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn generate_xp_display(bar: &XPProgressBar, level: &Level) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/engine/audio.rs:219:17
[INFO] [stdout]     |
[INFO] [stdout] 219 |     pub fn clip(&mut self, key: AudioKey) -> AudioBuilder {
[INFO] [stdout]     |                 ^^^^^^^^^                    ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 219 |     pub fn clip(&mut self, key: AudioKey) -> AudioBuilder<'_> {
[INFO] [stdout]     |                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/engine/audio.rs:223:23
[INFO] [stdout]     |
[INFO] [stdout] 223 |     pub fn collection(&mut self, collection: AudioCollection) -> AudioBuilder {
[INFO] [stdout]     |                       ^^^^^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 223 |     pub fn collection(&mut self, collection: AudioCollection) -> AudioBuilder<'_> {
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 12.05s
[INFO] running `Command { std: "docker" "inspect" "be87e81a29b56fc1039837e2abacc4451529f4fea53bf87ba26b63e579ed06c1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "be87e81a29b56fc1039837e2abacc4451529f4fea53bf87ba26b63e579ed06c1", kill_on_drop: false }`
[INFO] [stdout] be87e81a29b56fc1039837e2abacc4451529f4fea53bf87ba26b63e579ed06c1
