[INFO] cloning repository https://github.com/soldierdonkey/soulrend-2
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/soldierdonkey/soulrend-2" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsoldierdonkey%2Fsoulrend-2", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsoldierdonkey%2Fsoulrend-2'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 96f25fc9e1ad6f38c66aec6373a64cdd62ba7d67
[INFO] checking soldierdonkey/soulrend-2 against eca445e5ae4a6679cc27d3a09106ce245e13a5a6 for pr-162478
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsoldierdonkey%2Fsoulrend-2" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/soldierdonkey/soulrend-2
[INFO] finished tweaking git repo https://github.com/soldierdonkey/soulrend-2
[INFO] tweaked toml for git repo https://github.com/soldierdonkey/soulrend-2 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/soldierdonkey/soulrend-2 on toolchain eca445e5ae4a6679cc27d3a09106ce245e13a5a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/soldierdonkey/soulrend-2 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" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: binary `Soulrend-Rust-Edition` should have a kebab-case name
[INFO] [stderr]    |
[INFO] [stderr]  1 | /workspace/builds/worker-6-tc1/source/target/.../Soulrend-Rust-Edition
[INFO] [stderr]    |                                                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::non_kebab_case_bins` is set to `warn` by default
[INFO] [stderr] help: to change the binary name to `soulrend-rust-edition`, convert `package.name`
[INFO] [stderr]   --> Cargo.toml:14:8
[INFO] [stderr]    |
[INFO] [stderr] 14 - name = "Soulrend-Rust-Edition"
[INFO] [stderr] 14 + name = "soulrend-rust-edition"
[INFO] [stderr]    |
[INFO] [stderr] help: to change the binary name to `soulrend-rust-edition`, specify `bin.name`
[INFO] [stderr]   --> Cargo.toml:15:19
[INFO] [stderr]    |
[INFO] [stderr] 15 ~ version = "0.1.0"
[INFO] [stderr] 16 + [[bin]]
[INFO] [stderr] 17 + name = "soulrend-rust-edition"
[INFO] [stderr] 18 + path = "src/main.rs"
[INFO] [stderr]    |
[INFO] [stderr] warning: `Soulrend-Rust-Edition` (manifest) generated 1 warning
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded include_dir v0.7.4
[INFO] [stderr]   Downloaded quad-rand v0.2.3
[INFO] [stderr]   Downloaded include_dir_macros v0.7.4
[INFO] [stderr]   Downloaded macroquad_macro v0.1.8
[INFO] [stderr]   Downloaded objc-rs v0.2.8
[INFO] [stderr]   Downloaded miniquad v0.4.8
[INFO] [stderr]   Downloaded noise v0.9.0
[INFO] [stderr]   Downloaded fontdue v0.9.3
[INFO] [stderr]   Downloaded ndk-sys v0.2.2
[INFO] [stderr]   Downloaded glam v0.27.0
[INFO] [stderr]   Downloaded macroquad v0.4.14
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 2e18939607e90e3dde7447708803a11abb6b2cb1055b0e49994f885ab1bce3f9
[INFO] running `Command { std: "docker" "start" "2e18939607e90e3dde7447708803a11abb6b2cb1055b0e49994f885ab1bce3f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2e18939607e90e3dde7447708803a11abb6b2cb1055b0e49994f885ab1bce3f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2e18939607e90e3dde7447708803a11abb6b2cb1055b0e49994f885ab1bce3f9" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2e18939607e90e3dde7447708803a11abb6b2cb1055b0e49994f885ab1bce3f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2e18939607e90e3dde7447708803a11abb6b2cb1055b0e49994f885ab1bce3f9" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: binary `Soulrend-Rust-Edition` should have a kebab-case name
[INFO] [stderr]    |
[INFO] [stderr]  1 | /opt/rustwide/target/.../Soulrend-Rust-Edition
[INFO] [stderr]    |                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::non_kebab_case_bins` is set to `warn` by default
[INFO] [stderr] help: to change the binary name to `soulrend-rust-edition`, convert `package.name`
[INFO] [stderr]   --> Cargo.toml:14:8
[INFO] [stderr]    |
[INFO] [stderr] 14 - name = "Soulrend-Rust-Edition"
[INFO] [stderr] 14 + name = "soulrend-rust-edition"
[INFO] [stderr]    |
[INFO] [stderr] help: to change the binary name to `soulrend-rust-edition`, specify `bin.name`
[INFO] [stderr]   --> Cargo.toml:15:19
[INFO] [stderr]    |
[INFO] [stderr] 15 ~ version = "0.1.0"
[INFO] [stderr] 16 + [[bin]]
[INFO] [stderr] 17 + name = "soulrend-rust-edition"
[INFO] [stderr] 18 + path = "src/main.rs"
[INFO] [stderr]    |
[INFO] [stderr] warning: `Soulrend-Rust-Edition` (manifest) generated 1 warning
[INFO] [stderr]    Compiling miniquad v0.4.8
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]     Checking ttf-parser v0.21.1
[INFO] [stderr]    Compiling include_dir_macros v0.7.4
[INFO] [stderr]     Checking memchr v2.8.0
[INFO] [stderr]     Checking glam v0.27.0
[INFO] [stderr]    Compiling macroquad_macro v0.1.8
[INFO] [stderr]     Checking quad-rand v0.2.3
[INFO] [stderr]     Checking rand v0.8.6
[INFO] [stderr]     Checking rand_xorshift v0.3.0
[INFO] [stderr]     Checking include_dir v0.7.4
[INFO] [stderr]     Checking serde_json v1.0.150
[INFO] [stderr]     Checking png v0.17.16
[INFO] [stderr]     Checking noise v0.9.0
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]     Checking fontdue v0.9.3
[INFO] [stderr]     Checking macroquad v0.4.14
[INFO] [stderr]     Checking Soulrend-Rust-Edition v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `InGameState`
[INFO] [stdout]  --> src/states/menu/instance_manager.rs:3:32
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::states::{GameState, InGameState};
[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: `crate::states::hills::generate_hills`
[INFO] [stdout]  --> src/states/menu/instance_creator.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::states::hills::generate_hills;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::prelude::*`
[INFO] [stdout]  --> src/states/menu/main_menu.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use macroquad::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GameState` and `InGameState`
[INFO] [stdout]  --> src/states/menu/main_menu.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::states::{GameState, InGameState};
[INFO] [stdout]   |                     ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::runtime::get_mouse_position`
[INFO] [stdout]  --> src/states/menu/helper/screen.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::runtime::get_mouse_position;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Player`
[INFO] [stdout]  --> src/states/menu/helper/screen.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::states::{Player, UiAction, WindowType};
[INFO] [stdout]   |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::widget::*`
[INFO] [stdout]  --> src/states/menu/helper/screen.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use super::widget::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UiAction::SwitchItemWithMouse`
[INFO] [stdout]  --> src/states/menu/helper/widget.rs:4:100
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::{Runtime, assets, runtime::get_mouse_position, states::{GameState::InGame, SlotBinding, UiAction::SwitchItemWithMouse, thr...
[INFO] [stdout]   |                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::math::vec2`
[INFO] [stdout]  --> src/states/menu/helper.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use macroquad::math::vec2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::ArmorSlot`
[INFO] [stdout]  --> src/states/menu/helper.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::states::ArmorSlot;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::Item`
[INFO] [stdout]   --> src/states/menu/helper.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::states::Item;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::texture::Texture2D`
[INFO] [stdout]  --> src/states/player/inventory.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use macroquad::texture::Texture2D;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::replace`
[INFO] [stdout]  --> src/states/player/inventory.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::mem::replace;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::entity::inverse_kinematics::KinematicsData`
[INFO] [stdout]  --> src/states/player.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::states::entity::inverse_kinematics::KinematicsData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::super::tile::TileType`
[INFO] [stdout]  --> src/states/environment/world/scene.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::super::tile::TileType;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::Tile`
[INFO] [stdout]  --> src/states/environment/world/terrain/hills.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::states::Tile;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::environment::tile::TileType`
[INFO] [stdout]  --> src/states/environment/world/terrain/hills.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::states::environment::tile::TileType;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::hills::*`
[INFO] [stdout]  --> src/states/environment/world/terrain.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use self::hills::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::Tile`
[INFO] [stdout]  --> src/states/environment/tile/tiletype.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::states::Tile;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::runtime::Runtime`
[INFO] [stdout]  --> src/states/in_game.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::runtime::Runtime;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GameState`
[INFO] [stdout]  --> src/states/in_game.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::states::{GameState, InGameState};
[INFO] [stdout]   |                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::movement::Direction`
[INFO] [stdout]  --> src/states/in_game.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::movement::Direction;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::render::player::*`
[INFO] [stdout]  --> src/states/in_game.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::render::player::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::in_game::*`
[INFO] [stdout]   --> src/states.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use self::in_game::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::environment::tile::*`
[INFO] [stdout]  --> src/states/movement.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::states::environment::tile::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::environment::tile::*`
[INFO] [stdout]  --> src/states/movement/player_movement.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::states::environment::tile::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::movement::*`
[INFO] [stdout]   --> src/states.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use self::movement::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::math::Rect`
[INFO] [stdout]  --> src/states/items.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use macroquad::math::Rect;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::helper`
[INFO] [stdout]  --> src/states/items.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::helper;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Affix` and `items::rarity::Rarity`
[INFO] [stdout]  --> src/states/items/weapons.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::states::{Affix, AffixList, items::rarity::Rarity};
[INFO] [stdout]   |                     ^^^^^             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::prelude::Vec2`
[INFO] [stdout]  --> src/states/entity.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use macroquad::prelude::Vec2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::math::Vec2`
[INFO] [stdout]  --> src/states/entity/inverse_kinematics.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use macroquad::math::Vec2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WeaponMoveset` and `WeaponType`
[INFO] [stdout]  --> src/states/entity/inverse_kinematics.rs:4:33
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::states::{HeldWeapon, WeaponMoveset, WeaponType};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::helper::*`
[INFO] [stdout]   --> src/main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use self::helper::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::render`
[INFO] [stdout]  --> src/render/scene.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::render;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/assets.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::{Mutex, OnceLock};
[INFO] [stdout]   |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UiSliceConfig`
[INFO] [stdout]   --> src/assets.rs:10:31
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::states::{TileType, UiSliceConfig, WindowType};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `InGameState`
[INFO] [stdout]  --> src/states/menu/instance_manager.rs:3:32
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::states::{GameState, InGameState};
[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: `crate::states::hills::generate_hills`
[INFO] [stdout]  --> src/states/menu/instance_creator.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::states::hills::generate_hills;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::prelude::*`
[INFO] [stdout]  --> src/states/menu/main_menu.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use macroquad::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GameState` and `InGameState`
[INFO] [stdout]  --> src/states/menu/main_menu.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::states::{GameState, InGameState};
[INFO] [stdout]   |                     ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::runtime::get_mouse_position`
[INFO] [stdout]  --> src/states/menu/helper/screen.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::runtime::get_mouse_position;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Player`
[INFO] [stdout]  --> src/states/menu/helper/screen.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::states::{Player, UiAction, WindowType};
[INFO] [stdout]   |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::widget::*`
[INFO] [stdout]  --> src/states/menu/helper/screen.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use super::widget::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UiAction::SwitchItemWithMouse`
[INFO] [stdout]  --> src/states/menu/helper/widget.rs:4:100
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::{Runtime, assets, runtime::get_mouse_position, states::{GameState::InGame, SlotBinding, UiAction::SwitchItemWithMouse, thr...
[INFO] [stdout]   |                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::math::vec2`
[INFO] [stdout]  --> src/states/menu/helper.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use macroquad::math::vec2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::ArmorSlot`
[INFO] [stdout]  --> src/states/menu/helper.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::states::ArmorSlot;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::Item`
[INFO] [stdout]   --> src/states/menu/helper.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::states::Item;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::texture::Texture2D`
[INFO] [stdout]  --> src/states/player/inventory.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use macroquad::texture::Texture2D;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::replace`
[INFO] [stdout]  --> src/states/player/inventory.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::mem::replace;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::entity::inverse_kinematics::KinematicsData`
[INFO] [stdout]  --> src/states/player.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::states::entity::inverse_kinematics::KinematicsData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::super::tile::TileType`
[INFO] [stdout]  --> src/states/environment/world/scene.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::super::tile::TileType;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::Tile`
[INFO] [stdout]  --> src/states/environment/world/terrain/hills.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::states::Tile;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::environment::tile::TileType`
[INFO] [stdout]  --> src/states/environment/world/terrain/hills.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::states::environment::tile::TileType;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::hills::*`
[INFO] [stdout]  --> src/states/environment/world/terrain.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use self::hills::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::Tile`
[INFO] [stdout]  --> src/states/environment/tile/tiletype.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::states::Tile;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::runtime::Runtime`
[INFO] [stdout]  --> src/states/in_game.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::runtime::Runtime;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GameState`
[INFO] [stdout]  --> src/states/in_game.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::states::{GameState, InGameState};
[INFO] [stdout]   |                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::movement::Direction`
[INFO] [stdout]  --> src/states/in_game.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::movement::Direction;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::render::player::*`
[INFO] [stdout]  --> src/states/in_game.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::render::player::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::in_game::*`
[INFO] [stdout]   --> src/states.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use self::in_game::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::environment::tile::*`
[INFO] [stdout]  --> src/states/movement.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::states::environment::tile::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::states::environment::tile::*`
[INFO] [stdout]  --> src/states/movement/player_movement.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::states::environment::tile::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::movement::*`
[INFO] [stdout]   --> src/states.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use self::movement::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::math::Rect`
[INFO] [stdout]  --> src/states/items.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use macroquad::math::Rect;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::helper`
[INFO] [stdout]  --> src/states/items.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::helper;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Affix` and `items::rarity::Rarity`
[INFO] [stdout]  --> src/states/items/weapons.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::states::{Affix, AffixList, items::rarity::Rarity};
[INFO] [stdout]   |                     ^^^^^             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::prelude::Vec2`
[INFO] [stdout]  --> src/states/entity.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use macroquad::prelude::Vec2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::math::Vec2`
[INFO] [stdout]  --> src/states/entity/inverse_kinematics.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use macroquad::math::Vec2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WeaponMoveset` and `WeaponType`
[INFO] [stdout]  --> src/states/entity/inverse_kinematics.rs:4:33
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::states::{HeldWeapon, WeaponMoveset, WeaponType};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::helper::*`
[INFO] [stdout]   --> src/main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use self::helper::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::render`
[INFO] [stdout]  --> src/render/scene.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::render;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/assets.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::{Mutex, OnceLock};
[INFO] [stdout]   |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UiSliceConfig`
[INFO] [stdout]   --> src/assets.rs:10:31
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::states::{TileType, UiSliceConfig, WindowType};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item_entry`
[INFO] [stdout]   --> src/states/menu/helper/screen.rs:78:41
[INFO] [stdout]    |
[INFO] [stdout] 78 | ...                   if let Some(item_entry) = assets::items::get(&item.id) {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_item_entry`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item_entry`
[INFO] [stdout]   --> src/states/menu/helper/screen.rs:78:41
[INFO] [stdout]    |
[INFO] [stdout] 78 | ...                   if let Some(item_entry) = assets::items::get(&item.id) {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_item_entry`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `amror_type`
[INFO] [stdout]   --> src/states/items.rs:88:29
[INFO] [stdout]    |
[INFO] [stdout] 88 |             ItemType::Armor(amror_type) => {
[INFO] [stdout]    |                             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_amror_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `amror_type`
[INFO] [stdout]   --> src/states/items.rs:88:29
[INFO] [stdout]    |
[INFO] [stdout] 88 |             ItemType::Armor(amror_type) => {
[INFO] [stdout]    |                             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_amror_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `screen_x`
[INFO] [stdout]   --> src/render/player.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let screen_x = (((player_x - screen_left) * crate::TILE_SIZE) - waist_offset_x).round();
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_screen_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `screen_y`
[INFO] [stdout]   --> src/render/player.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let screen_y = (((player_y - screen_top) * crate::TILE_SIZE) - waist_offset_y).round();
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_screen_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `camera_offset`
[INFO] [stdout]   --> src/render/player.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let camera_offset = Vec2::new(screen_left, screen_top);
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera_offset`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `screen_x`
[INFO] [stdout]   --> src/render/player.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let screen_x = (((player_x - screen_left) * crate::TILE_SIZE) - waist_offset_x).round();
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_screen_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `screen_y`
[INFO] [stdout]   --> src/render/player.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let screen_y = (((player_y - screen_top) * crate::TILE_SIZE) - waist_offset_y).round();
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_screen_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `camera_offset`
[INFO] [stdout]   --> src/render/player.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let camera_offset = Vec2::new(screen_left, screen_top);
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera_offset`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_rel_rect` is never used
[INFO] [stdout]   --> src/states/menu/helper.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | impl UiSliceConfig {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn get_rel_rect(&self, coordinates: Vec2) -> Rect {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/states/menu/helper.rs:68:14
[INFO] [stdout]    |
[INFO] [stdout] 68 |     OpenMenu(String),
[INFO] [stdout]    |     -------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UiAction` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 68 -     OpenMenu(String),
[INFO] [stdout] 68 +     OpenMenu(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `attributes`, and `stats` are never read
[INFO] [stdout]   --> src/states/player.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct Player {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 23 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 24 |     pub attributes: Attributes,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 25 |     pub stats: Stats,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Player` 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 `hotbar_selected` is never read
[INFO] [stdout]  --> src/states/player/inventory.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Inventory {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] 8 |     pub hotbar: [Option<Item>; 9], // 9 total slots
[INFO] [stdout] 9 |     pub hotbar_selected: usize, // row
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Inventory` 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 `get_selected_hotbar_item` is never used
[INFO] [stdout]   --> src/states/player/inventory.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Inventory {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn get_selected_hotbar_item(&self) -> &Option<Item> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `max_hp`, `max_mp`, `max_stamina`, and `stamina_regen` are never read
[INFO] [stdout]  --> src/states/player/attributes.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Attributes {
[INFO] [stdout]   |            ---------- fields in this struct
[INFO] [stdout] 5 |     pub max_hp: f32,
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 6 |     pub max_mp: f32,
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 7 |     pub max_stamina: f32,
[INFO] [stdout]   |         ^^^^^^^^^^^
[INFO] [stdout] 8 |     pub stamina_regen: f32,
[INFO] [stdout]   |         ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Attributes` 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: fields `hp`, `mp`, and `stamina` are never read
[INFO] [stdout]  --> src/states/player/stats.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Stats {
[INFO] [stdout]   |            ----- fields in this struct
[INFO] [stdout] 7 |     pub hp: f32,
[INFO] [stdout]   |         ^^
[INFO] [stdout] 8 |     pub mp: f32,
[INFO] [stdout]   |         ^^
[INFO] [stdout] 9 |     pub stamina : f32,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Stats` 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 `update` is never used
[INFO] [stdout]   --> src/states/player/stats.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Stats {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub fn update(&mut self, delta_time: f32, attributes: &Attributes) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/states/environment.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Environment {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 10 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `description` are never read
[INFO] [stdout]   --> src/states/environment/world.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct World {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout]  9 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 10 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `scene_id`, `name`, `description`, and `starts` are never read
[INFO] [stdout]   --> src/states/environment/world/scene.rs:7:9
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct Scene {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout]  7 |     pub scene_id: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]  8 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]  9 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 10 |     pub starts: Vec<(u32, u32)>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_start` is never used
[INFO] [stdout]   --> src/states/environment/world/scene.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Scene {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn add_start(&mut self, position: (u32, u32)) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `handle_collisions` is never used
[INFO] [stdout]   --> src/states/environment/world/scene.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl SceneMap {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 80 |     pub fn handle_collisions(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Hills` is never constructed
[INFO] [stdout]  --> src/states/environment/world/terrain/hills.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum HillType {
[INFO] [stdout]   |          -------- variant in this enum
[INFO] [stdout] 7 |     Plains,
[INFO] [stdout] 8 |     Hills
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bounds` is never read
[INFO] [stdout]  --> src/states/environment/tile/tiledata.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct TileData {
[INFO] [stdout]   |            -------- field in this struct
[INFO] [stdout] 5 |     pub bounds: Rect,
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `TileData` 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: fields `acceleration` and `kinematics_id` are never read
[INFO] [stdout]   --> src/states/movement.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Movement {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub acceleration: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub kinematics_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Movement` 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 `item_data` is never read
[INFO] [stdout]   --> src/states/items.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct Item {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 22 |     pub id: String,
[INFO] [stdout] 23 |     pub item_data: ItemData,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Item` 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 `get_sprite` is never used
[INFO] [stdout]   --> src/states/items.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Item {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn get_sprite(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `rarity` is never read
[INFO] [stdout]   --> src/states/items.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct ItemRegistryData {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub rarity: Rarity,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ItemRegistryData` 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 `0` is never read
[INFO] [stdout]   --> src/states/items.rs:66:12
[INFO] [stdout]    |
[INFO] [stdout] 66 |     Weapon(WeaponData),
[INFO] [stdout]    |     ------ ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ItemData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 66 -     Weapon(WeaponData),
[INFO] [stdout] 66 +     Weapon(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_next_rarity` is never used
[INFO] [stdout]   --> src/states/items/rarity.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn get_next_rarity(current: Rarity) -> Option<Rarity> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `affixes` is never read
[INFO] [stdout]  --> src/states/items/weapons.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct WeaponData {
[INFO] [stdout]   |            ---------- field in this struct
[INFO] [stdout] 7 |     pub affixes: AffixList
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `WeaponData` 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 `0` is never read
[INFO] [stdout]   --> src/states/items/weapons.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |     OneHand(String),
[INFO] [stdout]    |     ------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HeldWeapon` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 12 -     OneHand(String),
[INFO] [stdout] 12 +     OneHand(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/states/items/weapons.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 |     TwoHand(String),
[INFO] [stdout]    |     ------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HeldWeapon` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 13 -     TwoHand(String),
[INFO] [stdout] 13 +     TwoHand(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/states/items/weapons.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout] 14 |     DualWield(String, String),
[INFO] [stdout]    |     --------- ^^^^^^  ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HeldWeapon` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 14 -     DualWield(String, String),
[INFO] [stdout] 14 +     DualWield((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sprite` and `moveset` are never read
[INFO] [stdout]   --> src/states/items/weapons.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct WeaponType {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 19 |     pub sprite: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub moveset: String // Lookup for ID
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WeaponType` 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 `WeaponMoveset` is never constructed
[INFO] [stdout]   --> src/states/items/weapons.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct WeaponMoveset {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `WeaponMove` is never used
[INFO] [stdout]   --> src/states/items/weapons.rs:33:10
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub enum WeaponMove {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WeaponMoveData` is never constructed
[INFO] [stdout]   --> src/states/items/weapons.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct WeaponMoveData {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `defense`, `weight`, `slot`, `rarity`, and `affixes` are never read
[INFO] [stdout]   --> src/states/items/armor.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct ArmorType {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout]  8 |     pub defense: f32,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]  9 |     pub weight: f32,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 10 |     pub slot: ArmorSlot,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 11 |     pub rarity: Rarity,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 12 |     pub affixes: AffixList
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ArmorType` 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 `get_index` is never used
[INFO] [stdout]   --> src/states/items/armor.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl ArmorType {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 15 |     pub fn get_index(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `affix_list` is never read
[INFO] [stdout]  --> src/states/items/affixes.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct AffixList {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] 6 |     affix_list: Vec<Affix> //What affixes are in the list.
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `AffixList` 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 `kinematics` is never read
[INFO] [stdout]   --> src/states/entity.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Creature {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub kinematics: KinematicsData,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Creature` 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 `update` is never used
[INFO] [stdout]   --> src/states/entity.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Creature {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn update(&mut self, actions: &crate::states::player::controls::Actions, scene_map: &crate::states::environment::scene::Scen...
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `torso`, `leg_set`, `arm_pairs`, and `other_limbs` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct KinematicsRegistryData {
[INFO] [stdout]    |            ---------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub torso: String, //TorsoRegistryData
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 22 |     pub leg_set: String, //LegSetRegistryData,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 23 |     pub arm_pairs: Vec<String>, //ArmPairRegistryData,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 24 |     pub other_limbs: Vec<String>, //LimbRegistryData
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `KinematicsRegistryData` 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: fields `width`, `height`, `vertical_offset`, and `sprite` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct TorsoRegistryData {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] 29 |     width: f32, // Fraction of total bounding box
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 30 |     height: f32, // Fraction of total bounding box
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 31 |     vertical_offset: f32, // Fraction of total bounding box: 0.5 means centered around very top, -0.5 means centered around very bottom
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 32 |     sprite: String
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TorsoRegistryData` 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: fields `legs`, `walk_speed`, and `friction` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct LegSetRegistryData {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] 37 |     legs: Vec<String>, //LimbRegistryData
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 38 |     walk_speed: f32, // how many seconds per one leg switch.
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 39 |     friction: Vec<f32> // normalized friction of leg, used for leg-drag walk animations.
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LegSetRegistryData` 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: fields `arms` and `weapon` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct ArmPairRegistryData {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 44 |     arms: (String, String), //(LimbRegistryData, LimbRegistryData),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 45 |     weapon: HeldWeapon,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ArmPairRegistryData` 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: fields `connection_point`, `upper`, `lower`, `connection`, and `bend` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub struct LimbRegistryData {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 50 |     connection_point: (f32, f32), // connection as a fraction of total hitbox (0.5 0.5 is dead center)
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 51 |     upper: String, //SegmentRegistryData, // closest to body,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 52 |     lower: String, //SegmentRegistryData, // forearm/shin
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 53 |     connection: String, //JointRegistryData, //hand/foot
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 54 |     bend: String, //JointRegistryData //elbow/knee
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LimbRegistryData` 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: fields `length`, `width`, `weight`, and `sprite` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct SegmentRegistryData {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 60 |     length: f32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 61 |     width: f32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 62 |     weight: f32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 63 |     sprite: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SegmentRegistryData` 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: fields `length`, `width`, `weight`, `sprite`, and `balance` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:68:5
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub struct JointRegistryData {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] 68 |     length: f32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 69 |     width: f32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 70 |     weight: f32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 71 |     sprite: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 72 |     balance: JointBalance
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `JointRegistryData` 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: fields `leg_set`, `arm_pairs`, and `other_limbs` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:95:9
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub struct KinematicsData {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 95 |     pub leg_set: LegSet,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 96 |     pub arm_pairs: Vec<ArmPair>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 97 |     pub other_limbs: Vec<Limb>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `KinematicsData` 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: fields `legs`, `current_leg`, and `time_until_next_leg` are never read
[INFO] [stdout]    --> src/states/entity/inverse_kinematics.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct LegSet {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 102 |     legs: Vec<Limb>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 103 |     current_leg: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 104 |     time_until_next_leg: f32
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LegSet` 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 `arms` is never read
[INFO] [stdout]    --> src/states/entity/inverse_kinematics.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub struct ArmPair {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] 109 |     arms: (Limb, Limb),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ArmPair` 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: fields `upper`, `lower`, `connection`, and `bend` are never read
[INFO] [stdout]    --> src/states/entity/inverse_kinematics.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub struct Limb {
[INFO] [stdout]     |            ---- fields in this struct
[INFO] [stdout] 114 |     upper: Segment, // closest to body,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 115 |     lower: Segment, // forearm/shin
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 116 |     connection: Joint, //hand/foot
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 117 |     bend: Joint //elbow/knee
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Limb` 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: fields `registry_data` and `angle` are never read
[INFO] [stdout]    --> src/states/entity/inverse_kinematics.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub struct Segment {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 123 |     registry_data: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 124 |     angle: f32
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Segment` 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: fields `registry_data` and `angle` are never read
[INFO] [stdout]    --> src/states/entity/inverse_kinematics.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub struct Joint {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] 130 |     registry_data: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 131 |     angle: f32
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Joint` 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: function `deserialize_vec2_array` is never used
[INFO] [stdout]   --> src/helper.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn deserialize_vec2_array<'de, D>(deserializer: D) -> Result<Vec<Vec2>, D::Error>
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/runtime.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Inputs {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 20 |     pub fn new() -> Self{
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/assets.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub struct TileRegistryData {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 98 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TileRegistryData` 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: fields `volume` and `pitch_variance` are never read
[INFO] [stdout]    --> src/assets.rs:104:9
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub struct SoundRegistryData {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 104 |     pub volume: f32,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 105 |     pub pitch_variance: f32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SoundRegistryData` 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: fields `animation_speed` and `combo_chains` are never read
[INFO] [stdout]    --> src/assets.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub struct MovesetRegistryData {
[INFO] [stdout]     |            ------------------- fields in this struct
[INFO] [stdout] 110 |     pub animation_speed: f32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 111 |     pub combo_chains: Vec<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MovesetRegistryData` 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: function `get` is never used
[INFO] [stdout]    --> src/assets.rs:163:24
[INFO] [stdout]     |
[INFO] [stdout] 163 |                   pub fn get(key: &str) -> Option<&$asset_type> {
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 344 | / declare_registries! {
[INFO] [stdout] 345 | |     custom_assets: {
[INFO] [stdout] 346 | |         sprites: Texture2D => {
[INFO] [stdout] 347 | |             static: SPRITE_REGISTRY,
[INFO] [stdout] ...   |
[INFO] [stdout] 497 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `declare_registries` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_similar` is never used
[INFO] [stdout]    --> src/assets.rs:166:24
[INFO] [stdout]     |
[INFO] [stdout] 166 |                   pub fn find_similar(key: &str) -> Vec<String> { $asset_static.find_similar(key, 3) }
[INFO] [stdout]     |                          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 344 | / declare_registries! {
[INFO] [stdout] 345 | |     custom_assets: {
[INFO] [stdout] 346 | |         sprites: Texture2D => {
[INFO] [stdout] 347 | |             static: SPRITE_REGISTRY,
[INFO] [stdout] ...   |
[INFO] [stdout] 497 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `declare_registries` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get` is never used
[INFO] [stdout]    --> src/assets.rs:172:24
[INFO] [stdout]     |
[INFO] [stdout] 172 |                   pub fn get(key: &str) -> Option<&$data_type> {
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 344 | / declare_registries! {
[INFO] [stdout] 345 | |     custom_assets: {
[INFO] [stdout] 346 | |         sprites: Texture2D => {
[INFO] [stdout] 347 | |             static: SPRITE_REGISTRY,
[INFO] [stdout] ...   |
[INFO] [stdout] 497 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `declare_registries` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_similar` is never used
[INFO] [stdout]    --> src/assets.rs:175:24
[INFO] [stdout]     |
[INFO] [stdout] 175 |                   pub fn find_similar(key: &str) -> Vec<String> { $data_static.find_similar(key, 3) }
[INFO] [stdout]     |                          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 344 | / declare_registries! {
[INFO] [stdout] 345 | |     custom_assets: {
[INFO] [stdout] 346 | |         sprites: Texture2D => {
[INFO] [stdout] 347 | |             static: SPRITE_REGISTRY,
[INFO] [stdout] ...   |
[INFO] [stdout] 497 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `declare_registries` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_rel_rect` is never used
[INFO] [stdout]   --> src/states/menu/helper.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | impl UiSliceConfig {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn get_rel_rect(&self, coordinates: Vec2) -> Rect {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/states/menu/helper.rs:68:14
[INFO] [stdout]    |
[INFO] [stdout] 68 |     OpenMenu(String),
[INFO] [stdout]    |     -------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UiAction` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 68 -     OpenMenu(String),
[INFO] [stdout] 68 +     OpenMenu(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `attributes`, and `stats` are never read
[INFO] [stdout]   --> src/states/player.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct Player {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 23 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 24 |     pub attributes: Attributes,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 25 |     pub stats: Stats,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Player` 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 `hotbar_selected` is never read
[INFO] [stdout]  --> src/states/player/inventory.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Inventory {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] 8 |     pub hotbar: [Option<Item>; 9], // 9 total slots
[INFO] [stdout] 9 |     pub hotbar_selected: usize, // row
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Inventory` 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 `get_selected_hotbar_item` is never used
[INFO] [stdout]   --> src/states/player/inventory.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Inventory {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn get_selected_hotbar_item(&self) -> &Option<Item> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `max_hp`, `max_mp`, `max_stamina`, and `stamina_regen` are never read
[INFO] [stdout]  --> src/states/player/attributes.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Attributes {
[INFO] [stdout]   |            ---------- fields in this struct
[INFO] [stdout] 5 |     pub max_hp: f32,
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 6 |     pub max_mp: f32,
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 7 |     pub max_stamina: f32,
[INFO] [stdout]   |         ^^^^^^^^^^^
[INFO] [stdout] 8 |     pub stamina_regen: f32,
[INFO] [stdout]   |         ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Attributes` 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: fields `hp`, `mp`, and `stamina` are never read
[INFO] [stdout]  --> src/states/player/stats.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Stats {
[INFO] [stdout]   |            ----- fields in this struct
[INFO] [stdout] 7 |     pub hp: f32,
[INFO] [stdout]   |         ^^
[INFO] [stdout] 8 |     pub mp: f32,
[INFO] [stdout]   |         ^^
[INFO] [stdout] 9 |     pub stamina : f32,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Stats` 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 `update` is never used
[INFO] [stdout]   --> src/states/player/stats.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Stats {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub fn update(&mut self, delta_time: f32, attributes: &Attributes) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/states/environment.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Environment {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 10 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `description` are never read
[INFO] [stdout]   --> src/states/environment/world.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct World {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout]  9 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 10 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `scene_id`, `name`, `description`, and `starts` are never read
[INFO] [stdout]   --> src/states/environment/world/scene.rs:7:9
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct Scene {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout]  7 |     pub scene_id: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]  8 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]  9 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 10 |     pub starts: Vec<(u32, u32)>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_start` is never used
[INFO] [stdout]   --> src/states/environment/world/scene.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Scene {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn add_start(&mut self, position: (u32, u32)) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `handle_collisions` is never used
[INFO] [stdout]   --> src/states/environment/world/scene.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl SceneMap {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 80 |     pub fn handle_collisions(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Hills` is never constructed
[INFO] [stdout]  --> src/states/environment/world/terrain/hills.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum HillType {
[INFO] [stdout]   |          -------- variant in this enum
[INFO] [stdout] 7 |     Plains,
[INFO] [stdout] 8 |     Hills
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bounds` is never read
[INFO] [stdout]  --> src/states/environment/tile/tiledata.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct TileData {
[INFO] [stdout]   |            -------- field in this struct
[INFO] [stdout] 5 |     pub bounds: Rect,
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `TileData` 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: fields `acceleration` and `kinematics_id` are never read
[INFO] [stdout]   --> src/states/movement.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Movement {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub acceleration: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub kinematics_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Movement` 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 `item_data` is never read
[INFO] [stdout]   --> src/states/items.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct Item {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 22 |     pub id: String,
[INFO] [stdout] 23 |     pub item_data: ItemData,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Item` 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 `get_sprite` is never used
[INFO] [stdout]   --> src/states/items.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Item {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn get_sprite(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `rarity` is never read
[INFO] [stdout]   --> src/states/items.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct ItemRegistryData {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub rarity: Rarity,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ItemRegistryData` 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 `0` is never read
[INFO] [stdout]   --> src/states/items.rs:66:12
[INFO] [stdout]    |
[INFO] [stdout] 66 |     Weapon(WeaponData),
[INFO] [stdout]    |     ------ ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ItemData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 66 -     Weapon(WeaponData),
[INFO] [stdout] 66 +     Weapon(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_next_rarity` is never used
[INFO] [stdout]   --> src/states/items/rarity.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn get_next_rarity(current: Rarity) -> Option<Rarity> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `affixes` is never read
[INFO] [stdout]  --> src/states/items/weapons.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct WeaponData {
[INFO] [stdout]   |            ---------- field in this struct
[INFO] [stdout] 7 |     pub affixes: AffixList
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `WeaponData` 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 `0` is never read
[INFO] [stdout]   --> src/states/items/weapons.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |     OneHand(String),
[INFO] [stdout]    |     ------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HeldWeapon` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 12 -     OneHand(String),
[INFO] [stdout] 12 +     OneHand(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/states/items/weapons.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 |     TwoHand(String),
[INFO] [stdout]    |     ------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HeldWeapon` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 13 -     TwoHand(String),
[INFO] [stdout] 13 +     TwoHand(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/states/items/weapons.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout] 14 |     DualWield(String, String),
[INFO] [stdout]    |     --------- ^^^^^^  ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HeldWeapon` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 14 -     DualWield(String, String),
[INFO] [stdout] 14 +     DualWield((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sprite` and `moveset` are never read
[INFO] [stdout]   --> src/states/items/weapons.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct WeaponType {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 19 |     pub sprite: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub moveset: String // Lookup for ID
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WeaponType` 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 `WeaponMoveset` is never constructed
[INFO] [stdout]   --> src/states/items/weapons.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct WeaponMoveset {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `WeaponMove` is never used
[INFO] [stdout]   --> src/states/items/weapons.rs:33:10
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub enum WeaponMove {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WeaponMoveData` is never constructed
[INFO] [stdout]   --> src/states/items/weapons.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct WeaponMoveData {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `defense`, `weight`, `slot`, `rarity`, and `affixes` are never read
[INFO] [stdout]   --> src/states/items/armor.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct ArmorType {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout]  8 |     pub defense: f32,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]  9 |     pub weight: f32,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 10 |     pub slot: ArmorSlot,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 11 |     pub rarity: Rarity,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 12 |     pub affixes: AffixList
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ArmorType` 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 `get_index` is never used
[INFO] [stdout]   --> src/states/items/armor.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl ArmorType {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 15 |     pub fn get_index(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `affix_list` is never read
[INFO] [stdout]  --> src/states/items/affixes.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct AffixList {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] 6 |     affix_list: Vec<Affix> //What affixes are in the list.
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `AffixList` 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 `kinematics` is never read
[INFO] [stdout]   --> src/states/entity.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Creature {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub kinematics: KinematicsData,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Creature` 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 `update` is never used
[INFO] [stdout]   --> src/states/entity.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Creature {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn update(&mut self, actions: &crate::states::player::controls::Actions, scene_map: &crate::states::environment::scene::Scen...
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `torso`, `leg_set`, `arm_pairs`, and `other_limbs` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct KinematicsRegistryData {
[INFO] [stdout]    |            ---------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub torso: String, //TorsoRegistryData
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 22 |     pub leg_set: String, //LegSetRegistryData,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 23 |     pub arm_pairs: Vec<String>, //ArmPairRegistryData,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 24 |     pub other_limbs: Vec<String>, //LimbRegistryData
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `KinematicsRegistryData` 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: fields `width`, `height`, `vertical_offset`, and `sprite` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct TorsoRegistryData {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] 29 |     width: f32, // Fraction of total bounding box
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 30 |     height: f32, // Fraction of total bounding box
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 31 |     vertical_offset: f32, // Fraction of total bounding box: 0.5 means centered around very top, -0.5 means centered around very bottom
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 32 |     sprite: String
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TorsoRegistryData` 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: fields `legs`, `walk_speed`, and `friction` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct LegSetRegistryData {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] 37 |     legs: Vec<String>, //LimbRegistryData
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 38 |     walk_speed: f32, // how many seconds per one leg switch.
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 39 |     friction: Vec<f32> // normalized friction of leg, used for leg-drag walk animations.
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LegSetRegistryData` 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: fields `arms` and `weapon` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct ArmPairRegistryData {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 44 |     arms: (String, String), //(LimbRegistryData, LimbRegistryData),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 45 |     weapon: HeldWeapon,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ArmPairRegistryData` 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: fields `connection_point`, `upper`, `lower`, `connection`, and `bend` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub struct LimbRegistryData {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 50 |     connection_point: (f32, f32), // connection as a fraction of total hitbox (0.5 0.5 is dead center)
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 51 |     upper: String, //SegmentRegistryData, // closest to body,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 52 |     lower: String, //SegmentRegistryData, // forearm/shin
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 53 |     connection: String, //JointRegistryData, //hand/foot
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 54 |     bend: String, //JointRegistryData //elbow/knee
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LimbRegistryData` 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: fields `length`, `width`, `weight`, and `sprite` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct SegmentRegistryData {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 60 |     length: f32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 61 |     width: f32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 62 |     weight: f32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 63 |     sprite: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SegmentRegistryData` 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: fields `length`, `width`, `weight`, `sprite`, and `balance` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:68:5
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub struct JointRegistryData {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] 68 |     length: f32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 69 |     width: f32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 70 |     weight: f32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 71 |     sprite: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 72 |     balance: JointBalance
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `JointRegistryData` 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: fields `leg_set`, `arm_pairs`, and `other_limbs` are never read
[INFO] [stdout]   --> src/states/entity/inverse_kinematics.rs:95:9
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub struct KinematicsData {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 95 |     pub leg_set: LegSet,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 96 |     pub arm_pairs: Vec<ArmPair>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 97 |     pub other_limbs: Vec<Limb>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `KinematicsData` 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: fields `legs`, `current_leg`, and `time_until_next_leg` are never read
[INFO] [stdout]    --> src/states/entity/inverse_kinematics.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct LegSet {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 102 |     legs: Vec<Limb>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 103 |     current_leg: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 104 |     time_until_next_leg: f32
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LegSet` 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 `arms` is never read
[INFO] [stdout]    --> src/states/entity/inverse_kinematics.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub struct ArmPair {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] 109 |     arms: (Limb, Limb),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ArmPair` 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: fields `upper`, `lower`, `connection`, and `bend` are never read
[INFO] [stdout]    --> src/states/entity/inverse_kinematics.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub struct Limb {
[INFO] [stdout]     |            ---- fields in this struct
[INFO] [stdout] 114 |     upper: Segment, // closest to body,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 115 |     lower: Segment, // forearm/shin
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 116 |     connection: Joint, //hand/foot
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 117 |     bend: Joint //elbow/knee
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Limb` 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: fields `registry_data` and `angle` are never read
[INFO] [stdout]    --> src/states/entity/inverse_kinematics.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub struct Segment {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 123 |     registry_data: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 124 |     angle: f32
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Segment` 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: fields `registry_data` and `angle` are never read
[INFO] [stdout]    --> src/states/entity/inverse_kinematics.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub struct Joint {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] 130 |     registry_data: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 131 |     angle: f32
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Joint` 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: function `deserialize_vec2_array` is never used
[INFO] [stdout]   --> src/helper.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn deserialize_vec2_array<'de, D>(deserializer: D) -> Result<Vec<Vec2>, D::Error>
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/runtime.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Inputs {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 20 |     pub fn new() -> Self{
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/assets.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub struct TileRegistryData {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 98 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TileRegistryData` 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: fields `volume` and `pitch_variance` are never read
[INFO] [stdout]    --> src/assets.rs:104:9
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub struct SoundRegistryData {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 104 |     pub volume: f32,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 105 |     pub pitch_variance: f32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SoundRegistryData` 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: fields `animation_speed` and `combo_chains` are never read
[INFO] [stdout]    --> src/assets.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub struct MovesetRegistryData {
[INFO] [stdout]     |            ------------------- fields in this struct
[INFO] [stdout] 110 |     pub animation_speed: f32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 111 |     pub combo_chains: Vec<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MovesetRegistryData` 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: function `get` is never used
[INFO] [stdout]    --> src/assets.rs:163:24
[INFO] [stdout]     |
[INFO] [stdout] 163 |                   pub fn get(key: &str) -> Option<&$asset_type> {
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 344 | / declare_registries! {
[INFO] [stdout] 345 | |     custom_assets: {
[INFO] [stdout] 346 | |         sprites: Texture2D => {
[INFO] [stdout] 347 | |             static: SPRITE_REGISTRY,
[INFO] [stdout] ...   |
[INFO] [stdout] 497 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `declare_registries` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_similar` is never used
[INFO] [stdout]    --> src/assets.rs:166:24
[INFO] [stdout]     |
[INFO] [stdout] 166 |                   pub fn find_similar(key: &str) -> Vec<String> { $asset_static.find_similar(key, 3) }
[INFO] [stdout]     |                          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 344 | / declare_registries! {
[INFO] [stdout] 345 | |     custom_assets: {
[INFO] [stdout] 346 | |         sprites: Texture2D => {
[INFO] [stdout] 347 | |             static: SPRITE_REGISTRY,
[INFO] [stdout] ...   |
[INFO] [stdout] 497 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `declare_registries` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get` is never used
[INFO] [stdout]    --> src/assets.rs:172:24
[INFO] [stdout]     |
[INFO] [stdout] 172 |                   pub fn get(key: &str) -> Option<&$data_type> {
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 344 | / declare_registries! {
[INFO] [stdout] 345 | |     custom_assets: {
[INFO] [stdout] 346 | |         sprites: Texture2D => {
[INFO] [stdout] 347 | |             static: SPRITE_REGISTRY,
[INFO] [stdout] ...   |
[INFO] [stdout] 497 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `declare_registries` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_similar` is never used
[INFO] [stdout]    --> src/assets.rs:175:24
[INFO] [stdout]     |
[INFO] [stdout] 175 |                   pub fn find_similar(key: &str) -> Vec<String> { $data_static.find_similar(key, 3) }
[INFO] [stdout]     |                          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 344 | / declare_registries! {
[INFO] [stdout] 345 | |     custom_assets: {
[INFO] [stdout] 346 | |         sprites: Texture2D => {
[INFO] [stdout] 347 | |             static: SPRITE_REGISTRY,
[INFO] [stdout] ...   |
[INFO] [stdout] 497 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `declare_registries` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.94s
[INFO] running `Command { std: "docker" "inspect" "2e18939607e90e3dde7447708803a11abb6b2cb1055b0e49994f885ab1bce3f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2e18939607e90e3dde7447708803a11abb6b2cb1055b0e49994f885ab1bce3f9", kill_on_drop: false }`
[INFO] [stdout] 2e18939607e90e3dde7447708803a11abb6b2cb1055b0e49994f885ab1bce3f9
