[INFO] cloning repository https://github.com/notarikon-nz/viticulture [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/notarikon-nz/viticulture" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnotarikon-nz%2Fviticulture", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnotarikon-nz%2Fviticulture'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] fb87c42ae3d568e006de41bb6f97cdd823554769 [INFO] checking notarikon-nz/viticulture against try#0f31acebf540c89e4a4d5d114959fe91973419cb for pr-147017 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnotarikon-nz%2Fviticulture" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/notarikon-nz/viticulture [INFO] finished tweaking git repo https://github.com/notarikon-nz/viticulture [INFO] tweaked toml for git repo https://github.com/notarikon-nz/viticulture written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/notarikon-nz/viticulture on toolchain 0f31acebf540c89e4a4d5d114959fe91973419cb [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0f31acebf540c89e4a4d5d114959fe91973419cb" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/notarikon-nz/viticulture 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" "+0f31acebf540c89e4a4d5d114959fe91973419cb" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+0f31acebf540c89e4a4d5d114959fe91973419cb" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 994bbde129aa57b5c25b41e6e6a2a35f3b1ebb2acb0aa8baf6c8d35fb3533a60 [INFO] running `Command { std: "docker" "start" "-a" "994bbde129aa57b5c25b41e6e6a2a35f3b1ebb2acb0aa8baf6c8d35fb3533a60", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "994bbde129aa57b5c25b41e6e6a2a35f3b1ebb2acb0aa8baf6c8d35fb3533a60", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "994bbde129aa57b5c25b41e6e6a2a35f3b1ebb2acb0aa8baf6c8d35fb3533a60", kill_on_drop: false }` [INFO] [stdout] 994bbde129aa57b5c25b41e6e6a2a35f3b1ebb2acb0aa8baf6c8d35fb3533a60 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+0f31acebf540c89e4a4d5d114959fe91973419cb" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5d3e366452227ed070f6001008d4888f316da250e7729d82ad406662fd31734a [INFO] running `Command { std: "docker" "start" "-a" "5d3e366452227ed070f6001008d4888f316da250e7729d82ad406662fd31734a", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.101 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Checking cfg-if v1.0.1 [INFO] [stderr] Compiling libc v0.2.175 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling winnow v0.7.12 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Checking foldhash v0.1.5 [INFO] [stderr] Compiling zerocopy v0.8.26 [INFO] [stderr] Checking tracing-core v0.1.34 [INFO] [stderr] Checking smallvec v1.15.1 [INFO] [stderr] Checking parking v2.2.1 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Checking arrayvec v0.7.6 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Checking fastrand v2.3.0 [INFO] [stderr] Compiling typeid v1.0.3 [INFO] [stderr] Checking thread_local v1.1.9 [INFO] [stderr] Checking smol_str v0.2.2 [INFO] [stderr] Checking slab v0.4.11 [INFO] [stderr] Checking allocator-api2 v0.2.21 [INFO] [stderr] Checking futures-lite v2.6.1 [INFO] [stderr] Compiling indexmap v2.10.0 [INFO] [stderr] Checking async-task v4.7.1 [INFO] [stderr] Checking web-time v1.1.0 [INFO] [stderr] Checking fixedbitset v0.4.2 [INFO] [stderr] Checking downcast-rs v1.2.1 [INFO] [stderr] Checking bevy_ptr v0.14.2 [INFO] [stderr] Checking log v0.4.27 [INFO] [stderr] Checking fixedbitset v0.5.7 [INFO] [stderr] Checking nonmax v0.5.5 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Checking libloading v0.8.8 [INFO] [stderr] Checking memchr v2.7.5 [INFO] [stderr] Compiling pkg-config v0.3.32 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling lock_api v0.4.13 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Checking raw-window-handle v0.6.2 [INFO] [stderr] Checking event-listener v5.4.1 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Checking bit-vec v0.6.3 [INFO] [stderr] Checking codespan-reporting v0.11.1 [INFO] [stderr] Checking event-listener-strategy v0.5.4 [INFO] [stderr] Compiling cc v1.2.33 [INFO] [stderr] Checking crossbeam-channel v0.5.15 [INFO] [stderr] Checking unicode-xid v0.2.6 [INFO] [stderr] Checking bit-set v0.5.3 [INFO] [stderr] Checking async-channel v2.5.0 [INFO] [stderr] Checking simd-adler32 v0.3.7 [INFO] [stderr] Compiling ash v0.37.3+1.3.251 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Checking hexf-parse v0.2.1 [INFO] [stderr] Compiling khronos-egl v6.0.0 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking piper v0.2.4 [INFO] [stderr] Compiling uuid v1.18.0 [INFO] [stderr] Compiling wgpu-hal v0.21.1 [INFO] [stderr] Checking libloading v0.7.4 [INFO] [stderr] Checking adler2 v2.0.1 [INFO] [stderr] Checking accesskit v0.14.0 [INFO] [stderr] Checking async-lock v3.4.1 [INFO] [stderr] Checking miniz_oxide v0.8.9 [INFO] [stderr] Compiling wgpu-core v0.21.1 [INFO] [stderr] Checking glow v0.13.1 [INFO] [stderr] Checking typewit v1.12.1 [INFO] [stderr] Checking async-executor v1.13.2 [INFO] [stderr] Checking blocking v1.6.2 [INFO] [stderr] Checking renderdoc-sys v1.1.0 [INFO] [stderr] Compiling litrs v0.4.2 [INFO] [stderr] Checking profiling v1.0.17 [INFO] [stderr] Checking async-broadcast v0.5.1 [INFO] [stderr] Checking const_panic v0.2.14 [INFO] [stderr] Checking fdeflate v0.3.7 [INFO] [stderr] Compiling wgpu v0.20.1 [INFO] [stderr] Checking async-fs v2.1.3 [INFO] [stderr] Checking const_soft_float v0.1.4 [INFO] [stderr] Checking twox-hash v1.6.3 [INFO] [stderr] Checking byteorder-lite v0.1.0 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Checking bevy_tasks v0.14.2 [INFO] [stderr] Checking unicode-ident v1.0.18 [INFO] [stderr] Checking const-fnv1a-hash v1.1.0 [INFO] [stderr] Checking data-encoding v2.9.0 [INFO] [stderr] Checking ruzstd v0.7.3 [INFO] [stderr] Checking constgebra v0.1.4 [INFO] [stderr] Checking flate2 v1.1.2 [INFO] [stderr] Compiling document-features v0.2.11 [INFO] [stderr] Checking ktx2 v0.3.0 [INFO] [stderr] Compiling rustix v1.0.8 [INFO] [stderr] Checking radsort v0.1.1 [INFO] [stderr] Checking sysinfo v0.30.13 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Checking png v0.17.16 [INFO] [stderr] Compiling alsa-sys v0.3.1 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking linux-raw-sys v0.9.4 [INFO] [stderr] Checking linux-raw-sys v0.4.15 [INFO] [stderr] Checking parking_lot v0.12.4 [INFO] [stderr] Compiling nix v0.29.0 [INFO] [stderr] Compiling libudev-sys v0.1.4 [INFO] [stderr] Compiling x11-dl v2.21.0 [INFO] [stderr] Checking euclid v0.22.11 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking regex-automata v0.4.9 [INFO] [stderr] Checking ttf-parser v0.25.1 [INFO] [stderr] Checking svg_fmt v0.4.5 [INFO] [stderr] Compiling serde_json v1.0.142 [INFO] [stderr] Checking inotify-sys v0.1.5 [INFO] [stderr] Compiling winit v0.30.12 [INFO] [stderr] Compiling blake3 v1.8.2 [INFO] [stderr] Checking approx v0.5.1 [INFO] [stderr] Checking dlib v0.5.2 [INFO] [stderr] Compiling slotmap v1.0.7 [INFO] [stderr] Compiling inflections v1.1.1 [INFO] [stderr] Compiling cpal v0.15.3 [INFO] [stderr] Checking x11rb-protocol v0.13.1 [INFO] [stderr] Checking as-raw-xcb-connection v1.0.1 [INFO] [stderr] Checking ab_glyph_rasterizer v0.1.10 [INFO] [stderr] Checking rectangle-pack v0.4.2 [INFO] [stderr] Checking xkeysym v0.2.1 [INFO] [stderr] Checking tinyvec v1.9.0 [INFO] [stderr] Checking inotify v0.10.2 [INFO] [stderr] Checking ogg v0.8.0 [INFO] [stderr] Checking xi-unicode v0.3.0 [INFO] [stderr] Checking dasp_sample v0.11.0 [INFO] [stderr] Checking dpi v0.1.2 [INFO] [stderr] Compiling gilrs v0.10.10 [INFO] [stderr] Checking cursor-icon v1.2.0 [INFO] [stderr] Checking guillotiere v0.6.2 [INFO] [stderr] Checking grid v0.14.0 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking iana-time-zone v0.1.63 [INFO] [stderr] Checking chrono v0.4.41 [INFO] [stderr] Checking lewton v0.10.2 [INFO] [stderr] Checking taffy v0.5.2 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Checking rand v0.9.2 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Checking owned_ttf_parser v0.25.1 [INFO] [stderr] Checking ab_glyph v0.2.31 [INFO] [stderr] Checking glyph_brush_layout v0.2.4 [INFO] [stderr] Compiling bevy_macro_utils v0.14.2 [INFO] [stderr] Compiling encase_derive_impl v0.8.0 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling bytemuck_derive v1.10.1 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling bevy_utils_proc_macros v0.14.2 [INFO] [stderr] Compiling bevy_reflect_derive v0.14.2 [INFO] [stderr] Compiling bevy_ecs_macros v0.14.2 [INFO] [stderr] Compiling bevy_derive v0.14.2 [INFO] [stderr] Compiling bevy_asset_macros v0.14.2 [INFO] [stderr] Compiling bevy_render_macros v0.14.2 [INFO] [stderr] Compiling gltf-derive v1.4.1 [INFO] [stderr] Compiling bevy_gizmos_macros v0.14.2 [INFO] [stderr] Compiling encase_derive v0.8.0 [INFO] [stderr] Compiling bevy_encase_derive v0.14.2 [INFO] [stderr] Compiling bevy_state_macros v0.14.2 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Checking bytemuck v1.23.2 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Checking image v0.25.6 [INFO] [stderr] Checking tracing-subscriber v0.3.19 [INFO] [stderr] Checking bitflags v2.9.2 [INFO] [stderr] Checking glam v0.27.0 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking erased-serde v0.4.6 [INFO] [stderr] Checking petgraph v0.6.5 [INFO] [stderr] Checking spirv v0.3.0+sdk-1.3.268.0 [INFO] [stderr] Checking gpu-descriptor-types v0.2.0 [INFO] [stderr] Checking wgpu-types v0.20.0 [INFO] [stderr] Checking gpu-alloc-types v0.3.0 [INFO] [stderr] Checking ron v0.8.1 [INFO] [stderr] Checking xkbcommon-dl v0.4.2 [INFO] [stderr] Checking alsa v0.9.1 [INFO] [stderr] Checking gpu-descriptor v0.3.2 [INFO] [stderr] Checking gpu-alloc v0.6.0 [INFO] [stderr] Checking gilrs-core v0.5.15 [INFO] [stderr] Checking gltf-json v1.4.1 [INFO] [stderr] Checking bevy_utils v0.14.2 [INFO] [stderr] Checking naga v0.20.0 [INFO] [stderr] Checking rodio v0.18.1 [INFO] [stderr] Checking polling v3.10.0 [INFO] [stderr] Checking bevy_reflect v0.14.2 [INFO] [stderr] Checking encase v0.8.0 [INFO] [stderr] Checking hexasphere v12.0.0 [INFO] [stderr] Checking bevy_mikktspace v0.14.2 [INFO] [stderr] Checking gltf v1.4.1 [INFO] [stderr] Checking x11rb v0.13.1 [INFO] [stderr] Checking calloop v0.13.0 [INFO] [stderr] Checking bevy_ecs v0.14.2 [INFO] [stderr] Checking bevy_math v0.14.2 [INFO] [stderr] Checking naga_oil v0.14.0 [INFO] [stderr] Checking accesskit_winit v0.20.4 [INFO] [stderr] Checking bevy_color v0.14.3 [INFO] [stderr] Checking bevy_app v0.14.2 [INFO] [stderr] Checking bevy_core v0.14.2 [INFO] [stderr] Checking bevy_time v0.14.2 [INFO] [stderr] Checking bevy_a11y v0.14.2 [INFO] [stderr] Checking bevy_asset v0.14.2 [INFO] [stderr] Checking bevy_log v0.14.2 [INFO] [stderr] Checking bevy_input v0.14.2 [INFO] [stderr] Checking bevy_window v0.14.2 [INFO] [stderr] Checking bevy_hierarchy v0.14.2 [INFO] [stderr] Checking bevy_diagnostic v0.14.2 [INFO] [stderr] Checking bevy_transform v0.14.2 [INFO] [stderr] Checking bevy_state v0.14.2 [INFO] [stderr] Checking bevy_gilrs v0.14.2 [INFO] [stderr] Checking bevy_winit v0.14.2 [INFO] [stderr] Checking bevy_render v0.14.2 [INFO] [stderr] Checking bevy_audio v0.14.2 [INFO] [stderr] Checking bevy_core_pipeline v0.14.2 [INFO] [stderr] Checking bevy_scene v0.14.2 [INFO] [stderr] Checking bevy_animation v0.14.2 [INFO] [stderr] Checking bevy_sprite v0.14.2 [INFO] [stderr] Checking bevy_pbr v0.14.2 [INFO] [stderr] Checking bevy_text v0.14.2 [INFO] [stderr] Checking bevy_ui v0.14.2 [INFO] [stderr] Checking bevy_gltf v0.14.2 [INFO] [stderr] Checking bevy_gizmos v0.14.2 [INFO] [stderr] Checking bevy_internal v0.14.2 [INFO] [stderr] Checking bevy_dylib v0.14.2 [INFO] [stderr] Checking bevy v0.14.2 [INFO] [stderr] Checking viticulture v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/systems/animations.rs:236:5 [INFO] [stdout] | [INFO] [stdout] 234 | return; [INFO] [stdout] | ------ any code following this expression is unreachable [INFO] [stdout] 235 | [INFO] [stdout] 236 | / if !settings.enable_transitions { [INFO] [stdout] 237 | | return; [INFO] [stdout] 238 | | } [INFO] [stdout] | |_____^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/systems/animations.rs:236:5 [INFO] [stdout] | [INFO] [stdout] 234 | return; [INFO] [stdout] | ------ any code following this expression is unreachable [INFO] [stdout] 235 | [INFO] [stdout] 236 | / if !settings.enable_transitions { [INFO] [stdout] 237 | | return; [INFO] [stdout] 238 | | } [INFO] [stdout] | |_____^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `space_entity` [INFO] [stdout] --> src/systems/input.rs:41:18 [INFO] [stdout] | [INFO] [stdout] 41 | for (space_entity, mut action_space, clickable) in action_spaces.iter_mut() { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_space_entity` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `center` [INFO] [stdout] --> src/systems/game_logic.rs:172:29 [INFO] [stdout] | [INFO] [stdout] 172 | fn create_particles_by_type(center: Vec2, count: usize, color: Color) -> Vec { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_center` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `players` [INFO] [stdout] --> src/systems/game_logic.rs:767:9 [INFO] [stdout] | [INFO] [stdout] 767 | mut players: Query<&mut Player>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_players` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `commands` [INFO] [stdout] --> src/systems/game_logic.rs:770:9 [INFO] [stdout] | [INFO] [stdout] 770 | mut commands: Commands, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/game_logic.rs:767:5 [INFO] [stdout] | [INFO] [stdout] 767 | mut players: Query<&mut Player>, [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/game_logic.rs:770:5 [INFO] [stdout] | [INFO] [stdout] 770 | mut commands: Commands, [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time` [INFO] [stdout] --> src/systems/game_logic.rs:912:29 [INFO] [stdout] | [INFO] [stdout] 912 | if let Some((player_id, time)) = turn_order.wake_up_order.iter().find(|(_, t)| *t == 7) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_time` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/game_logic.rs:956:5 [INFO] [stdout] | [INFO] [stdout] 956 | mut visitor_deck: Option>, [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `commands` [INFO] [stdout] --> src/systems/game_logic.rs:1040:5 [INFO] [stdout] | [INFO] [stdout] 1040 | commands: &mut Commands, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `commands` [INFO] [stdout] --> src/systems/game_logic.rs:1087:9 [INFO] [stdout] | [INFO] [stdout] 1087 | mut commands: Commands, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/game_logic.rs:1087:5 [INFO] [stdout] | [INFO] [stdout] 1087 | mut commands: Commands, [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `grande_worker` [INFO] [stdout] --> src/systems/game_logic.rs:1126:25 [INFO] [stdout] | [INFO] [stdout] 1126 | if let Some(mut grande_worker) = workers.iter_mut() [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_grande_worker` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/game_logic.rs:1126:21 [INFO] [stdout] | [INFO] [stdout] 1126 | if let Some(mut grande_worker) = workers.iter_mut() [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `players` [INFO] [stdout] --> src/systems/game_logic.rs:1225:5 [INFO] [stdout] | [INFO] [stdout] 1225 | players: &Query<&Player>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_players` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `commands` [INFO] [stdout] --> src/systems/animations.rs:229:5 [INFO] [stdout] | [INFO] [stdout] 229 | commands: &mut Commands, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `from_season` [INFO] [stdout] --> src/systems/animations.rs:230:5 [INFO] [stdout] | [INFO] [stdout] 230 | from_season: GameState, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_season` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `to_season` [INFO] [stdout] --> src/systems/animations.rs:231:5 [INFO] [stdout] | [INFO] [stdout] 231 | to_season: GameState, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_to_season` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `settings` [INFO] [stdout] --> src/systems/animations.rs:232:5 [INFO] [stdout] | [INFO] [stdout] 232 | settings: &AnimationSettings, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_settings` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `center` [INFO] [stdout] --> src/systems/animations.rs:456:29 [INFO] [stdout] | [INFO] [stdout] 456 | fn create_harvest_particles(center: Vec2, count: usize) -> Vec { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_center` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `center` [INFO] [stdout] --> src/systems/animations.rs:481:29 [INFO] [stdout] | [INFO] [stdout] 481 | fn create_pouring_particles(center: Vec2, count: usize) -> Vec { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_center` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `center` [INFO] [stdout] --> src/systems/animations.rs:504:26 [INFO] [stdout] | [INFO] [stdout] 504 | fn create_lira_particles(center: Vec2, count: usize) -> Vec { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_center` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `space_entity` [INFO] [stdout] --> src/systems/input.rs:41:18 [INFO] [stdout] | [INFO] [stdout] 41 | for (space_entity, mut action_space, clickable) in action_spaces.iter_mut() { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_space_entity` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ai_player` [INFO] [stdout] --> src/systems/ai.rs:68:13 [INFO] [stdout] | [INFO] [stdout] 68 | let ai_player = ai_players.iter_mut().find(|ai| ai.player_id == *current_player_id); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ai_player` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current_state` [INFO] [stdout] --> src/systems/ai.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 187 | current_state: &GameState, [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `center` [INFO] [stdout] --> src/systems/game_logic.rs:172:29 [INFO] [stdout] | [INFO] [stdout] 172 | fn create_particles_by_type(center: Vec2, count: usize, color: Color) -> Vec { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_center` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player` [INFO] [stdout] --> src/systems/validation.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | let player = players.iter().find(|p| p.id == player_id).unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `players` [INFO] [stdout] --> src/systems/endgame.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | players: &Query<&Player>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_players` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn_order` [INFO] [stdout] --> src/systems/performance.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | turn_order: Res, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_turn_order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `camera` [INFO] [stdout] --> src/systems/performance.rs:120:10 [INFO] [stdout] | [INFO] [stdout] 120 | let (camera, camera_transform) = camera_q.single(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `players` [INFO] [stdout] --> src/systems/game_logic.rs:767:9 [INFO] [stdout] | [INFO] [stdout] 767 | mut players: Query<&mut Player>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_players` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `commands` [INFO] [stdout] --> src/systems/game_logic.rs:770:9 [INFO] [stdout] | [INFO] [stdout] 770 | mut commands: Commands, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/game_logic.rs:767:5 [INFO] [stdout] | [INFO] [stdout] 767 | mut players: Query<&mut Player>, [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/game_logic.rs:770:5 [INFO] [stdout] | [INFO] [stdout] 770 | mut commands: Commands, [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn_order` [INFO] [stdout] --> src/systems/bugfixes.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | turn_order: Res, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_turn_order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vineyards` [INFO] [stdout] --> src/systems/bugfixes.rs:149:5 [INFO] [stdout] | [INFO] [stdout] 149 | vineyards: Query<&Vineyard>, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vineyards` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hands` [INFO] [stdout] --> src/systems/bugfixes.rs:150:5 [INFO] [stdout] | [INFO] [stdout] 150 | hands: Query<&Hand>, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_hands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current_state` [INFO] [stdout] --> src/systems/bugfixes.rs:192:5 [INFO] [stdout] | [INFO] [stdout] 192 | current_state: Res>, [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/systems/balance.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | config: Res, // Add config to track game state [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time` [INFO] [stdout] --> src/systems/game_logic.rs:912:29 [INFO] [stdout] | [INFO] [stdout] 912 | if let Some((player_id, time)) = turn_order.wake_up_order.iter().find(|(_, t)| *t == 7) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_time` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `commands` [INFO] [stdout] --> src/systems/balance.rs:128:5 [INFO] [stdout] | [INFO] [stdout] 128 | commands: &mut Commands, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/game_logic.rs:956:5 [INFO] [stdout] | [INFO] [stdout] 956 | mut visitor_deck: Option>, [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `commands` [INFO] [stdout] --> src/systems/game_logic.rs:1040:5 [INFO] [stdout] | [INFO] [stdout] 1040 | commands: &mut Commands, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `commands` [INFO] [stdout] --> src/systems/game_logic.rs:1087:9 [INFO] [stdout] | [INFO] [stdout] 1087 | mut commands: Commands, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `card_decks` [INFO] [stdout] --> src/systems/balance.rs:251:5 [INFO] [stdout] | [INFO] [stdout] 251 | card_decks: &mut ResMut, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_card_decks` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/game_logic.rs:1087:5 [INFO] [stdout] | [INFO] [stdout] 1087 | mut commands: Commands, [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `grande_worker` [INFO] [stdout] --> src/systems/game_logic.rs:1126:25 [INFO] [stdout] | [INFO] [stdout] 1126 | if let Some(mut grande_worker) = workers.iter_mut() [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_grande_worker` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/game_logic.rs:1126:21 [INFO] [stdout] | [INFO] [stdout] 1126 | if let Some(mut grande_worker) = workers.iter_mut() [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `players` [INFO] [stdout] --> src/systems/game_logic.rs:1225:5 [INFO] [stdout] | [INFO] [stdout] 1225 | players: &Query<&Player>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_players` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/balance.rs:385:5 [INFO] [stdout] | [INFO] [stdout] 385 | mut turn_order: ResMut, [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn_order` [INFO] [stdout] --> src/systems/balance.rs:453:5 [INFO] [stdout] | [INFO] [stdout] 453 | turn_order: &TurnOrder, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_turn_order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ai_count` [INFO] [stdout] --> src/systems/balance.rs:522:9 [INFO] [stdout] | [INFO] [stdout] 522 | let ai_count = ai_players.iter().count(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 522 | let _ai_count = ai_players.iter().count(); [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `HAND_LIMIT` [INFO] [stdout] | [INFO] [stdout] 522 - let ai_count = ai_players.iter().count(); [INFO] [stdout] 522 + let systems::game_logic::HAND_LIMIT = ai_players.iter().count(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn_order` [INFO] [stdout] --> src/systems/balance.rs:503:5 [INFO] [stdout] | [INFO] [stdout] 503 | turn_order: Res, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_turn_order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/balance.rs:509:5 [INFO] [stdout] | [INFO] [stdout] 509 | mut test_config: ResMut, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `commands` [INFO] [stdout] --> src/systems/animations.rs:229:5 [INFO] [stdout] | [INFO] [stdout] 229 | commands: &mut Commands, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `from_season` [INFO] [stdout] --> src/systems/animations.rs:230:5 [INFO] [stdout] | [INFO] [stdout] 230 | from_season: GameState, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_season` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `to_season` [INFO] [stdout] --> src/systems/animations.rs:231:5 [INFO] [stdout] | [INFO] [stdout] 231 | to_season: GameState, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_to_season` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `settings` [INFO] [stdout] --> src/systems/animations.rs:232:5 [INFO] [stdout] | [INFO] [stdout] 232 | settings: &AnimationSettings, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_settings` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `card_decks` [INFO] [stdout] --> src/systems/balance.rs:815:5 [INFO] [stdout] | [INFO] [stdout] 815 | card_decks: ResMut, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_card_decks` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `center` [INFO] [stdout] --> src/systems/animations.rs:456:29 [INFO] [stdout] | [INFO] [stdout] 456 | fn create_harvest_particles(center: Vec2, count: usize) -> Vec { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_center` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `center` [INFO] [stdout] --> src/systems/animations.rs:481:29 [INFO] [stdout] | [INFO] [stdout] 481 | fn create_pouring_particles(center: Vec2, count: usize) -> Vec { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_center` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `center` [INFO] [stdout] --> src/systems/animations.rs:504:26 [INFO] [stdout] | [INFO] [stdout] 504 | fn create_lira_particles(center: Vec2, count: usize) -> Vec { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_center` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ai_player` [INFO] [stdout] --> src/systems/ai.rs:68:13 [INFO] [stdout] | [INFO] [stdout] 68 | let ai_player = ai_players.iter_mut().find(|ai| ai.player_id == *current_player_id); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ai_player` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current_state` [INFO] [stdout] --> src/systems/ai.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 187 | current_state: &GameState, [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player` [INFO] [stdout] --> src/systems/validation.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | let player = players.iter().find(|p| p.id == player_id).unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `players` [INFO] [stdout] --> src/systems/endgame.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | players: &Query<&Player>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_players` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn_order` [INFO] [stdout] --> src/systems/performance.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | turn_order: Res, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_turn_order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `camera` [INFO] [stdout] --> src/systems/performance.rs:120:10 [INFO] [stdout] | [INFO] [stdout] 120 | let (camera, camera_transform) = camera_q.single(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn_order` [INFO] [stdout] --> src/systems/bugfixes.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | turn_order: Res, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_turn_order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vineyards` [INFO] [stdout] --> src/systems/bugfixes.rs:149:5 [INFO] [stdout] | [INFO] [stdout] 149 | vineyards: Query<&Vineyard>, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vineyards` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hands` [INFO] [stdout] --> src/systems/bugfixes.rs:150:5 [INFO] [stdout] | [INFO] [stdout] 150 | hands: Query<&Hand>, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_hands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current_state` [INFO] [stdout] --> src/systems/bugfixes.rs:192:5 [INFO] [stdout] | [INFO] [stdout] 192 | current_state: Res>, [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/systems/balance.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | config: Res, // Add config to track game state [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `commands` [INFO] [stdout] --> src/systems/balance.rs:128:5 [INFO] [stdout] | [INFO] [stdout] 128 | commands: &mut Commands, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `players` [INFO] [stdout] --> src/systems/save.rs:168:5 [INFO] [stdout] | [INFO] [stdout] 168 | players: &Query<&Player>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_players` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vineyards` [INFO] [stdout] --> src/systems/save.rs:169:5 [INFO] [stdout] | [INFO] [stdout] 169 | vineyards: &Query<&Vineyard>, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vineyards` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hands` [INFO] [stdout] --> src/systems/save.rs:170:5 [INFO] [stdout] | [INFO] [stdout] 170 | hands: &Query<&Hand>, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_hands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `card_decks` [INFO] [stdout] --> src/systems/balance.rs:251:5 [INFO] [stdout] | [INFO] [stdout] 251 | card_decks: &mut ResMut, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_card_decks` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/balance.rs:385:5 [INFO] [stdout] | [INFO] [stdout] 385 | mut turn_order: ResMut, [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn_order` [INFO] [stdout] --> src/systems/balance.rs:453:5 [INFO] [stdout] | [INFO] [stdout] 453 | turn_order: &TurnOrder, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_turn_order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ai_count` [INFO] [stdout] --> src/systems/balance.rs:522:9 [INFO] [stdout] | [INFO] [stdout] 522 | let ai_count = ai_players.iter().count(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 522 | let _ai_count = ai_players.iter().count(); [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `HAND_LIMIT` [INFO] [stdout] | [INFO] [stdout] 522 - let ai_count = ai_players.iter().count(); [INFO] [stdout] 522 + let systems::game_logic::HAND_LIMIT = ai_players.iter().count(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn_order` [INFO] [stdout] --> src/systems/balance.rs:503:5 [INFO] [stdout] | [INFO] [stdout] 503 | turn_order: Res, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_turn_order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/balance.rs:509:5 [INFO] [stdout] | [INFO] [stdout] 509 | mut test_config: ResMut, [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `card_decks` [INFO] [stdout] --> src/systems/balance.rs:815:5 [INFO] [stdout] | [INFO] [stdout] 815 | card_decks: ResMut, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_card_decks` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `difficulty_text` [INFO] [stdout] --> src/systems/settings.rs:309:9 [INFO] [stdout] | [INFO] [stdout] 309 | let difficulty_text = match difficulty { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_difficulty_text` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `h` [INFO] [stdout] --> src/systems/expansions.rs:290:33 [INFO] [stdout] | [INFO] [stdout] 290 | if let Some(ref mut h) = hand { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_h` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player` [INFO] [stdout] --> src/systems/expansions.rs:422:21 [INFO] [stdout] | [INFO] [stdout] 422 | if let Some(player) = players.iter_mut().find(|p| p.id == advanced.owner) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vineyards` [INFO] [stdout] --> src/systems/expansions.rs:414:5 [INFO] [stdout] | [INFO] [stdout] 414 | vineyards: Query<&mut Vineyard>, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vineyards` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `commands` [INFO] [stdout] --> src/systems/tooltips.rs:43:26 [INFO] [stdout] | [INFO] [stdout] 43 | fn setup_action_tooltips(commands: &mut Commands) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `commands` [INFO] [stdout] --> src/systems/tooltips.rs:382:30 [INFO] [stdout] | [INFO] [stdout] 382 | pub fn setup_status_tooltips(commands: &mut Commands) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/advanced.rs:364:5 [INFO] [stdout] | [INFO] [stdout] 364 | mut expansion_content: ResMut, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `players` [INFO] [stdout] --> src/systems/save.rs:168:5 [INFO] [stdout] | [INFO] [stdout] 168 | players: &Query<&Player>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_players` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vineyards` [INFO] [stdout] --> src/systems/save.rs:169:5 [INFO] [stdout] | [INFO] [stdout] 169 | vineyards: &Query<&Vineyard>, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vineyards` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hands` [INFO] [stdout] --> src/systems/save.rs:170:5 [INFO] [stdout] | [INFO] [stdout] 170 | hands: &Query<&Hand>, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_hands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vineyards` [INFO] [stdout] --> src/systems/achievements.rs:261:5 [INFO] [stdout] | [INFO] [stdout] 261 | vineyards: Query<&Vineyard>, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vineyards` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `workers` [INFO] [stdout] --> src/systems/achievements.rs:262:5 [INFO] [stdout] | [INFO] [stdout] 262 | workers: Query<&Worker>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_workers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/systems/achievements.rs:265:5 [INFO] [stdout] | [INFO] [stdout] 265 | config: Res, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `onboarding` [INFO] [stdout] --> src/systems/onboarding.rs:128:49 [INFO] [stdout] | [INFO] [stdout] 128 | fn show_welcome_screen(commands: &mut Commands, onboarding: &OnboardingState) { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_onboarding` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `workers` [INFO] [stdout] --> src/systems/onboarding.rs:252:5 [INFO] [stdout] | [INFO] [stdout] 252 | workers: Query<&Worker>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_workers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `players` [INFO] [stdout] --> src/systems/onboarding.rs:398:5 [INFO] [stdout] | [INFO] [stdout] 398 | players: Query<&Player>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_players` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `game_stats` [INFO] [stdout] --> src/systems/onboarding.rs:399:5 [INFO] [stdout] | [INFO] [stdout] 399 | game_stats: Res, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_game_stats` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `difficulty_text` [INFO] [stdout] --> src/systems/settings.rs:309:9 [INFO] [stdout] | [INFO] [stdout] 309 | let difficulty_text = match difficulty { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_difficulty_text` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `h` [INFO] [stdout] --> src/systems/expansions.rs:290:33 [INFO] [stdout] | [INFO] [stdout] 290 | if let Some(ref mut h) = hand { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_h` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player` [INFO] [stdout] --> src/systems/expansions.rs:422:21 [INFO] [stdout] | [INFO] [stdout] 422 | if let Some(player) = players.iter_mut().find(|p| p.id == advanced.owner) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vineyards` [INFO] [stdout] --> src/systems/expansions.rs:414:5 [INFO] [stdout] | [INFO] [stdout] 414 | vineyards: Query<&mut Vineyard>, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vineyards` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `commands` [INFO] [stdout] --> src/systems/tooltips.rs:43:26 [INFO] [stdout] | [INFO] [stdout] 43 | fn setup_action_tooltips(commands: &mut Commands) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `commands` [INFO] [stdout] --> src/systems/tooltips.rs:382:30 [INFO] [stdout] | [INFO] [stdout] 382 | pub fn setup_status_tooltips(commands: &mut Commands) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/advanced.rs:364:5 [INFO] [stdout] | [INFO] [stdout] 364 | mut expansion_content: ResMut, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `not_testing_mode_enabled` is never used [INFO] [stdout] --> src/main.rs:181:4 [INFO] [stdout] | [INFO] [stdout] 181 | fn not_testing_mode_enabled(test_config: Res) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ButtonText` is never constructed [INFO] [stdout] --> src/components.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct ButtonText; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `wake_up_bonuses` is never read [INFO] [stdout] --> src/components.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct TurnOrder { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 38 | pub wake_up_bonuses: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `PlayExtraWorker` is never constructed [INFO] [stdout] --> src/components.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub enum WakeUpBonus { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 47 | PlayExtraWorker, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `WakeUpBonus` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_wake_up_bonus` is never used [INFO] [stdout] --> src/components.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 50 | impl TurnOrder { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 60 | pub fn get_wake_up_bonus(&self, player_id: PlayerId) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `WineType` is never used [INFO] [stdout] --> src/components.rs:166:10 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum WineType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `can_sell`, `sell_value`, `is_empty`, `has_vine`, `plant_vine`, and `can_plant_vine` are never used [INFO] [stdout] --> src/components.rs:198:12 [INFO] [stdout] | [INFO] [stdout] 173 | impl VineyardField { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn can_sell(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 202 | pub fn sell_value(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 215 | pub fn has_vine(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 219 | pub fn plant_vine(&mut self, vine_type: VineType) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 223 | pub fn can_plant_vine(&self, vine_card: &VineCard, current_total: u8, max_value: u8) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/components.rs:254:8 [INFO] [stdout] | [INFO] [stdout] 236 | impl Vineyard { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 254 | fn get_field_total_value(&self, field_index: usize) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 271 | pub fn get_field_harvest_values(&self, field_index: usize) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 284 | pub fn can_plant_vine(&self, field_index: usize, vine_card: &VineCard, structures: &[Structure]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 317 | pub fn plant_vine(&mut self, field_index: usize, vine_card: VineCard, structures: &[Structure]) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 382 | pub fn can_make_wine(&self, wine_type: WineType, value: u8, structures: &[Structure]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 402 | pub fn fulfill_order(&mut self, order: &WineOrderCard) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 456 | pub fn sell_field(&mut self, field_index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 472 | pub fn buy_back_field(&mut self, field_index: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 489 | pub fn available_fields(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `special_ability` are never read [INFO] [stdout] --> src/components.rs:507:9 [INFO] [stdout] | [INFO] [stdout] 506 | pub struct VineCard { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 507 | pub id: u32, [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 511 | pub special_ability: Option, // New: special vine abilities [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VineCard` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `order_type` are never read [INFO] [stdout] --> src/components.rs:584:9 [INFO] [stdout] | [INFO] [stdout] 583 | pub struct WineOrderCard { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 584 | pub id: u32, [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 590 | pub order_type: OrderType, // New: different order types [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `WineOrderCard` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_with_residual` is never used [INFO] [stdout] --> src/components.rs:654:12 [INFO] [stdout] | [INFO] [stdout] 626 | impl WineOrderCard { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 654 | pub fn new_with_residual(id: u32, red: u8, white: u8, vp: u8, payout: u8, residual: u8) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_available_for_player_count`, `place_grande_on_occupied`, and `has_grande_worker` are never used [INFO] [stdout] --> src/components.rs:766:12 [INFO] [stdout] | [INFO] [stdout] 732 | impl ActionSpaceSlot { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 766 | pub fn is_available_for_player_count(&self, player_count: u8, position: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 775 | pub fn place_grande_on_occupied(&mut self, player_id: PlayerId) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 787 | pub fn has_grande_worker(&self, player_id: PlayerId) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `WineExpertise` is never constructed [INFO] [stdout] --> src/components.rs:850:5 [INFO] [stdout] | [INFO] [stdout] 846 | pub enum PapaAbility { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 850 | WineExpertise, // Make blush wine more efficiently [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PapaAbility` 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: methods `add_visitor_card` and `total_cards` are never used [INFO] [stdout] --> src/components.rs:1044:12 [INFO] [stdout] | [INFO] [stdout] 1035 | impl Hand { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 1044 | pub fn add_visitor_card(&mut self, visitor: VisitorCard) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1050 | pub fn total_cards(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `player_id` is never read [INFO] [stdout] --> src/components.rs:1061:9 [INFO] [stdout] | [INFO] [stdout] 1060 | pub struct PlayerDashboard { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 1061 | pub player_id: PlayerId, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `player_id` is never read [INFO] [stdout] --> src/components.rs:1074:9 [INFO] [stdout] | [INFO] [stdout] 1073 | pub struct WorkerSprite { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 1074 | pub player_id: PlayerId, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `player_id` and `field_index` are never read [INFO] [stdout] --> src/components.rs:1079:9 [INFO] [stdout] | [INFO] [stdout] 1078 | pub struct VineyardSprite { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 1079 | pub player_id: PlayerId, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1080 | pub field_index: usize, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `card_type` is never read [INFO] [stdout] --> src/components.rs:1085:9 [INFO] [stdout] | [INFO] [stdout] 1084 | pub struct CardSprite { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 1085 | pub card_type: CardType, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `worker_texture`, `vine_card_texture`, `wine_order_card_texture`, and `field_texture` are never read [INFO] [stdout] --> src/components.rs:1099:9 [INFO] [stdout] | [INFO] [stdout] 1098 | pub struct GameAssets { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 1099 | pub worker_texture: Handle, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 1100 | pub vine_card_texture: Handle, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 1101 | pub wine_order_card_texture: Handle, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 1102 | pub field_texture: Handle, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `ai_enabled`, `ai_difficulty`, `audio_enabled`, `sfx_volume`, and `music_volume` are never read [INFO] [stdout] --> src/components.rs:1107:9 [INFO] [stdout] | [INFO] [stdout] 1106 | pub struct GameSettings { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 1107 | pub ai_enabled: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 1108 | pub ai_difficulty: u8, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 1109 | pub audio_enabled: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 1110 | pub sfx_volume: f32, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 1111 | pub music_volume: f32, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `MediumCellar`, `LargeCellar`, and `Cottage` are never constructed [INFO] [stdout] --> src/components.rs:1144:5 [INFO] [stdout] | [INFO] [stdout] 1140 | pub enum StructureType { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 1144 | MediumCellar, // $4 - Store 4-6 value wines, make blush [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 1145 | LargeCellar, // $6 - Store 7-9 value wines, make sparkling [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 1146 | Windmill, // $5 - +1 VP at end for every 7 lira [INFO] [stdout] 1147 | Cottage, // $4 - Draw extra visitor in fall [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StructureType` 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: method `annual_income` is never used [INFO] [stdout] --> src/components.rs:1169:12 [INFO] [stdout] | [INFO] [stdout] 1160 | impl ResidualPaymentTracker { [INFO] [stdout] | --------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1169 | pub fn annual_income(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GREY` is never used [INFO] [stdout] --> src/systems/input.rs:7:7 [INFO] [stdout] | [INFO] [stdout] 7 | const GREY: Srgba = Srgba::new(0.6, 0.6, 0.6, 1.0); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GAME_OVER_TEXT` is never used [INFO] [stdout] --> src/systems/game_logic.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const GAME_OVER_TEXT: &str = "GAME OVER!\n{} WINS with {} Victory Points!\n\nPress SPACE to play again"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apply_residual_payments_system` is never used [INFO] [stdout] --> src/systems/game_logic.rs:746:8 [INFO] [stdout] | [INFO] [stdout] 746 | pub fn apply_residual_payments_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `enhanced_make_wine_action` is never used [INFO] [stdout] --> src/systems/game_logic.rs:804:8 [INFO] [stdout] | [INFO] [stdout] 804 | pub fn enhanced_make_wine_action( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `owner` and `expires_end_of_year` are never read [INFO] [stdout] --> src/systems/game_logic.rs:897:9 [INFO] [stdout] | [INFO] [stdout] 896 | pub struct TemporaryWorker { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 897 | pub owner: PlayerId, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 898 | pub expires_end_of_year: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fall_draw_visitors_system` is never used [INFO] [stdout] --> src/systems/game_logic.rs:952:8 [INFO] [stdout] | [INFO] [stdout] 952 | pub fn fall_draw_visitors_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fulfill_order_with_residual` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1008:8 [INFO] [stdout] | [INFO] [stdout] 1008 | pub fn fulfill_order_with_residual( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `plant_vine_with_requirements_system` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1035:8 [INFO] [stdout] | [INFO] [stdout] 1035 | pub fn plant_vine_with_requirements_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `field_transaction_system` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1083:8 [INFO] [stdout] | [INFO] [stdout] 1083 | pub fn field_transaction_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `enhanced_worker_placement_system` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1118:8 [INFO] [stdout] | [INFO] [stdout] 1118 | pub fn enhanced_worker_placement_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_enhanced_vine_deck` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1151:8 [INFO] [stdout] | [INFO] [stdout] 1151 | pub fn create_enhanced_vine_deck() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_wine_orders_with_residual` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1202:8 [INFO] [stdout] | [INFO] [stdout] 1202 | pub fn create_wine_orders_with_residual() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_actions_with_requirements` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1222:8 [INFO] [stdout] | [INFO] [stdout] 1222 | pub fn validate_actions_with_requirements( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ValidationResult` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1269:10 [INFO] [stdout] | [INFO] [stdout] 1269 | pub enum ValidationResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_valid` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1275:12 [INFO] [stdout] | [INFO] [stdout] 1274 | impl ValidationResult { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] 1275 | pub fn is_valid(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GREY` is never used [INFO] [stdout] --> src/systems/sprites.rs:4:7 [INFO] [stdout] | [INFO] [stdout] 4 | const GREY: Srgba = Srgba::new(0.6, 0.6, 0.6, 1.0); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start_pos`, `target_pos`, `timer`, and `animation_type` are never read [INFO] [stdout] --> src/systems/animations.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct WorkerAnimation { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 7 | pub start_pos: Vec2, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 8 | pub target_pos: Vec2, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 9 | pub timer: Timer, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 10 | pub animation_type: WorkerAnimationType, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Return` and `Bounce` are never constructed [INFO] [stdout] --> src/systems/animations.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub enum WorkerAnimationType { [INFO] [stdout] | ------------------- variants in this enum [INFO] [stdout] 15 | Placement, [INFO] [stdout] 16 | Return, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 17 | Bounce, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `WorkerAnimationType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start_pos`, `target_pos`, `timer`, `animation_type`, and `card_id` are never read [INFO] [stdout] --> src/systems/animations.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct CardAnimation { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 22 | pub start_pos: Vec2, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 23 | pub target_pos: Vec2, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 24 | pub timer: Timer, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 25 | pub animation_type: CardAnimationType, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 26 | pub card_id: u32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Play`, `Discard`, and `Shuffle` are never constructed [INFO] [stdout] --> src/systems/animations.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub enum CardAnimationType { [INFO] [stdout] | ----------------- variants in this enum [INFO] [stdout] 31 | Draw, [INFO] [stdout] 32 | Play, [INFO] [stdout] | ^^^^ [INFO] [stdout] 33 | Discard, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 34 | Shuffle, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CardAnimationType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `timer`, `from_season`, `to_season`, and `overlay_alpha` are never read [INFO] [stdout] --> src/systems/animations.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct SeasonTransition { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 39 | pub timer: Timer, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 40 | pub from_season: GameState, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 41 | pub to_season: GameState, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 42 | pub overlay_alpha: f32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `particles`, `effect_type`, and `timer` are never read [INFO] [stdout] --> src/systems/animations.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct ParticleEffect { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 47 | pub particles: Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 48 | pub effect_type: ParticleType, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 49 | pub timer: Timer, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ParticleEffect` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `position`, `velocity`, `life`, `max_life`, `size`, and `color` are never read [INFO] [stdout] --> src/systems/animations.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 53 | pub struct Particle { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 54 | pub position: Vec2, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 55 | pub velocity: Vec2, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 56 | pub life: f32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 57 | pub max_life: f32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 58 | pub size: f32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 59 | pub color: Color, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Particle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `HarvestSparkles`, `WinePouring`, and `LiraGain` are never constructed [INFO] [stdout] --> src/systems/animations.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 63 | pub enum ParticleType { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] 64 | HarvestSparkles, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 65 | WinePouring, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 66 | LiraGain, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ParticleType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `worker_animation_system` is never used [INFO] [stdout] --> src/systems/animations.rs:113:8 [INFO] [stdout] | [INFO] [stdout] 113 | pub fn worker_animation_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `animate_card_play` is never used [INFO] [stdout] --> src/systems/animations.rs:172:8 [INFO] [stdout] | [INFO] [stdout] 172 | pub fn animate_card_play( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `card_animation_system` is never used [INFO] [stdout] --> src/systems/animations.rs:190:8 [INFO] [stdout] | [INFO] [stdout] 190 | pub fn card_animation_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `season_transition_system` is never used [INFO] [stdout] --> src/systems/animations.rs:287:8 [INFO] [stdout] | [INFO] [stdout] 287 | pub fn season_transition_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_harvest_particles` is never used [INFO] [stdout] --> src/systems/animations.rs:336:8 [INFO] [stdout] | [INFO] [stdout] 336 | pub fn spawn_harvest_particles( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_wine_pouring_effect` is never used [INFO] [stdout] --> src/systems/animations.rs:358:8 [INFO] [stdout] | [INFO] [stdout] 358 | pub fn spawn_wine_pouring_effect( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_lira_particles` is never used [INFO] [stdout] --> src/systems/animations.rs:379:8 [INFO] [stdout] | [INFO] [stdout] 379 | pub fn spawn_lira_particles( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `particle_system` is never used [INFO] [stdout] --> src/systems/animations.rs:401:8 [INFO] [stdout] | [INFO] [stdout] 401 | pub fn particle_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_harvest_particles` is never used [INFO] [stdout] --> src/systems/animations.rs:456:4 [INFO] [stdout] | [INFO] [stdout] 456 | fn create_harvest_particles(center: Vec2, count: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_pouring_particles` is never used [INFO] [stdout] --> src/systems/animations.rs:481:4 [INFO] [stdout] | [INFO] [stdout] 481 | fn create_pouring_particles(center: Vec2, count: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_lira_particles` is never used [INFO] [stdout] --> src/systems/animations.rs:504:4 [INFO] [stdout] | [INFO] [stdout] 504 | fn create_lira_particles(center: Vec2, count: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ease_out_back` is never used [INFO] [stdout] --> src/systems/animations.rs:548:4 [INFO] [stdout] | [INFO] [stdout] 548 | fn ease_out_back(t: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ease_in_out_cubic` is never used [INFO] [stdout] --> src/systems/animations.rs:554:4 [INFO] [stdout] | [INFO] [stdout] 554 | fn ease_in_out_cubic(t: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ease_out_bounce` is never used [INFO] [stdout] --> src/systems/animations.rs:562:4 [INFO] [stdout] | [INFO] [stdout] 562 | fn ease_out_bounce(t: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ease_out_cubic` is never used [INFO] [stdout] --> src/systems/animations.rs:580:4 [INFO] [stdout] | [INFO] [stdout] 580 | fn ease_out_cubic(t: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ease_in_cubic` is never used [INFO] [stdout] --> src/systems/animations.rs:584:4 [INFO] [stdout] | [INFO] [stdout] 584 | fn ease_in_cubic(t: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ease_in_out_back` is never used [INFO] [stdout] --> src/systems/animations.rs:588:4 [INFO] [stdout] | [INFO] [stdout] 588 | fn ease_in_out_back(t: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ease_in_out_sine` is never used [INFO] [stdout] --> src/systems/animations.rs:599:4 [INFO] [stdout] | [INFO] [stdout] 599 | fn ease_in_out_sine(t: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Error` and `PhaseChange` are never constructed [INFO] [stdout] --> src/systems/audio.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 84 | pub enum AudioType { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 91 | Error, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 92 | PhaseChange, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AudioType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `enforce_rules` and `prevent_illegal_moves` are never read [INFO] [stdout] --> src/systems/validation.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct GameValidation { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 6 | pub enforce_rules: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 7 | pub prevent_illegal_moves: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_worker_placement` is never used [INFO] [stdout] --> src/systems/validation.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn validate_worker_placement( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_action_requirements` is never used [INFO] [stdout] --> src/systems/validation.rs:70:8 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn validate_action_requirements( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ValidationResult` is never used [INFO] [stdout] --> src/systems/validation.rs:146:10 [INFO] [stdout] | [INFO] [stdout] 146 | pub enum ValidationResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_valid` and `error_message` are never used [INFO] [stdout] --> src/systems/validation.rs:152:12 [INFO] [stdout] | [INFO] [stdout] 151 | impl ValidationResult { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] 152 | pub fn is_valid(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn error_message(&self) -> Option<&str> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apply_end_game_scoring` is never used [INFO] [stdout] --> src/systems/validation.rs:164:8 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn apply_end_game_scoring( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_tie_breaker` is never used [INFO] [stdout] --> src/systems/validation.rs:186:8 [INFO] [stdout] | [INFO] [stdout] 186 | pub fn check_tie_breaker( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `balance_card_distribution` is never used [INFO] [stdout] --> src/systems/validation.rs:217:8 [INFO] [stdout] | [INFO] [stdout] 217 | pub fn balance_card_distribution(card_decks: &mut ResMut) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `enhanced_tie_breaker` is never used [INFO] [stdout] --> src/systems/endgame.rs:79:8 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn enhanced_tie_breaker( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `display_final_scores` is never used [INFO] [stdout] --> src/systems/endgame.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn display_final_scores( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GREY` is never used [INFO] [stdout] --> src/systems/performance.rs:5:7 [INFO] [stdout] | [INFO] [stdout] 5 | const GREY: Srgba = Srgba::new(0.6, 0.6, 0.6, 1.0); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `enable_sprite_culling`, `limit_animations`, and `cache_ui_updates` are never read [INFO] [stdout] --> src/systems/performance.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct PerformanceSettings { [INFO] [stdout] | ------------------- fields in this struct [INFO] [stdout] 9 | pub enable_sprite_culling: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 10 | pub limit_animations: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | pub cache_ui_updates: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `last_ui_update`, `last_sprite_update`, and `cached_player_data` are never read [INFO] [stdout] --> src/systems/performance.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct FrameCache { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 17 | pub last_ui_update: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 18 | pub last_sprite_update: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 19 | pub cached_player_data: Vec<(PlayerId, u8, u8, u8, u8)>, // (id, vp, lira, workers, cards) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cached_ui_update_system` is never used [INFO] [stdout] --> src/systems/performance.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn cached_ui_update_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `culled_sprite_system` is never used [INFO] [stdout] --> src/systems/performance.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | pub fn culled_sprite_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_position_visible` is never used [INFO] [stdout] --> src/systems/performance.rs:157:4 [INFO] [stdout] | [INFO] [stdout] 157 | fn is_position_visible(pos: Vec2, camera_pos: Vec2, viewport_size: Vec2) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_worker_sprite` is never used [INFO] [stdout] --> src/systems/performance.rs:165:4 [INFO] [stdout] | [INFO] [stdout] 165 | fn spawn_worker_sprite(commands: &mut Commands, worker: &Worker) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_vineyard_sprites` is never used [INFO] [stdout] --> src/systems/performance.rs:197:4 [INFO] [stdout] | [INFO] [stdout] 197 | fn spawn_vineyard_sprites(commands: &mut Commands, vineyard: &Vineyard) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_hand_sprites` is never used [INFO] [stdout] --> src/systems/performance.rs:235:4 [INFO] [stdout] | [INFO] [stdout] 235 | fn spawn_hand_sprites(commands: &mut Commands, hand: &Hand) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup_normal_game` is never used [INFO] [stdout] --> src/systems/balance.rs:246:4 [INFO] [stdout] | [INFO] [stdout] 246 | fn setup_normal_game( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `auto_save_timer` and `last_save_time` are never read [INFO] [stdout] --> src/systems/save.rs:119:9 [INFO] [stdout] | [INFO] [stdout] 118 | pub struct SaveManager { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 119 | pub auto_save_timer: Timer, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 120 | pub last_save_time: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_save_data` is never used [INFO] [stdout] --> src/systems/save.rs:198:4 [INFO] [stdout] | [INFO] [stdout] 198 | fn create_save_data( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `save_to_file` is never used [INFO] [stdout] --> src/systems/save.rs:302:4 [INFO] [stdout] | [INFO] [stdout] 302 | fn save_to_file(save_data: &SaveData) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `field_type_to_u8` is never used [INFO] [stdout] --> src/systems/save.rs:446:4 [INFO] [stdout] | [INFO] [stdout] 446 | fn field_type_to_u8(field_type: FieldType) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `card_art_to_u8` is never used [INFO] [stdout] --> src/systems/save.rs:462:4 [INFO] [stdout] | [INFO] [stdout] 462 | fn card_art_to_u8(art: CardArt) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `vine_ability_to_u8` is never used [INFO] [stdout] --> src/systems/save.rs:484:4 [INFO] [stdout] | [INFO] [stdout] 484 | fn vine_ability_to_u8(ability: VineAbility) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `order_art_to_u8` is never used [INFO] [stdout] --> src/systems/save.rs:500:4 [INFO] [stdout] | [INFO] [stdout] 500 | fn order_art_to_u8(art: OrderArt) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `order_type_to_u8` is never used [INFO] [stdout] --> src/systems/save.rs:516:4 [INFO] [stdout] | [INFO] [stdout] 516 | fn order_type_to_u8(order_type: OrderType) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `action_to_u8` is never used [INFO] [stdout] --> src/systems/save.rs:532:4 [INFO] [stdout] | [INFO] [stdout] 532 | fn action_to_u8(action: ActionSpace) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `state_to_u8` is never used [INFO] [stdout] --> src/systems/save.rs:563:4 [INFO] [stdout] | [INFO] [stdout] 563 | fn state_to_u8(state: &GameState) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `average_vp_per_game` and `most_used_action` are never used [INFO] [stdout] --> src/systems/statistics.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl GameStatistics { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn average_vp_per_game(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn most_used_action(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `u8_to_action` is never used [INFO] [stdout] --> src/systems/statistics.rs:288:4 [INFO] [stdout] | [INFO] [stdout] 288 | fn u8_to_action(value: u8) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `vine_card_count` and `wine_order_count` are never read [INFO] [stdout] --> src/systems/undo.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 66 | pub struct HandSnapshot { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 67 | pub owner_id: u8, [INFO] [stdout] 68 | pub vine_card_count: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 69 | pub wine_order_count: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `HandSnapshot` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `action` is never read [INFO] [stdout] --> src/systems/undo.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 87 | pub struct ActionSpaceSnapshot { [INFO] [stdout] | ------------------- field in this struct [INFO] [stdout] 88 | pub action: u8, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ActionSpaceSnapshot` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `extended_board` is never read [INFO] [stdout] --> src/systems/expansions.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct ExpansionSettings { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 9 | pub extended_board: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `season` are never read [INFO] [stdout] --> src/systems/expansions.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct VisitorCard { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 14 | pub id: u32, [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub season: VisitorSeason, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VisitorCard` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ExtraWorker` and `SwapFields` are never constructed [INFO] [stdout] --> src/systems/expansions.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub enum VisitorEffect { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 30 | ExtraWorker, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 31 | SwapFields, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VisitorEffect` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `VisitorTiming` is never used [INFO] [stdout] --> src/systems/expansions.rs:42:10 [INFO] [stdout] | [INFO] [stdout] 42 | pub enum VisitorTiming { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `board_type` and `bonus_fields` are never read [INFO] [stdout] --> src/systems/expansions.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct AdvancedVineyard { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 50 | pub owner: PlayerId, [INFO] [stdout] 51 | pub board_type: VineyardBoardType, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 52 | pub special_ability: SpecialAbility, [INFO] [stdout] 53 | pub bonus_fields: Vec<(usize, BonusFieldType)>, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Standard` is never constructed [INFO] [stdout] --> src/systems/expansions.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 57 | pub enum VineyardBoardType { [INFO] [stdout] | ----------------- variant in this enum [INFO] [stdout] 58 | Standard, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VineyardBoardType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ExtendedActionSpace` is never used [INFO] [stdout] --> src/systems/expansions.rs:191:10 [INFO] [stdout] | [INFO] [stdout] 191 | pub enum ExtendedActionSpace { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_extended_wine_orders` is never used [INFO] [stdout] --> src/systems/expansions.rs:436:8 [INFO] [stdout] | [INFO] [stdout] 436 | pub fn create_extended_wine_orders() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_vineyard_capacity` is never used [INFO] [stdout] --> src/systems/expansions.rs:471:8 [INFO] [stdout] | [INFO] [stdout] 471 | pub fn check_vineyard_capacity(vineyard: &Vineyard) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `count_planted_vines` is never used [INFO] [stdout] --> src/systems/expansions.rs:475:8 [INFO] [stdout] | [INFO] [stdout] 475 | pub fn count_planted_vines(vineyard: &Vineyard) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_vine_types_planted` is never used [INFO] [stdout] --> src/systems/expansions.rs:479:8 [INFO] [stdout] | [INFO] [stdout] 479 | pub fn get_vine_types_planted(vineyard: &Vineyard) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_enhanced_visitor_cards` is never used [INFO] [stdout] --> src/systems/expansions.rs:486:8 [INFO] [stdout] | [INFO] [stdout] 486 | pub fn create_enhanced_visitor_cards() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Tooltip` is never constructed [INFO] [stdout] --> src/systems/tooltips.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Tooltip { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup_action_button_tooltips` is never used [INFO] [stdout] --> src/systems/tooltips.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | pub fn setup_action_button_tooltips( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup_game_element_tooltips` is never used [INFO] [stdout] --> src/systems/tooltips.rs:359:8 [INFO] [stdout] | [INFO] [stdout] 359 | pub fn setup_game_element_tooltips( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup_status_tooltips` is never used [INFO] [stdout] --> src/systems/tooltips.rs:382:8 [INFO] [stdout] | [INFO] [stdout] 382 | pub fn setup_status_tooltips(commands: &mut Commands) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_rule_explanation` is never used [INFO] [stdout] --> src/systems/tooltips.rs:399:8 [INFO] [stdout] | [INFO] [stdout] 399 | pub fn get_rule_explanation(concept: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AdvancedStructureType` is never used [INFO] [stdout] --> src/systems/advanced.rs:98:10 [INFO] [stdout] | [INFO] [stdout] 98 | pub enum AdvancedStructureType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `cost` and `description` are never used [INFO] [stdout] --> src/systems/advanced.rs:110:12 [INFO] [stdout] | [INFO] [stdout] 109 | impl AdvancedStructureType { [INFO] [stdout] | -------------------------- methods in this implementation [INFO] [stdout] 110 | pub fn cost(&self) -> u8 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | pub fn description(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PlayerPower` is never used [INFO] [stdout] --> src/systems/advanced.rs:201:10 [INFO] [stdout] | [INFO] [stdout] 201 | pub enum PlayerPower { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `description` and `apply_effect` are never used [INFO] [stdout] --> src/systems/advanced.rs:212:12 [INFO] [stdout] | [INFO] [stdout] 211 | impl PlayerPower { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 212 | pub fn description(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn apply_effect(&self, action: ActionSpace, base_result: &mut ActionResult) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ActionResult` is never constructed [INFO] [stdout] --> src/systems/advanced.rs:244:12 [INFO] [stdout] | [INFO] [stdout] 244 | pub struct ActionResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `base_difficulty`, `performance_modifier`, and `game_length_modifier` are never read [INFO] [stdout] --> src/systems/advanced.rs:254:9 [INFO] [stdout] | [INFO] [stdout] 253 | pub struct DifficultyScaling { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 254 | pub base_difficulty: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 255 | pub performance_modifier: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 256 | pub game_length_modifier: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `adjust_for_performance` and `get_effective_difficulty` are never used [INFO] [stdout] --> src/systems/advanced.rs:260:12 [INFO] [stdout] | [INFO] [stdout] 259 | impl DifficultyScaling { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] 260 | pub fn adjust_for_performance(&mut self, games_won: u32, games_played: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 276 | pub fn get_effective_difficulty(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AIPersonality` is never used [INFO] [stdout] --> src/systems/advanced.rs:283:10 [INFO] [stdout] | [INFO] [stdout] 283 | pub enum AIPersonality { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `modify_action_score` is never used [INFO] [stdout] --> src/systems/advanced.rs:291:12 [INFO] [stdout] | [INFO] [stdout] 290 | impl AIPersonality { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] 291 | pub fn modify_action_score(&self, action: ActionSpace, base_score: f32, game_context: &GameContext) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GameContext` is never constructed [INFO] [stdout] --> src/systems/advanced.rs:332:12 [INFO] [stdout] | [INFO] [stdout] 332 | pub struct GameContext { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `premium_wine_orders` and `premium_vine_cards` are never read [INFO] [stdout] --> src/systems/advanced.rs:343:9 [INFO] [stdout] | [INFO] [stdout] 342 | pub struct ExpansionContent { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 343 | pub premium_wine_orders: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 344 | pub premium_vine_cards: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExpansionContent` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `active`, `current_step`, `completed_steps`, and `skip_tutorial` are never read [INFO] [stdout] --> src/systems/tutorial.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct TutorialState { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 7 | pub active: bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 8 | pub current_step: usize, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 9 | pub completed_steps: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 10 | pub skip_tutorial: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `save` is never used [INFO] [stdout] --> src/systems/tutorial.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl TutorialProgress { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn save(&self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TutorialStep` is never constructed [INFO] [stdout] --> src/systems/tutorial.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 36 | pub struct TutorialStep { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TutorialAction` is never used [INFO] [stdout] --> src/systems/tutorial.rs:46:10 [INFO] [stdout] | [INFO] [stdout] 46 | pub enum TutorialAction { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TutorialUI` is never constructed [INFO] [stdout] --> src/systems/tutorial.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | pub struct TutorialUI; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TutorialHighlight` is never constructed [INFO] [stdout] --> src/systems/tutorial.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct TutorialHighlight; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tutorial_main_menu_system` is never used [INFO] [stdout] --> src/systems/tutorial.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn tutorial_main_menu_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_tutorial_intro` is never used [INFO] [stdout] --> src/systems/tutorial.rs:110:4 [INFO] [stdout] | [INFO] [stdout] 110 | fn show_tutorial_intro(commands: &mut Commands, progress: &TutorialProgress) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tutorial_guidance_system` is never used [INFO] [stdout] --> src/systems/tutorial.rs:169:8 [INFO] [stdout] | [INFO] [stdout] 169 | pub fn tutorial_guidance_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_tutorial_step` is never used [INFO] [stdout] --> src/systems/tutorial.rs:206:4 [INFO] [stdout] | [INFO] [stdout] 206 | fn get_tutorial_step(step_num: usize, game_state: &GameState) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_tutorial_step` is never used [INFO] [stdout] --> src/systems/tutorial.rs:308:4 [INFO] [stdout] | [INFO] [stdout] 308 | fn show_tutorial_step(commands: &mut Commands, step: &TutorialStep) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_step_completion` is never used [INFO] [stdout] --> src/systems/tutorial.rs:337:4 [INFO] [stdout] | [INFO] [stdout] 337 | fn check_step_completion( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_step_completion` is never used [INFO] [stdout] --> src/systems/tutorial.rs:362:4 [INFO] [stdout] | [INFO] [stdout] 362 | fn show_step_completion(commands: &mut Commands, message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `complete_tutorial` is never used [INFO] [stdout] --> src/systems/tutorial.rs:390:4 [INFO] [stdout] | [INFO] [stdout] 390 | fn complete_tutorial(tutorial_state: &mut TutorialState, commands: &mut Commands) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tutorial_cleanup_system` is never used [INFO] [stdout] --> src/systems/tutorial.rs:432:8 [INFO] [stdout] | [INFO] [stdout] 432 | pub fn tutorial_cleanup_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `save_progress`, `check_achievement`, and `get_completion_percentage` are never used [INFO] [stdout] --> src/systems/achievements.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl AchievementManager { [INFO] [stdout] | ----------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn save_progress(&self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn check_achievement(&mut self, condition: &AchievementCondition, current_value: u32) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn get_completion_percentage(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AchievementNotification` is never constructed [INFO] [stdout] --> src/systems/achievements.rs:244:12 [INFO] [stdout] | [INFO] [stdout] 244 | pub struct AchievementNotification { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AchievementUI` is never constructed [INFO] [stdout] --> src/systems/achievements.rs:250:12 [INFO] [stdout] | [INFO] [stdout] 250 | pub struct AchievementUI; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `achievement_tracking_system` is never used [INFO] [stdout] --> src/systems/achievements.rs:257:8 [INFO] [stdout] | [INFO] [stdout] 257 | pub fn achievement_tracking_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_achievement_notification` is never used [INFO] [stdout] --> src/systems/achievements.rs:320:4 [INFO] [stdout] | [INFO] [stdout] 320 | fn show_achievement_notification( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `achievement_notification_system` is never used [INFO] [stdout] --> src/systems/achievements.rs:357:8 [INFO] [stdout] | [INFO] [stdout] 357 | pub fn achievement_notification_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `achievement_menu_system` is never used [INFO] [stdout] --> src/systems/achievements.rs:371:8 [INFO] [stdout] | [INFO] [stdout] 371 | pub fn achievement_menu_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_achievement_menu` is never used [INFO] [stdout] --> src/systems/achievements.rs:388:4 [INFO] [stdout] | [INFO] [stdout] 388 | fn show_achievement_menu(commands: &mut Commands, achievement_manager: &AchievementManager) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `save`, `is_new_player`, `should_show_tip`, and `mark_tip_seen` are never used [INFO] [stdout] --> src/systems/onboarding.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl OnboardingState { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn save(&self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn is_new_player(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn should_show_tip(&self, tip_id: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn mark_tip_seen(&mut self, tip_id: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OnboardingUI` is never constructed [INFO] [stdout] --> src/systems/onboarding.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct OnboardingUI; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GameplayTip` is never constructed [INFO] [stdout] --> src/systems/onboarding.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 54 | pub struct GameplayTip { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Tip` is never constructed [INFO] [stdout] --> src/systems/onboarding.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | pub struct Tip { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TipTrigger` is never used [INFO] [stdout] --> src/systems/onboarding.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | pub enum TipTrigger { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `welcome_screen_system` is never used [INFO] [stdout] --> src/systems/onboarding.rs:84:8 [INFO] [stdout] | [INFO] [stdout] 84 | pub fn welcome_screen_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_welcome_screen` is never used [INFO] [stdout] --> src/systems/onboarding.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn show_welcome_screen(commands: &mut Commands, onboarding: &OnboardingState) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gameplay_tips_system` is never used [INFO] [stdout] --> src/systems/onboarding.rs:245:8 [INFO] [stdout] | [INFO] [stdout] 245 | pub fn gameplay_tips_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_contextual_tips` is never used [INFO] [stdout] --> src/systems/onboarding.rs:295:4 [INFO] [stdout] | [INFO] [stdout] 295 | fn get_contextual_tips() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_gameplay_tip` is never used [INFO] [stdout] --> src/systems/onboarding.rs:349:4 [INFO] [stdout] | [INFO] [stdout] 349 | fn show_gameplay_tip(commands: &mut Commands, tip: &Tip) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tip_cleanup_system` is never used [INFO] [stdout] --> src/systems/onboarding.rs:380:8 [INFO] [stdout] | [INFO] [stdout] 380 | pub fn tip_cleanup_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `new_player_encouragement_system` is never used [INFO] [stdout] --> src/systems/onboarding.rs:394:8 [INFO] [stdout] | [INFO] [stdout] 394 | pub fn new_player_encouragement_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `onboarding_cleanup_system` is never used [INFO] [stdout] --> src/systems/onboarding.rs:472:8 [INFO] [stdout] | [INFO] [stdout] 472 | pub fn onboarding_cleanup_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vineyards` [INFO] [stdout] --> src/systems/achievements.rs:261:5 [INFO] [stdout] | [INFO] [stdout] 261 | vineyards: Query<&Vineyard>, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vineyards` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `workers` [INFO] [stdout] --> src/systems/achievements.rs:262:5 [INFO] [stdout] | [INFO] [stdout] 262 | workers: Query<&Worker>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_workers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/systems/achievements.rs:265:5 [INFO] [stdout] | [INFO] [stdout] 265 | config: Res, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `onboarding` [INFO] [stdout] --> src/systems/onboarding.rs:128:49 [INFO] [stdout] | [INFO] [stdout] 128 | fn show_welcome_screen(commands: &mut Commands, onboarding: &OnboardingState) { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_onboarding` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `workers` [INFO] [stdout] --> src/systems/onboarding.rs:252:5 [INFO] [stdout] | [INFO] [stdout] 252 | workers: Query<&Worker>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_workers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `players` [INFO] [stdout] --> src/systems/onboarding.rs:398:5 [INFO] [stdout] | [INFO] [stdout] 398 | players: Query<&Player>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_players` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `game_stats` [INFO] [stdout] --> src/systems/onboarding.rs:399:5 [INFO] [stdout] | [INFO] [stdout] 399 | game_stats: Res, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_game_stats` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `not_testing_mode_enabled` is never used [INFO] [stdout] --> src/main.rs:181:4 [INFO] [stdout] | [INFO] [stdout] 181 | fn not_testing_mode_enabled(test_config: Res) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ButtonText` is never constructed [INFO] [stdout] --> src/components.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct ButtonText; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `wake_up_bonuses` is never read [INFO] [stdout] --> src/components.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct TurnOrder { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 38 | pub wake_up_bonuses: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `PlayExtraWorker` is never constructed [INFO] [stdout] --> src/components.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub enum WakeUpBonus { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 47 | PlayExtraWorker, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `WakeUpBonus` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_wake_up_bonus` is never used [INFO] [stdout] --> src/components.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 50 | impl TurnOrder { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 60 | pub fn get_wake_up_bonus(&self, player_id: PlayerId) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `WineType` is never used [INFO] [stdout] --> src/components.rs:166:10 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum WineType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `can_sell`, `sell_value`, `is_empty`, `has_vine`, `plant_vine`, and `can_plant_vine` are never used [INFO] [stdout] --> src/components.rs:198:12 [INFO] [stdout] | [INFO] [stdout] 173 | impl VineyardField { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn can_sell(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 202 | pub fn sell_value(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 215 | pub fn has_vine(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 219 | pub fn plant_vine(&mut self, vine_type: VineType) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 223 | pub fn can_plant_vine(&self, vine_card: &VineCard, current_total: u8, max_value: u8) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/components.rs:254:8 [INFO] [stdout] | [INFO] [stdout] 236 | impl Vineyard { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 254 | fn get_field_total_value(&self, field_index: usize) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 271 | pub fn get_field_harvest_values(&self, field_index: usize) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 284 | pub fn can_plant_vine(&self, field_index: usize, vine_card: &VineCard, structures: &[Structure]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 317 | pub fn plant_vine(&mut self, field_index: usize, vine_card: VineCard, structures: &[Structure]) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 382 | pub fn can_make_wine(&self, wine_type: WineType, value: u8, structures: &[Structure]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 402 | pub fn fulfill_order(&mut self, order: &WineOrderCard) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 456 | pub fn sell_field(&mut self, field_index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 472 | pub fn buy_back_field(&mut self, field_index: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 489 | pub fn available_fields(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `special_ability` are never read [INFO] [stdout] --> src/components.rs:507:9 [INFO] [stdout] | [INFO] [stdout] 506 | pub struct VineCard { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 507 | pub id: u32, [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 511 | pub special_ability: Option, // New: special vine abilities [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VineCard` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `order_type` are never read [INFO] [stdout] --> src/components.rs:584:9 [INFO] [stdout] | [INFO] [stdout] 583 | pub struct WineOrderCard { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 584 | pub id: u32, [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 590 | pub order_type: OrderType, // New: different order types [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `WineOrderCard` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_with_residual` is never used [INFO] [stdout] --> src/components.rs:654:12 [INFO] [stdout] | [INFO] [stdout] 626 | impl WineOrderCard { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 654 | pub fn new_with_residual(id: u32, red: u8, white: u8, vp: u8, payout: u8, residual: u8) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_available_for_player_count`, `place_grande_on_occupied`, and `has_grande_worker` are never used [INFO] [stdout] --> src/components.rs:766:12 [INFO] [stdout] | [INFO] [stdout] 732 | impl ActionSpaceSlot { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 766 | pub fn is_available_for_player_count(&self, player_count: u8, position: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 775 | pub fn place_grande_on_occupied(&mut self, player_id: PlayerId) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 787 | pub fn has_grande_worker(&self, player_id: PlayerId) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `WineExpertise` is never constructed [INFO] [stdout] --> src/components.rs:850:5 [INFO] [stdout] | [INFO] [stdout] 846 | pub enum PapaAbility { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 850 | WineExpertise, // Make blush wine more efficiently [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PapaAbility` 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: methods `add_visitor_card` and `total_cards` are never used [INFO] [stdout] --> src/components.rs:1044:12 [INFO] [stdout] | [INFO] [stdout] 1035 | impl Hand { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 1044 | pub fn add_visitor_card(&mut self, visitor: VisitorCard) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1050 | pub fn total_cards(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `player_id` is never read [INFO] [stdout] --> src/components.rs:1061:9 [INFO] [stdout] | [INFO] [stdout] 1060 | pub struct PlayerDashboard { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 1061 | pub player_id: PlayerId, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `player_id` is never read [INFO] [stdout] --> src/components.rs:1074:9 [INFO] [stdout] | [INFO] [stdout] 1073 | pub struct WorkerSprite { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 1074 | pub player_id: PlayerId, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `player_id` and `field_index` are never read [INFO] [stdout] --> src/components.rs:1079:9 [INFO] [stdout] | [INFO] [stdout] 1078 | pub struct VineyardSprite { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 1079 | pub player_id: PlayerId, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1080 | pub field_index: usize, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `card_type` is never read [INFO] [stdout] --> src/components.rs:1085:9 [INFO] [stdout] | [INFO] [stdout] 1084 | pub struct CardSprite { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 1085 | pub card_type: CardType, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `worker_texture`, `vine_card_texture`, `wine_order_card_texture`, and `field_texture` are never read [INFO] [stdout] --> src/components.rs:1099:9 [INFO] [stdout] | [INFO] [stdout] 1098 | pub struct GameAssets { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 1099 | pub worker_texture: Handle, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 1100 | pub vine_card_texture: Handle, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 1101 | pub wine_order_card_texture: Handle, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 1102 | pub field_texture: Handle, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `ai_enabled`, `ai_difficulty`, `audio_enabled`, `sfx_volume`, and `music_volume` are never read [INFO] [stdout] --> src/components.rs:1107:9 [INFO] [stdout] | [INFO] [stdout] 1106 | pub struct GameSettings { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 1107 | pub ai_enabled: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 1108 | pub ai_difficulty: u8, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 1109 | pub audio_enabled: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 1110 | pub sfx_volume: f32, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 1111 | pub music_volume: f32, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `MediumCellar`, `LargeCellar`, and `Cottage` are never constructed [INFO] [stdout] --> src/components.rs:1144:5 [INFO] [stdout] | [INFO] [stdout] 1140 | pub enum StructureType { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 1144 | MediumCellar, // $4 - Store 4-6 value wines, make blush [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 1145 | LargeCellar, // $6 - Store 7-9 value wines, make sparkling [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 1146 | Windmill, // $5 - +1 VP at end for every 7 lira [INFO] [stdout] 1147 | Cottage, // $4 - Draw extra visitor in fall [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StructureType` 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: method `annual_income` is never used [INFO] [stdout] --> src/components.rs:1169:12 [INFO] [stdout] | [INFO] [stdout] 1160 | impl ResidualPaymentTracker { [INFO] [stdout] | --------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1169 | pub fn annual_income(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GREY` is never used [INFO] [stdout] --> src/systems/input.rs:7:7 [INFO] [stdout] | [INFO] [stdout] 7 | const GREY: Srgba = Srgba::new(0.6, 0.6, 0.6, 1.0); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GAME_OVER_TEXT` is never used [INFO] [stdout] --> src/systems/game_logic.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const GAME_OVER_TEXT: &str = "GAME OVER!\n{} WINS with {} Victory Points!\n\nPress SPACE to play again"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apply_residual_payments_system` is never used [INFO] [stdout] --> src/systems/game_logic.rs:746:8 [INFO] [stdout] | [INFO] [stdout] 746 | pub fn apply_residual_payments_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `enhanced_make_wine_action` is never used [INFO] [stdout] --> src/systems/game_logic.rs:804:8 [INFO] [stdout] | [INFO] [stdout] 804 | pub fn enhanced_make_wine_action( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `owner` and `expires_end_of_year` are never read [INFO] [stdout] --> src/systems/game_logic.rs:897:9 [INFO] [stdout] | [INFO] [stdout] 896 | pub struct TemporaryWorker { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 897 | pub owner: PlayerId, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 898 | pub expires_end_of_year: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fall_draw_visitors_system` is never used [INFO] [stdout] --> src/systems/game_logic.rs:952:8 [INFO] [stdout] | [INFO] [stdout] 952 | pub fn fall_draw_visitors_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fulfill_order_with_residual` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1008:8 [INFO] [stdout] | [INFO] [stdout] 1008 | pub fn fulfill_order_with_residual( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `plant_vine_with_requirements_system` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1035:8 [INFO] [stdout] | [INFO] [stdout] 1035 | pub fn plant_vine_with_requirements_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `field_transaction_system` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1083:8 [INFO] [stdout] | [INFO] [stdout] 1083 | pub fn field_transaction_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `enhanced_worker_placement_system` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1118:8 [INFO] [stdout] | [INFO] [stdout] 1118 | pub fn enhanced_worker_placement_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_enhanced_vine_deck` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1151:8 [INFO] [stdout] | [INFO] [stdout] 1151 | pub fn create_enhanced_vine_deck() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_wine_orders_with_residual` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1202:8 [INFO] [stdout] | [INFO] [stdout] 1202 | pub fn create_wine_orders_with_residual() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_actions_with_requirements` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1222:8 [INFO] [stdout] | [INFO] [stdout] 1222 | pub fn validate_actions_with_requirements( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ValidationResult` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1269:10 [INFO] [stdout] | [INFO] [stdout] 1269 | pub enum ValidationResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_valid` is never used [INFO] [stdout] --> src/systems/game_logic.rs:1275:12 [INFO] [stdout] | [INFO] [stdout] 1274 | impl ValidationResult { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] 1275 | pub fn is_valid(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GREY` is never used [INFO] [stdout] --> src/systems/sprites.rs:4:7 [INFO] [stdout] | [INFO] [stdout] 4 | const GREY: Srgba = Srgba::new(0.6, 0.6, 0.6, 1.0); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start_pos`, `target_pos`, `timer`, and `animation_type` are never read [INFO] [stdout] --> src/systems/animations.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct WorkerAnimation { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 7 | pub start_pos: Vec2, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 8 | pub target_pos: Vec2, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 9 | pub timer: Timer, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 10 | pub animation_type: WorkerAnimationType, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Return` and `Bounce` are never constructed [INFO] [stdout] --> src/systems/animations.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub enum WorkerAnimationType { [INFO] [stdout] | ------------------- variants in this enum [INFO] [stdout] 15 | Placement, [INFO] [stdout] 16 | Return, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 17 | Bounce, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `WorkerAnimationType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start_pos`, `target_pos`, `timer`, `animation_type`, and `card_id` are never read [INFO] [stdout] --> src/systems/animations.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct CardAnimation { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 22 | pub start_pos: Vec2, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 23 | pub target_pos: Vec2, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 24 | pub timer: Timer, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 25 | pub animation_type: CardAnimationType, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 26 | pub card_id: u32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Play`, `Discard`, and `Shuffle` are never constructed [INFO] [stdout] --> src/systems/animations.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub enum CardAnimationType { [INFO] [stdout] | ----------------- variants in this enum [INFO] [stdout] 31 | Draw, [INFO] [stdout] 32 | Play, [INFO] [stdout] | ^^^^ [INFO] [stdout] 33 | Discard, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 34 | Shuffle, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CardAnimationType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `timer`, `from_season`, `to_season`, and `overlay_alpha` are never read [INFO] [stdout] --> src/systems/animations.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct SeasonTransition { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 39 | pub timer: Timer, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 40 | pub from_season: GameState, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 41 | pub to_season: GameState, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 42 | pub overlay_alpha: f32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `particles`, `effect_type`, and `timer` are never read [INFO] [stdout] --> src/systems/animations.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct ParticleEffect { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 47 | pub particles: Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 48 | pub effect_type: ParticleType, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 49 | pub timer: Timer, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ParticleEffect` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `position`, `velocity`, `life`, `max_life`, `size`, and `color` are never read [INFO] [stdout] --> src/systems/animations.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 53 | pub struct Particle { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 54 | pub position: Vec2, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 55 | pub velocity: Vec2, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 56 | pub life: f32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 57 | pub max_life: f32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 58 | pub size: f32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 59 | pub color: Color, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Particle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `HarvestSparkles`, `WinePouring`, and `LiraGain` are never constructed [INFO] [stdout] --> src/systems/animations.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 63 | pub enum ParticleType { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] 64 | HarvestSparkles, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 65 | WinePouring, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 66 | LiraGain, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ParticleType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `worker_animation_system` is never used [INFO] [stdout] --> src/systems/animations.rs:113:8 [INFO] [stdout] | [INFO] [stdout] 113 | pub fn worker_animation_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `animate_card_play` is never used [INFO] [stdout] --> src/systems/animations.rs:172:8 [INFO] [stdout] | [INFO] [stdout] 172 | pub fn animate_card_play( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `card_animation_system` is never used [INFO] [stdout] --> src/systems/animations.rs:190:8 [INFO] [stdout] | [INFO] [stdout] 190 | pub fn card_animation_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `season_transition_system` is never used [INFO] [stdout] --> src/systems/animations.rs:287:8 [INFO] [stdout] | [INFO] [stdout] 287 | pub fn season_transition_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_harvest_particles` is never used [INFO] [stdout] --> src/systems/animations.rs:336:8 [INFO] [stdout] | [INFO] [stdout] 336 | pub fn spawn_harvest_particles( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_wine_pouring_effect` is never used [INFO] [stdout] --> src/systems/animations.rs:358:8 [INFO] [stdout] | [INFO] [stdout] 358 | pub fn spawn_wine_pouring_effect( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_lira_particles` is never used [INFO] [stdout] --> src/systems/animations.rs:379:8 [INFO] [stdout] | [INFO] [stdout] 379 | pub fn spawn_lira_particles( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `particle_system` is never used [INFO] [stdout] --> src/systems/animations.rs:401:8 [INFO] [stdout] | [INFO] [stdout] 401 | pub fn particle_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_harvest_particles` is never used [INFO] [stdout] --> src/systems/animations.rs:456:4 [INFO] [stdout] | [INFO] [stdout] 456 | fn create_harvest_particles(center: Vec2, count: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_pouring_particles` is never used [INFO] [stdout] --> src/systems/animations.rs:481:4 [INFO] [stdout] | [INFO] [stdout] 481 | fn create_pouring_particles(center: Vec2, count: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_lira_particles` is never used [INFO] [stdout] --> src/systems/animations.rs:504:4 [INFO] [stdout] | [INFO] [stdout] 504 | fn create_lira_particles(center: Vec2, count: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ease_out_back` is never used [INFO] [stdout] --> src/systems/animations.rs:548:4 [INFO] [stdout] | [INFO] [stdout] 548 | fn ease_out_back(t: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ease_in_out_cubic` is never used [INFO] [stdout] --> src/systems/animations.rs:554:4 [INFO] [stdout] | [INFO] [stdout] 554 | fn ease_in_out_cubic(t: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ease_out_bounce` is never used [INFO] [stdout] --> src/systems/animations.rs:562:4 [INFO] [stdout] | [INFO] [stdout] 562 | fn ease_out_bounce(t: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ease_out_cubic` is never used [INFO] [stdout] --> src/systems/animations.rs:580:4 [INFO] [stdout] | [INFO] [stdout] 580 | fn ease_out_cubic(t: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ease_in_cubic` is never used [INFO] [stdout] --> src/systems/animations.rs:584:4 [INFO] [stdout] | [INFO] [stdout] 584 | fn ease_in_cubic(t: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ease_in_out_back` is never used [INFO] [stdout] --> src/systems/animations.rs:588:4 [INFO] [stdout] | [INFO] [stdout] 588 | fn ease_in_out_back(t: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ease_in_out_sine` is never used [INFO] [stdout] --> src/systems/animations.rs:599:4 [INFO] [stdout] | [INFO] [stdout] 599 | fn ease_in_out_sine(t: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Error` and `PhaseChange` are never constructed [INFO] [stdout] --> src/systems/audio.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 84 | pub enum AudioType { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 91 | Error, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 92 | PhaseChange, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AudioType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `enforce_rules` and `prevent_illegal_moves` are never read [INFO] [stdout] --> src/systems/validation.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct GameValidation { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 6 | pub enforce_rules: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 7 | pub prevent_illegal_moves: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_worker_placement` is never used [INFO] [stdout] --> src/systems/validation.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn validate_worker_placement( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_action_requirements` is never used [INFO] [stdout] --> src/systems/validation.rs:70:8 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn validate_action_requirements( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ValidationResult` is never used [INFO] [stdout] --> src/systems/validation.rs:146:10 [INFO] [stdout] | [INFO] [stdout] 146 | pub enum ValidationResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_valid` and `error_message` are never used [INFO] [stdout] --> src/systems/validation.rs:152:12 [INFO] [stdout] | [INFO] [stdout] 151 | impl ValidationResult { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] 152 | pub fn is_valid(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn error_message(&self) -> Option<&str> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apply_end_game_scoring` is never used [INFO] [stdout] --> src/systems/validation.rs:164:8 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn apply_end_game_scoring( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_tie_breaker` is never used [INFO] [stdout] --> src/systems/validation.rs:186:8 [INFO] [stdout] | [INFO] [stdout] 186 | pub fn check_tie_breaker( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `balance_card_distribution` is never used [INFO] [stdout] --> src/systems/validation.rs:217:8 [INFO] [stdout] | [INFO] [stdout] 217 | pub fn balance_card_distribution(card_decks: &mut ResMut) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `enhanced_tie_breaker` is never used [INFO] [stdout] --> src/systems/endgame.rs:79:8 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn enhanced_tie_breaker( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `display_final_scores` is never used [INFO] [stdout] --> src/systems/endgame.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn display_final_scores( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GREY` is never used [INFO] [stdout] --> src/systems/performance.rs:5:7 [INFO] [stdout] | [INFO] [stdout] 5 | const GREY: Srgba = Srgba::new(0.6, 0.6, 0.6, 1.0); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `enable_sprite_culling`, `limit_animations`, and `cache_ui_updates` are never read [INFO] [stdout] --> src/systems/performance.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct PerformanceSettings { [INFO] [stdout] | ------------------- fields in this struct [INFO] [stdout] 9 | pub enable_sprite_culling: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 10 | pub limit_animations: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | pub cache_ui_updates: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `last_ui_update`, `last_sprite_update`, and `cached_player_data` are never read [INFO] [stdout] --> src/systems/performance.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct FrameCache { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 17 | pub last_ui_update: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 18 | pub last_sprite_update: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 19 | pub cached_player_data: Vec<(PlayerId, u8, u8, u8, u8)>, // (id, vp, lira, workers, cards) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cached_ui_update_system` is never used [INFO] [stdout] --> src/systems/performance.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn cached_ui_update_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `culled_sprite_system` is never used [INFO] [stdout] --> src/systems/performance.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | pub fn culled_sprite_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_position_visible` is never used [INFO] [stdout] --> src/systems/performance.rs:157:4 [INFO] [stdout] | [INFO] [stdout] 157 | fn is_position_visible(pos: Vec2, camera_pos: Vec2, viewport_size: Vec2) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_worker_sprite` is never used [INFO] [stdout] --> src/systems/performance.rs:165:4 [INFO] [stdout] | [INFO] [stdout] 165 | fn spawn_worker_sprite(commands: &mut Commands, worker: &Worker) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_vineyard_sprites` is never used [INFO] [stdout] --> src/systems/performance.rs:197:4 [INFO] [stdout] | [INFO] [stdout] 197 | fn spawn_vineyard_sprites(commands: &mut Commands, vineyard: &Vineyard) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_hand_sprites` is never used [INFO] [stdout] --> src/systems/performance.rs:235:4 [INFO] [stdout] | [INFO] [stdout] 235 | fn spawn_hand_sprites(commands: &mut Commands, hand: &Hand) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup_normal_game` is never used [INFO] [stdout] --> src/systems/balance.rs:246:4 [INFO] [stdout] | [INFO] [stdout] 246 | fn setup_normal_game( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `auto_save_timer` and `last_save_time` are never read [INFO] [stdout] --> src/systems/save.rs:119:9 [INFO] [stdout] | [INFO] [stdout] 118 | pub struct SaveManager { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 119 | pub auto_save_timer: Timer, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 120 | pub last_save_time: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_save_data` is never used [INFO] [stdout] --> src/systems/save.rs:198:4 [INFO] [stdout] | [INFO] [stdout] 198 | fn create_save_data( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `save_to_file` is never used [INFO] [stdout] --> src/systems/save.rs:302:4 [INFO] [stdout] | [INFO] [stdout] 302 | fn save_to_file(save_data: &SaveData) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `field_type_to_u8` is never used [INFO] [stdout] --> src/systems/save.rs:446:4 [INFO] [stdout] | [INFO] [stdout] 446 | fn field_type_to_u8(field_type: FieldType) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `card_art_to_u8` is never used [INFO] [stdout] --> src/systems/save.rs:462:4 [INFO] [stdout] | [INFO] [stdout] 462 | fn card_art_to_u8(art: CardArt) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `vine_ability_to_u8` is never used [INFO] [stdout] --> src/systems/save.rs:484:4 [INFO] [stdout] | [INFO] [stdout] 484 | fn vine_ability_to_u8(ability: VineAbility) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `order_art_to_u8` is never used [INFO] [stdout] --> src/systems/save.rs:500:4 [INFO] [stdout] | [INFO] [stdout] 500 | fn order_art_to_u8(art: OrderArt) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `order_type_to_u8` is never used [INFO] [stdout] --> src/systems/save.rs:516:4 [INFO] [stdout] | [INFO] [stdout] 516 | fn order_type_to_u8(order_type: OrderType) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `action_to_u8` is never used [INFO] [stdout] --> src/systems/save.rs:532:4 [INFO] [stdout] | [INFO] [stdout] 532 | fn action_to_u8(action: ActionSpace) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `state_to_u8` is never used [INFO] [stdout] --> src/systems/save.rs:563:4 [INFO] [stdout] | [INFO] [stdout] 563 | fn state_to_u8(state: &GameState) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `average_vp_per_game` and `most_used_action` are never used [INFO] [stdout] --> src/systems/statistics.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl GameStatistics { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn average_vp_per_game(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn most_used_action(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `u8_to_action` is never used [INFO] [stdout] --> src/systems/statistics.rs:288:4 [INFO] [stdout] | [INFO] [stdout] 288 | fn u8_to_action(value: u8) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `vine_card_count` and `wine_order_count` are never read [INFO] [stdout] --> src/systems/undo.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 66 | pub struct HandSnapshot { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 67 | pub owner_id: u8, [INFO] [stdout] 68 | pub vine_card_count: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 69 | pub wine_order_count: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `HandSnapshot` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `action` is never read [INFO] [stdout] --> src/systems/undo.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 87 | pub struct ActionSpaceSnapshot { [INFO] [stdout] | ------------------- field in this struct [INFO] [stdout] 88 | pub action: u8, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ActionSpaceSnapshot` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `extended_board` is never read [INFO] [stdout] --> src/systems/expansions.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct ExpansionSettings { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 9 | pub extended_board: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `season` are never read [INFO] [stdout] --> src/systems/expansions.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct VisitorCard { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 14 | pub id: u32, [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub season: VisitorSeason, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VisitorCard` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ExtraWorker` and `SwapFields` are never constructed [INFO] [stdout] --> src/systems/expansions.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub enum VisitorEffect { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 30 | ExtraWorker, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 31 | SwapFields, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VisitorEffect` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `VisitorTiming` is never used [INFO] [stdout] --> src/systems/expansions.rs:42:10 [INFO] [stdout] | [INFO] [stdout] 42 | pub enum VisitorTiming { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `board_type` and `bonus_fields` are never read [INFO] [stdout] --> src/systems/expansions.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct AdvancedVineyard { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 50 | pub owner: PlayerId, [INFO] [stdout] 51 | pub board_type: VineyardBoardType, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 52 | pub special_ability: SpecialAbility, [INFO] [stdout] 53 | pub bonus_fields: Vec<(usize, BonusFieldType)>, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Standard` is never constructed [INFO] [stdout] --> src/systems/expansions.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 57 | pub enum VineyardBoardType { [INFO] [stdout] | ----------------- variant in this enum [INFO] [stdout] 58 | Standard, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VineyardBoardType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ExtendedActionSpace` is never used [INFO] [stdout] --> src/systems/expansions.rs:191:10 [INFO] [stdout] | [INFO] [stdout] 191 | pub enum ExtendedActionSpace { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_extended_wine_orders` is never used [INFO] [stdout] --> src/systems/expansions.rs:436:8 [INFO] [stdout] | [INFO] [stdout] 436 | pub fn create_extended_wine_orders() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_vineyard_capacity` is never used [INFO] [stdout] --> src/systems/expansions.rs:471:8 [INFO] [stdout] | [INFO] [stdout] 471 | pub fn check_vineyard_capacity(vineyard: &Vineyard) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `count_planted_vines` is never used [INFO] [stdout] --> src/systems/expansions.rs:475:8 [INFO] [stdout] | [INFO] [stdout] 475 | pub fn count_planted_vines(vineyard: &Vineyard) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_vine_types_planted` is never used [INFO] [stdout] --> src/systems/expansions.rs:479:8 [INFO] [stdout] | [INFO] [stdout] 479 | pub fn get_vine_types_planted(vineyard: &Vineyard) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_enhanced_visitor_cards` is never used [INFO] [stdout] --> src/systems/expansions.rs:486:8 [INFO] [stdout] | [INFO] [stdout] 486 | pub fn create_enhanced_visitor_cards() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Tooltip` is never constructed [INFO] [stdout] --> src/systems/tooltips.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Tooltip { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup_action_button_tooltips` is never used [INFO] [stdout] --> src/systems/tooltips.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | pub fn setup_action_button_tooltips( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup_game_element_tooltips` is never used [INFO] [stdout] --> src/systems/tooltips.rs:359:8 [INFO] [stdout] | [INFO] [stdout] 359 | pub fn setup_game_element_tooltips( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup_status_tooltips` is never used [INFO] [stdout] --> src/systems/tooltips.rs:382:8 [INFO] [stdout] | [INFO] [stdout] 382 | pub fn setup_status_tooltips(commands: &mut Commands) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_rule_explanation` is never used [INFO] [stdout] --> src/systems/tooltips.rs:399:8 [INFO] [stdout] | [INFO] [stdout] 399 | pub fn get_rule_explanation(concept: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AdvancedStructureType` is never used [INFO] [stdout] --> src/systems/advanced.rs:98:10 [INFO] [stdout] | [INFO] [stdout] 98 | pub enum AdvancedStructureType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `cost` and `description` are never used [INFO] [stdout] --> src/systems/advanced.rs:110:12 [INFO] [stdout] | [INFO] [stdout] 109 | impl AdvancedStructureType { [INFO] [stdout] | -------------------------- methods in this implementation [INFO] [stdout] 110 | pub fn cost(&self) -> u8 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | pub fn description(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PlayerPower` is never used [INFO] [stdout] --> src/systems/advanced.rs:201:10 [INFO] [stdout] | [INFO] [stdout] 201 | pub enum PlayerPower { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `description` and `apply_effect` are never used [INFO] [stdout] --> src/systems/advanced.rs:212:12 [INFO] [stdout] | [INFO] [stdout] 211 | impl PlayerPower { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 212 | pub fn description(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn apply_effect(&self, action: ActionSpace, base_result: &mut ActionResult) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ActionResult` is never constructed [INFO] [stdout] --> src/systems/advanced.rs:244:12 [INFO] [stdout] | [INFO] [stdout] 244 | pub struct ActionResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `base_difficulty`, `performance_modifier`, and `game_length_modifier` are never read [INFO] [stdout] --> src/systems/advanced.rs:254:9 [INFO] [stdout] | [INFO] [stdout] 253 | pub struct DifficultyScaling { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 254 | pub base_difficulty: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 255 | pub performance_modifier: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 256 | pub game_length_modifier: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `adjust_for_performance` and `get_effective_difficulty` are never used [INFO] [stdout] --> src/systems/advanced.rs:260:12 [INFO] [stdout] | [INFO] [stdout] 259 | impl DifficultyScaling { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] 260 | pub fn adjust_for_performance(&mut self, games_won: u32, games_played: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 276 | pub fn get_effective_difficulty(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AIPersonality` is never used [INFO] [stdout] --> src/systems/advanced.rs:283:10 [INFO] [stdout] | [INFO] [stdout] 283 | pub enum AIPersonality { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `modify_action_score` is never used [INFO] [stdout] --> src/systems/advanced.rs:291:12 [INFO] [stdout] | [INFO] [stdout] 290 | impl AIPersonality { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] 291 | pub fn modify_action_score(&self, action: ActionSpace, base_score: f32, game_context: &GameContext) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GameContext` is never constructed [INFO] [stdout] --> src/systems/advanced.rs:332:12 [INFO] [stdout] | [INFO] [stdout] 332 | pub struct GameContext { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `premium_wine_orders` and `premium_vine_cards` are never read [INFO] [stdout] --> src/systems/advanced.rs:343:9 [INFO] [stdout] | [INFO] [stdout] 342 | pub struct ExpansionContent { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 343 | pub premium_wine_orders: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 344 | pub premium_vine_cards: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExpansionContent` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `active`, `current_step`, `completed_steps`, and `skip_tutorial` are never read [INFO] [stdout] --> src/systems/tutorial.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct TutorialState { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 7 | pub active: bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 8 | pub current_step: usize, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 9 | pub completed_steps: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 10 | pub skip_tutorial: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `save` is never used [INFO] [stdout] --> src/systems/tutorial.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl TutorialProgress { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn save(&self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TutorialStep` is never constructed [INFO] [stdout] --> src/systems/tutorial.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 36 | pub struct TutorialStep { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TutorialAction` is never used [INFO] [stdout] --> src/systems/tutorial.rs:46:10 [INFO] [stdout] | [INFO] [stdout] 46 | pub enum TutorialAction { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TutorialUI` is never constructed [INFO] [stdout] --> src/systems/tutorial.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | pub struct TutorialUI; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TutorialHighlight` is never constructed [INFO] [stdout] --> src/systems/tutorial.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct TutorialHighlight; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tutorial_main_menu_system` is never used [INFO] [stdout] --> src/systems/tutorial.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn tutorial_main_menu_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_tutorial_intro` is never used [INFO] [stdout] --> src/systems/tutorial.rs:110:4 [INFO] [stdout] | [INFO] [stdout] 110 | fn show_tutorial_intro(commands: &mut Commands, progress: &TutorialProgress) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tutorial_guidance_system` is never used [INFO] [stdout] --> src/systems/tutorial.rs:169:8 [INFO] [stdout] | [INFO] [stdout] 169 | pub fn tutorial_guidance_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_tutorial_step` is never used [INFO] [stdout] --> src/systems/tutorial.rs:206:4 [INFO] [stdout] | [INFO] [stdout] 206 | fn get_tutorial_step(step_num: usize, game_state: &GameState) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_tutorial_step` is never used [INFO] [stdout] --> src/systems/tutorial.rs:308:4 [INFO] [stdout] | [INFO] [stdout] 308 | fn show_tutorial_step(commands: &mut Commands, step: &TutorialStep) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_step_completion` is never used [INFO] [stdout] --> src/systems/tutorial.rs:337:4 [INFO] [stdout] | [INFO] [stdout] 337 | fn check_step_completion( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_step_completion` is never used [INFO] [stdout] --> src/systems/tutorial.rs:362:4 [INFO] [stdout] | [INFO] [stdout] 362 | fn show_step_completion(commands: &mut Commands, message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `complete_tutorial` is never used [INFO] [stdout] --> src/systems/tutorial.rs:390:4 [INFO] [stdout] | [INFO] [stdout] 390 | fn complete_tutorial(tutorial_state: &mut TutorialState, commands: &mut Commands) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tutorial_cleanup_system` is never used [INFO] [stdout] --> src/systems/tutorial.rs:432:8 [INFO] [stdout] | [INFO] [stdout] 432 | pub fn tutorial_cleanup_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `save_progress`, `check_achievement`, and `get_completion_percentage` are never used [INFO] [stdout] --> src/systems/achievements.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl AchievementManager { [INFO] [stdout] | ----------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn save_progress(&self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn check_achievement(&mut self, condition: &AchievementCondition, current_value: u32) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn get_completion_percentage(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AchievementNotification` is never constructed [INFO] [stdout] --> src/systems/achievements.rs:244:12 [INFO] [stdout] | [INFO] [stdout] 244 | pub struct AchievementNotification { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AchievementUI` is never constructed [INFO] [stdout] --> src/systems/achievements.rs:250:12 [INFO] [stdout] | [INFO] [stdout] 250 | pub struct AchievementUI; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `achievement_tracking_system` is never used [INFO] [stdout] --> src/systems/achievements.rs:257:8 [INFO] [stdout] | [INFO] [stdout] 257 | pub fn achievement_tracking_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_achievement_notification` is never used [INFO] [stdout] --> src/systems/achievements.rs:320:4 [INFO] [stdout] | [INFO] [stdout] 320 | fn show_achievement_notification( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `achievement_notification_system` is never used [INFO] [stdout] --> src/systems/achievements.rs:357:8 [INFO] [stdout] | [INFO] [stdout] 357 | pub fn achievement_notification_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `achievement_menu_system` is never used [INFO] [stdout] --> src/systems/achievements.rs:371:8 [INFO] [stdout] | [INFO] [stdout] 371 | pub fn achievement_menu_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_achievement_menu` is never used [INFO] [stdout] --> src/systems/achievements.rs:388:4 [INFO] [stdout] | [INFO] [stdout] 388 | fn show_achievement_menu(commands: &mut Commands, achievement_manager: &AchievementManager) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `save`, `is_new_player`, `should_show_tip`, and `mark_tip_seen` are never used [INFO] [stdout] --> src/systems/onboarding.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl OnboardingState { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn save(&self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn is_new_player(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn should_show_tip(&self, tip_id: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn mark_tip_seen(&mut self, tip_id: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OnboardingUI` is never constructed [INFO] [stdout] --> src/systems/onboarding.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct OnboardingUI; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GameplayTip` is never constructed [INFO] [stdout] --> src/systems/onboarding.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 54 | pub struct GameplayTip { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Tip` is never constructed [INFO] [stdout] --> src/systems/onboarding.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | pub struct Tip { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TipTrigger` is never used [INFO] [stdout] --> src/systems/onboarding.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | pub enum TipTrigger { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `welcome_screen_system` is never used [INFO] [stdout] --> src/systems/onboarding.rs:84:8 [INFO] [stdout] | [INFO] [stdout] 84 | pub fn welcome_screen_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_welcome_screen` is never used [INFO] [stdout] --> src/systems/onboarding.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn show_welcome_screen(commands: &mut Commands, onboarding: &OnboardingState) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gameplay_tips_system` is never used [INFO] [stdout] --> src/systems/onboarding.rs:245:8 [INFO] [stdout] | [INFO] [stdout] 245 | pub fn gameplay_tips_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_contextual_tips` is never used [INFO] [stdout] --> src/systems/onboarding.rs:295:4 [INFO] [stdout] | [INFO] [stdout] 295 | fn get_contextual_tips() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_gameplay_tip` is never used [INFO] [stdout] --> src/systems/onboarding.rs:349:4 [INFO] [stdout] | [INFO] [stdout] 349 | fn show_gameplay_tip(commands: &mut Commands, tip: &Tip) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tip_cleanup_system` is never used [INFO] [stdout] --> src/systems/onboarding.rs:380:8 [INFO] [stdout] | [INFO] [stdout] 380 | pub fn tip_cleanup_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `new_player_encouragement_system` is never used [INFO] [stdout] --> src/systems/onboarding.rs:394:8 [INFO] [stdout] | [INFO] [stdout] 394 | pub fn new_player_encouragement_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `onboarding_cleanup_system` is never used [INFO] [stdout] --> src/systems/onboarding.rs:472:8 [INFO] [stdout] | [INFO] [stdout] 472 | pub fn onboarding_cleanup_system( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 02s [INFO] running `Command { std: "docker" "inspect" "5d3e366452227ed070f6001008d4888f316da250e7729d82ad406662fd31734a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5d3e366452227ed070f6001008d4888f316da250e7729d82ad406662fd31734a", kill_on_drop: false }` [INFO] [stdout] 5d3e366452227ed070f6001008d4888f316da250e7729d82ad406662fd31734a