From 2117326f90ee09c1f27a55a42609506c36d8e9b1 Mon Sep 17 00:00:00 2001 From: Christian Nieves Date: Mon, 9 Dec 2024 20:41:32 -0600 Subject: [PATCH] my first crate --- Cargo.lock | 319 +++++++++++++++++++++++++++++++++++----- Cargo.toml | 21 ++- src/bin/minesweeper.rs | 65 ++++++++ src/bin/snake.rs | 7 +- src/debug_plugin/mod.rs | 6 + src/lib.rs | 1 + 6 files changed, 371 insertions(+), 48 deletions(-) create mode 100644 src/bin/minesweeper.rs create mode 100644 src/debug_plugin/mod.rs create mode 100644 src/lib.rs diff --git a/Cargo.lock b/Cargo.lock index 0671bf9..59bd766 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,6 +2,12 @@ # It is not intended for manual editing. version = 4 +[[package]] +name = "RustyXML" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b5ace29ee3216de37c0546865ad08edef58b0f9e76838ed8959a84a990e58c5" + [[package]] name = "ab_glyph" version = "0.2.29" @@ -238,7 +244,7 @@ checksum = "f548ad2c4031f2902e3edc1f29c29e835829437de49562d8eb5dc5584d3a1043" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -386,7 +392,7 @@ checksum = "3afc67826e0a4347414545e022e748f42550a577a502b26af44e6d03742c9266" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -499,7 +505,7 @@ dependencies = [ "bevy_macro_utils", "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -585,7 +591,7 @@ checksum = "e141b7eda52a23bb88740b37a291e26394524cb9ee3b034c7014669671fc2bb5" dependencies = [ "bevy_macro_utils", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -645,7 +651,7 @@ dependencies = [ "bevy_macro_utils", "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -742,7 +748,7 @@ dependencies = [ "bevy_macro_utils", "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -897,7 +903,7 @@ checksum = "3954dbb56a66a6c09c783e767f6ceca0dc0492c22e536e2aeaefb5545eac33c6" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", "toml_edit", ] @@ -1039,7 +1045,7 @@ dependencies = [ "bevy_macro_utils", "proc-macro2", "quote", - "syn", + "syn 2.0.90", "uuid", ] @@ -1099,7 +1105,7 @@ dependencies = [ "bevy_macro_utils", "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -1175,7 +1181,7 @@ dependencies = [ "bevy_macro_utils", "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -1304,7 +1310,7 @@ checksum = "3dfd8d4a525b8f04f85863e45ccad3e922d4c11ed4a8d54f7f62a40bf83fb90f" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -1375,7 +1381,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn", + "syn 2.0.90", ] [[package]] @@ -1487,7 +1493,7 @@ checksum = "bcfcc3cd946cb52f0bbfdbbcfa2f4e24f75ebb6c0e1002f7c25904fada18b9ec" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -1608,6 +1614,16 @@ dependencies = [ "unicode-width", ] +[[package]] +name = "colored" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8" +dependencies = [ + "lazy_static", + "windows-sys 0.48.0", +] + [[package]] name = "combine" version = "4.6.7" @@ -1900,7 +1916,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", "unicode-xid", ] @@ -1918,7 +1934,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -2023,7 +2039,7 @@ checksum = "f97b51c5cc57ef7c5f7a0c57c250251c49ee4c28f819f87ac32f4aceabc36792" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -2215,7 +2231,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -2361,7 +2377,10 @@ version = "0.1.0" dependencies = [ "bevy", "bevy-inspector-egui", + "colored", + "k", "rand", + "run", ] [[package]] @@ -2403,7 +2422,7 @@ dependencies = [ "inflections", "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -2660,7 +2679,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -2814,6 +2833,29 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "k" +version = "0.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5dce11312d00e40c13f5c5fac13056a134f77944ab87086460ef386eed68ca08" +dependencies = [ + "nalgebra", + "simba", + "thiserror", + "tracing", + "urdf-rs", +] + +[[package]] +name = "kernel32-sys" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" +dependencies = [ + "winapi 0.2.8", + "winapi-build", +] + [[package]] name = "khronos-egl" version = "6.0.0" @@ -2961,6 +3003,16 @@ dependencies = [ "regex-automata 0.1.10", ] +[[package]] +name = "matrixmultiply" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9380b911e3e96d10c1f415da0876389aaf1b56759054eeb0de7df940c456ba1a" +dependencies = [ + "autocfg", + "rawpointer", +] + [[package]] name = "memchr" version = "2.7.4" @@ -3049,6 +3101,33 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "nalgebra" +version = "0.30.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fb2d0de08694bed883320212c18ee3008576bfe8c306f4c3c4a58b4876998be" +dependencies = [ + "approx", + "matrixmultiply", + "nalgebra-macros", + "num-complex", + "num-rational", + "num-traits", + "simba", + "typenum", +] + +[[package]] +name = "nalgebra-macros" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01fcc0b8149b4632adc89ac3b7b31a12fb6099a0317a4eb2ebff574ef7de7218" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "ndk" version = "0.8.0" @@ -3142,7 +3221,7 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" dependencies = [ - "winapi", + "winapi 0.3.9", ] [[package]] @@ -3152,7 +3231,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" dependencies = [ "overload", - "winapi", + "winapi 0.3.9", +] + +[[package]] +name = "num-complex" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" +dependencies = [ + "num-traits", ] [[package]] @@ -3163,7 +3251,26 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", +] + +[[package]] +name = "num-integer" +version = "0.1.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-rational" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" +dependencies = [ + "num-integer", + "num-traits", ] [[package]] @@ -3194,7 +3301,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -3551,7 +3658,7 @@ checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -3636,7 +3743,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" dependencies = [ "proc-macro2", - "syn", + "syn 2.0.90", ] [[package]] @@ -3670,6 +3777,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f7649a7b4df05aed9ea7ec6f628c67c9953a43869b8bc50929569b2999d443fe" dependencies = [ "memchr", + "serde", ] [[package]] @@ -3745,6 +3853,12 @@ version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539" +[[package]] +name = "rawpointer" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" + [[package]] name = "rayon" version = "1.10.0" @@ -3878,6 +3992,18 @@ version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c20b6793b5c2fa6553b250154b78d6d0db37e72700ae35fad9387a46f487c97" +[[package]] +name = "run" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d85451d71c2d5a42d5671b8b444edbd9d8215067126c40b6625e8ecfa2a1fa6" +dependencies = [ + "serde", + "serde_derive", + "term-painter", + "toml", +] + [[package]] name = "rustc-hash" version = "1.1.0" @@ -3929,6 +4055,15 @@ version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" +[[package]] +name = "safe_arch" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3460605018fdc9612bce72735cba0d27efbcd9904780d44c7e3a9948f96148a" +dependencies = [ + "bytemuck", +] + [[package]] name = "same-file" version = "1.0.6" @@ -3984,6 +4119,18 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "serde-xml-rs" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb3aa78ecda1ebc9ec9847d5d3aba7d618823446a049ba2491940506da6e2782" +dependencies = [ + "log", + "serde", + "thiserror", + "xml-rs", +] + [[package]] name = "serde_derive" version = "1.0.215" @@ -3992,7 +4139,7 @@ checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -4022,6 +4169,19 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" +[[package]] +name = "simba" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f3fd720c48c53cace224ae62bef1bbff363a70c68c4802a78b5cc6159618176" +dependencies = [ + "approx", + "num-complex", + "num-traits", + "paste", + "wide", +] + [[package]] name = "simd-adler32" version = "0.3.7" @@ -4146,6 +4306,17 @@ dependencies = [ "zeno", ] +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + [[package]] name = "syn" version = "2.0.90" @@ -4165,7 +4336,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -4203,6 +4374,25 @@ dependencies = [ "slotmap", ] +[[package]] +name = "term" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa63644f74ce96fbeb9b794f66aff2a52d601cbd5e80f4b97123e3899f4570f1" +dependencies = [ + "kernel32-sys", + "winapi 0.2.8", +] + +[[package]] +name = "term-painter" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcaa948f0e3e38470cd8dc8dcfe561a75c9e43f28075bb183845be2b9b3c08cf" +dependencies = [ + "term", +] + [[package]] name = "termcolor" version = "1.4.1" @@ -4229,7 +4419,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -4312,6 +4502,15 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" +[[package]] +name = "toml" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" +dependencies = [ + "serde", +] + [[package]] name = "toml_datetime" version = "0.6.8" @@ -4348,7 +4547,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -4450,6 +4649,12 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0e13db2e0ccd5e14a544e8a246ba2312cd25223f616442d7f2cb0e3db614236e" +[[package]] +name = "typenum" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" + [[package]] name = "unicode-bidi" version = "0.3.17" @@ -4510,6 +4715,20 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" +[[package]] +name = "urdf-rs" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "074515a3e6dc230bbbdcf35830fd71b67b55ae2ac22bc4ff69d89412fc84b830" +dependencies = [ + "RustyXML", + "quick-xml", + "regex", + "serde", + "serde-xml-rs", + "thiserror", +] + [[package]] name = "url" version = "2.5.4" @@ -4598,7 +4817,7 @@ dependencies = [ "log", "proc-macro2", "quote", - "syn", + "syn 2.0.90", "wasm-bindgen-shared", ] @@ -4633,7 +4852,7 @@ checksum = "30d7a95b763d3c45903ed6c81f156801839e5ee968bb07e534c44df0fcd330c2" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -4903,6 +5122,22 @@ dependencies = [ "web-sys", ] +[[package]] +name = "wide" +version = "0.7.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58e6db2670d2be78525979e9a5f9c69d296fd7d670549fe9ebf70f8708cb5019" +dependencies = [ + "bytemuck", + "safe_arch", +] + +[[package]] +name = "winapi" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" + [[package]] name = "winapi" version = "0.3.9" @@ -4913,6 +5148,12 @@ dependencies = [ "winapi-x86_64-pc-windows-gnu", ] +[[package]] +name = "winapi-build" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" + [[package]] name = "winapi-i686-pc-windows-gnu" version = "0.4.0" @@ -5007,7 +5248,7 @@ checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -5018,7 +5259,7 @@ checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -5029,7 +5270,7 @@ checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -5040,7 +5281,7 @@ checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -5447,7 +5688,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", "synstructure", ] @@ -5475,7 +5716,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] [[package]] @@ -5495,7 +5736,7 @@ checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", "synstructure", ] @@ -5518,5 +5759,5 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.90", ] diff --git a/Cargo.toml b/Cargo.toml index c9caa4d..60e507c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,20 +1,29 @@ cargo-features = ["codegen-backend"] -[[bin]] -name = "first_app" - -[[bin]] -name = "snake" - [package] name = "glite" version = "0.1.0" edition = "2021" +[[bin]] +name = "first_app" + +[[bin]] +name = "minesweeper" + +[[bin]] +name = "snake" + +[features] +debug = [] + [dependencies] bevy = { version = "0.15.0", features = ["dynamic_linking"] } bevy-inspector-egui = "0.28.0" +colored = "2.1.0" +k = "0.32.0" rand = "0.8.5" +run = "0.1.0" # Enable a small amount of optimization in the dev profile. [profile.dev] diff --git a/src/bin/minesweeper.rs b/src/bin/minesweeper.rs new file mode 100644 index 0000000..140038e --- /dev/null +++ b/src/bin/minesweeper.rs @@ -0,0 +1,65 @@ +use bevy::{prelude::*, window::WindowResolution}; +use glite::debug_plugin; +use std::fmt::{self, Display, Formatter}; +use std::ops::{Add, Sub}; + +#[cfg(feature = "debug")] +use bevy_inspector_egui::{prelude::*, quick::WorldInspectorPlugin}; + +#[cfg_attr(feature = "debug", derive(bevy_inspector_egui::InspectorOptions))] +#[derive(Component, Debug, Default, Copy, Clone, Eq, PartialEq)] +pub struct Position { + pub x: u16, + pub y: u16, +} + +impl Add for Position { + type Output = Self; + fn add(self, other: Self) -> Self { + Self { + x: self.x + other.x, + y: self.y + other.y, + } + } +} + +impl Sub for Position { + type Output = Self; + fn sub(self, other: Self) -> Self { + Self { + x: self.x.saturating_sub(other.x), + y: self.y.saturating_sub(other.y), + } + } +} + +impl Display for Position { + fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { + write!(f, "({}, {})", self.x, self.y) + } +} + +fn main() { + let mut app = App::new(); + app.add_plugins(DefaultPlugins.set(WindowPlugin { + primary_window: Some(Window { + title: "Minesweeper".to_string(), + resolution: WindowResolution::new(1280., 777.), + ..default() + }), + ..default() + })); + + app.add_systems(Startup, camera_setup); + + #[cfg(feature = "debug")] + app.add_plugins(debug_plugin::debug_plugin); + + // Run the app + app.run(); +} + +fn camera_setup(mut commands: Commands) { + commands.spawn(Camera2d {}); + commands.spawn(Position { x: 0, y: 0 }); +} diff --git a/src/bin/snake.rs b/src/bin/snake.rs index e396514..ea36aae 100644 --- a/src/bin/snake.rs +++ b/src/bin/snake.rs @@ -1,6 +1,7 @@ use std::time::Duration; -use bevy::{prelude::*, time::common_conditions::on_timer, window::PrimaryWindow}; +use bevy::{prelude::*, reflect, time::common_conditions::on_timer, window::PrimaryWindow}; +use bevy_inspector_egui::prelude::*; use bevy_inspector_egui::quick::WorldInspectorPlugin; use rand::prelude::random; @@ -47,7 +48,7 @@ struct LastTailPosition(Option); #[derive(Component)] struct Food; -#[derive(Component, Clone, Copy, Eq, PartialEq, Debug)] +#[derive(Component, Clone, Copy, Eq, PartialEq, Debug, InspectorOptions)] struct Position { x: i32, y: i32, @@ -268,7 +269,7 @@ fn snake_growth( } fn setup_camera(mut commands: Commands) { - commands.spawn((Camera2d {},)); + commands.spawn(Camera2d {}); } pub struct SnakePlugin; diff --git a/src/debug_plugin/mod.rs b/src/debug_plugin/mod.rs new file mode 100644 index 0000000..d8a4e5c --- /dev/null +++ b/src/debug_plugin/mod.rs @@ -0,0 +1,6 @@ +use bevy::prelude::*; +use bevy_inspector_egui::{prelude::*, quick::WorldInspectorPlugin}; + +pub fn debug_plugin(app: &mut App) { + app.add_plugins(WorldInspectorPlugin::new()); +} diff --git a/src/lib.rs b/src/lib.rs new file mode 100644 index 0000000..cb02828 --- /dev/null +++ b/src/lib.rs @@ -0,0 +1 @@ +pub mod debug_plugin;