Game stats that reset every frame, inspired by immediate mode GUI.
gamedev bevy stats
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge pull request #24 from AlephCubed/dev

Update to Bevy v0.18

authored by

Josiah Nelson and committed by
GitHub
e22cc370 534d7cb2

+69 -112
+56 -100
Cargo.lock
··· 30 30 checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04" 31 31 32 32 [[package]] 33 + name = "arrayvec" 34 + version = "0.7.6" 35 + source = "registry+https://github.com/rust-lang/crates.io-index" 36 + checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" 37 + 38 + [[package]] 33 39 name = "assert_type_match" 34 40 version = "0.1.1" 35 41 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 78 84 79 85 [[package]] 80 86 name = "bevy" 81 - version = "0.17.3" 87 + version = "0.18.0" 82 88 source = "registry+https://github.com/rust-lang/crates.io-index" 83 - checksum = "76d3ee8652fe0577fd8a99054e147740850140d530be8e044a9be4e23a3e8a24" 89 + checksum = "ec689b5a79452b6f777b889bbff22d3216b82a8d2ab7814d4a0eb571e9938d97" 84 90 dependencies = [ 85 91 "bevy_internal", 86 92 ] 87 93 88 94 [[package]] 89 95 name = "bevy_android" 90 - version = "0.17.3" 96 + version = "0.18.0" 91 97 source = "registry+https://github.com/rust-lang/crates.io-index" 92 - checksum = "42b2d9435e9fe8d7107bb795a6140277872ad5b992cb3934f8d28cfd11040f6f" 98 + checksum = "008133458cfe0d43a8870bfc4c5a729467cc5d9246611462add38bcf45ed896f" 93 99 dependencies = [ 94 100 "android-activity", 95 101 ] 96 102 97 103 [[package]] 98 104 name = "bevy_app" 99 - version = "0.17.3" 105 + version = "0.18.0" 100 106 source = "registry+https://github.com/rust-lang/crates.io-index" 101 - checksum = "8e4fc5dfe9d1d9b8233e1878353b5e66a3f5910c2131d3abf68f9a4116b2d433" 107 + checksum = "2271a0123a7cc355c3fe98754360c75aa84b29f2a6b1a9f8c00aac427570d174" 102 108 dependencies = [ 103 109 "bevy_derive", 104 110 "bevy_ecs", ··· 115 121 116 122 [[package]] 117 123 name = "bevy_auto_plugin" 118 - version = "0.8.1" 124 + version = "0.9.0" 119 125 source = "registry+https://github.com/rust-lang/crates.io-index" 120 - checksum = "e7cfb9dd505ad1a1a2a43e512997411f1291d6bd909939a5e4b363b5cd90c65a" 126 + checksum = "b00355e2dd268a7f9c7453773753edfedda475896c0b4e7b2d015aa04f4849fd" 121 127 dependencies = [ 122 128 "bevy_auto_plugin_proc_macros", 123 129 "bevy_auto_plugin_shared", ··· 127 133 128 134 [[package]] 129 135 name = "bevy_auto_plugin_proc_macros" 130 - version = "0.8.1" 136 + version = "0.9.0" 131 137 source = "registry+https://github.com/rust-lang/crates.io-index" 132 - checksum = "6713c25ca855d7a66fd508d07acab75b239951a6a8ffa2709207cc61c059d197" 138 + checksum = "d85f2558b3a8f3d5e3e8df9debbff0665cad6c7c2bfde3537e7ff247fde3cd8f" 133 139 dependencies = [ 134 140 "bevy_auto_plugin_shared", 135 - "darling 0.21.3", 136 141 "proc-macro2", 137 - "quote", 138 - "syn 2.0.111", 139 142 ] 140 143 141 144 [[package]] 142 145 name = "bevy_auto_plugin_shared" 143 - version = "0.8.1" 146 + version = "0.9.0" 144 147 source = "registry+https://github.com/rust-lang/crates.io-index" 145 - checksum = "2f4a41ae457cd8a43b407efc654e23a96cdc01b3e58ff41cfd3aa6c6707e62ee" 148 + checksum = "f6d825af42f08348a7c2307f50aabde362e774dd906c274556bd6b71794c8476" 146 149 dependencies = [ 147 150 "bevy_app", 148 151 "darling 0.21.3", ··· 159 162 160 163 [[package]] 161 164 name = "bevy_derive" 162 - version = "0.17.3" 165 + version = "0.18.0" 163 166 source = "registry+https://github.com/rust-lang/crates.io-index" 164 - checksum = "f9396b256b366a43d7f61d1f230cdab0a512fb4712cbf7d688f3d6fce4c5ea8a" 167 + checksum = "70b6a05c31f54c83d681f1b8699bbaf581f06b25a40c9a6bb815625f731f5ba9" 165 168 dependencies = [ 166 169 "bevy_macro_utils", 167 170 "quote", ··· 170 173 171 174 [[package]] 172 175 name = "bevy_diagnostic" 173 - version = "0.17.3" 176 + version = "0.18.0" 174 177 source = "registry+https://github.com/rust-lang/crates.io-index" 175 - checksum = "d1cdb0ed0c8423570fbbb7c4fc2719a203dd40928fefff45f76ef0889685a446" 178 + checksum = "aca4caa8a9014a435dca382b1bdebaee4363e9be69882c598fc4ff4d7cd56e6a" 176 179 dependencies = [ 177 180 "atomic-waker", 178 181 "bevy_app", ··· 186 189 187 190 [[package]] 188 191 name = "bevy_ecs" 189 - version = "0.17.3" 192 + version = "0.18.0" 190 193 source = "registry+https://github.com/rust-lang/crates.io-index" 191 - checksum = "a7dd5229dd00d00e70ac6b2fc0a139961252f6ce07d3d268cfcac0da86d5bde4" 194 + checksum = "24637a7c8643cab493f4085cda6bde4895f0e0816699c59006f18819da2ca0b8" 192 195 dependencies = [ 193 196 "bevy_ecs_macros", 194 197 "bevy_platform", ··· 212 215 213 216 [[package]] 214 217 name = "bevy_ecs_macros" 215 - version = "0.17.3" 218 + version = "0.18.0" 216 219 source = "registry+https://github.com/rust-lang/crates.io-index" 217 - checksum = "c4d83bdd2285af4867e76c691406e0a4b55611b583d0c45b6ac7bcec1b45fd48" 220 + checksum = "6eb14c18ca71e11c69fbae873c2db129064efac6d52e48d0127d37bfba1acfa8" 218 221 dependencies = [ 219 222 "bevy_macro_utils", 220 223 "proc-macro2", ··· 224 227 225 228 [[package]] 226 229 name = "bevy_input" 227 - version = "0.17.3" 230 + version = "0.18.0" 228 231 source = "registry+https://github.com/rust-lang/crates.io-index" 229 - checksum = "8ca955b99f4dc2059e9c8574f8d95a5dd5002809fda80d062a94a553c571a467" 232 + checksum = "9c2853993baf27b963a417d3603a73e02e39c5041913cd1ba7211b0a3037b191" 230 233 dependencies = [ 231 234 "bevy_app", 232 235 "bevy_ecs", ··· 240 243 241 244 [[package]] 242 245 name = "bevy_internal" 243 - version = "0.17.3" 246 + version = "0.18.0" 244 247 source = "registry+https://github.com/rust-lang/crates.io-index" 245 - checksum = "8f5e645f9e1a24c9667c768b6233beaf4e241739d8ca4fbba59435cc27aabad5" 248 + checksum = "57463815630ea71221c0b8e7bff72d816a3071a89507c45f9e2686fbb5e1956b" 246 249 dependencies = [ 247 250 "bevy_android", 248 251 "bevy_app", ··· 262 265 263 266 [[package]] 264 267 name = "bevy_macro_utils" 265 - version = "0.17.3" 268 + version = "0.18.0" 266 269 source = "registry+https://github.com/rust-lang/crates.io-index" 267 - checksum = "62d984f9f8bd0f0d9fb020492a955e641e30e7a425f3588bf346cb3e61fec3c3" 270 + checksum = "0b7272fca0bf30d8ca2571a803598856104b63e5c596d52850f811ed37c5e1e3" 268 271 dependencies = [ 269 - "parking_lot", 270 272 "proc-macro2", 271 273 "quote", 272 274 "syn 2.0.111", ··· 275 277 276 278 [[package]] 277 279 name = "bevy_math" 278 - version = "0.17.3" 280 + version = "0.18.0" 279 281 source = "registry+https://github.com/rust-lang/crates.io-index" 280 - checksum = "5fa74ae5d968749cc073da991757d3c7e3504ac6dbaac5f8c2a54b9d19b0b7ed" 282 + checksum = "6a815c514b8a6f7b11508cdc8b3a4bf0761e96a14227af40aa93cb1160989ce0" 281 283 dependencies = [ 284 + "arrayvec", 282 285 "bevy_reflect", 283 286 "derive_more", 284 287 "glam", ··· 287 290 "rand", 288 291 "rand_distr", 289 292 "serde", 290 - "smallvec", 291 293 "thiserror 2.0.17", 292 294 "variadics_please", 293 295 ] 294 296 295 297 [[package]] 296 298 name = "bevy_platform" 297 - version = "0.17.3" 299 + version = "0.18.0" 298 300 source = "registry+https://github.com/rust-lang/crates.io-index" 299 - checksum = "4691af6d7cfd1b5deb2fc926a43a180a546cdc3fe1e5a013fcee60db9bb2c81f" 301 + checksum = "9b29ea749a8e85f98186ab662f607b885b97c804bb14cdb0cdf838164496d474" 300 302 dependencies = [ 301 303 "foldhash", 302 304 "futures-channel", ··· 309 311 310 312 [[package]] 311 313 name = "bevy_ptr" 312 - version = "0.17.3" 314 + version = "0.18.0" 313 315 source = "registry+https://github.com/rust-lang/crates.io-index" 314 - checksum = "17d24d7906c7de556033168b3485de36c59049fbaef0c2c44c715a23e0329b10" 316 + checksum = "4f98cbc6d34bbdb58240b72ed1731931b4991a893b3a3238bb7c42ae054aa676" 315 317 316 318 [[package]] 317 319 name = "bevy_reflect" 318 - version = "0.17.3" 320 + version = "0.18.0" 319 321 source = "registry+https://github.com/rust-lang/crates.io-index" 320 - checksum = "b5472b91928c0f3e4e3988c0d036b00719f19520f53a0c3f8c2af72f00e693c5" 322 + checksum = "2b2a977e2b8dba65b6e9c11039c5f9ef108be428f036b3d1cac13ad86ec59f9c" 321 323 dependencies = [ 322 324 "assert_type_match", 323 325 "bevy_platform", ··· 330 332 "erased-serde", 331 333 "foldhash", 332 334 "glam", 335 + "indexmap", 333 336 "serde", 334 337 "smallvec", 335 338 "thiserror 2.0.17", ··· 338 341 339 342 [[package]] 340 343 name = "bevy_reflect_derive" 341 - version = "0.17.3" 344 + version = "0.18.0" 342 345 source = "registry+https://github.com/rust-lang/crates.io-index" 343 - checksum = "083784255162fa39960aa3cf3c23af0e515db2daa7f2e796ae34df993f4d3f6c" 346 + checksum = "067af30072b1611fda1a577f1cb678b8ea2c9226133068be808dd49aac30cef0" 344 347 dependencies = [ 345 348 "bevy_macro_utils", 346 349 "indexmap", ··· 352 355 353 356 [[package]] 354 357 name = "bevy_tasks" 355 - version = "0.17.3" 358 + version = "0.18.0" 356 359 source = "registry+https://github.com/rust-lang/crates.io-index" 357 - checksum = "bcbbfa5a58a16c4228434d3018c23fde3d78dcd76ec5f5b2b482a21f4b158dd3" 360 + checksum = "990ffedd374dd2c4fe8f0fd4bcefd5617d1ee59164b6c3fcc356a69b48e26e8e" 358 361 dependencies = [ 359 362 "async-channel", 360 363 "async-task", ··· 369 372 370 373 [[package]] 371 374 name = "bevy_time" 372 - version = "0.17.3" 375 + version = "0.18.0" 373 376 source = "registry+https://github.com/rust-lang/crates.io-index" 374 - checksum = "32835c3dbe082fbbe7d4f2f37f655073421f2882d4320ac2d59f922474260de4" 377 + checksum = "e4c68b78e7ca1cc10c811cd1ded8350f53f2be11eb46946879a74c684026bff7" 375 378 dependencies = [ 376 379 "bevy_app", 377 380 "bevy_ecs", ··· 382 385 383 386 [[package]] 384 387 name = "bevy_transform" 385 - version = "0.17.3" 388 + version = "0.18.0" 386 389 source = "registry+https://github.com/rust-lang/crates.io-index" 387 - checksum = "b41fabfeaa53f51ff5ccf4d87e66836293159d50d21f6d3e16c93efb7c30f969" 390 + checksum = "b30e3957de42c2f7d88dfe8428e739b74deab8932d2a8bbb9d4eefbd64b6aa34" 388 391 dependencies = [ 389 392 "bevy_app", 390 393 "bevy_ecs", ··· 398 401 399 402 [[package]] 400 403 name = "bevy_utils" 401 - version = "0.17.3" 404 + version = "0.18.0" 402 405 source = "registry+https://github.com/rust-lang/crates.io-index" 403 - checksum = "789d04f88c764877a4552e07745b402dbc45f5d0545e6d102558f2f1752a1d89" 406 + checksum = "e258c44d869f9c41ac0f88a16815c67f2569eb9fff4716828a40273d127b6f84" 404 407 dependencies = [ 405 408 "bevy_platform", 406 409 "disqualified", ··· 771 774 772 775 [[package]] 773 776 name = "heapless" 774 - version = "0.8.0" 777 + version = "0.9.2" 775 778 source = "registry+https://github.com/rust-lang/crates.io-index" 776 - checksum = "0bfb9eb618601c89945a70e254898da93b13be0388091d42117462b265bb3fad" 779 + checksum = "2af2455f757db2b292a9b1768c4b70186d443bcb3b316252d6b540aec1cd89ed" 777 780 dependencies = [ 778 781 "hash32", 779 782 "portable-atomic", ··· 788 791 789 792 [[package]] 790 793 name = "immediate_stats" 791 - version = "0.3.2" 794 + version = "0.4.0" 792 795 dependencies = [ 793 796 "bevy", 794 797 "bevy_app", ··· 800 803 801 804 [[package]] 802 805 name = "immediate_stats_macros" 803 - version = "0.3.2" 806 + version = "0.4.0" 804 807 dependencies = [ 805 808 "darling 0.23.0", 806 809 "proc-macro-error", ··· 912 915 ] 913 916 914 917 [[package]] 915 - name = "lock_api" 916 - version = "0.4.14" 917 - source = "registry+https://github.com/rust-lang/crates.io-index" 918 - checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965" 919 - dependencies = [ 920 - "scopeguard", 921 - ] 922 - 923 - [[package]] 924 918 name = "log" 925 919 version = "0.4.29" 926 920 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1004 998 version = "1.21.3" 1005 999 source = "registry+https://github.com/rust-lang/crates.io-index" 1006 1000 checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" 1007 - 1008 - [[package]] 1009 - name = "parking_lot" 1010 - version = "0.12.5" 1011 - source = "registry+https://github.com/rust-lang/crates.io-index" 1012 - checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a" 1013 - dependencies = [ 1014 - "lock_api", 1015 - "parking_lot_core", 1016 - ] 1017 - 1018 - [[package]] 1019 - name = "parking_lot_core" 1020 - version = "0.9.12" 1021 - source = "registry+https://github.com/rust-lang/crates.io-index" 1022 - checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" 1023 - dependencies = [ 1024 - "cfg-if", 1025 - "libc", 1026 - "redox_syscall", 1027 - "smallvec", 1028 - "windows-link", 1029 - ] 1030 1001 1031 1002 [[package]] 1032 1003 name = "pin-project" ··· 1175 1146 ] 1176 1147 1177 1148 [[package]] 1178 - name = "redox_syscall" 1179 - version = "0.5.18" 1180 - source = "registry+https://github.com/rust-lang/crates.io-index" 1181 - checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" 1182 - dependencies = [ 1183 - "bitflags", 1184 - ] 1185 - 1186 - [[package]] 1187 1149 name = "rustc_version" 1188 1150 version = "0.4.1" 1189 1151 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1206 1168 dependencies = [ 1207 1169 "winapi-util", 1208 1170 ] 1209 - 1210 - [[package]] 1211 - name = "scopeguard" 1212 - version = "1.2.0" 1213 - source = "registry+https://github.com/rust-lang/crates.io-index" 1214 - checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" 1215 1171 1216 1172 [[package]] 1217 1173 name = "semver"
+1
README.md
··· 75 75 ### Version Compatibility 76 76 | Bevy | Immediate Stats | 77 77 |--------|-----------------| 78 + | `0.18` | `0.4` | 78 79 | `0.17` | `0.3` | 79 80 | `0.16` | `0.1` - `0.2` |
+7 -7
immediate_stats/Cargo.toml
··· 1 1 [package] 2 2 name = "immediate_stats" 3 - version = "0.3.2" 3 + version = "0.4.0" 4 4 edition = "2024" 5 5 description = "Game stats that reset every frame, inspired by immediate mode GUI." 6 6 categories = ["game-development", "data-structures"] ··· 27 27 ] 28 28 29 29 [dependencies] 30 - bevy_app = { version = "0.17", default-features = false, optional = true, features = [ 30 + bevy_app = { version = "0.18", default-features = false, optional = true, features = [ 31 31 "bevy_reflect", 32 32 ] } 33 - bevy_auto_plugin = { version = "0.8", optional = true } 34 - bevy_ecs = { version = "0.17", default-features = false, optional = true, features = [ 33 + bevy_auto_plugin = { version = "0.9", optional = true } 34 + bevy_ecs = { version = "0.18", default-features = false, optional = true, features = [ 35 35 "bevy_reflect", 36 36 ] } 37 - bevy_reflect = { version = "0.17", default-features = false, optional = true } 38 - immediate_stats_macros = { path = "../immediate_stats_macros", version = "0.3.2", default-features = false } 37 + bevy_reflect = { version = "0.18", default-features = false, optional = true } 38 + immediate_stats_macros = { path = "../immediate_stats_macros", version = "0.4.0", default-features = false } 39 39 40 40 [dev-dependencies] 41 - bevy = { version = "0.17", default-features = false } 41 + bevy = { version = "0.18", default-features = false } 42 42 43 43 [lints.rust] 44 44 missing_docs = "warn"
+1 -1
immediate_stats/examples/simple_bevy_auto_plugin.rs
··· 3 3 4 4 use bevy::prelude::*; 5 5 use bevy_auto_plugin; 6 - use bevy_auto_plugin::modes::global::prelude::{AutoPlugin, auto_component, auto_system}; 6 + use bevy_auto_plugin::prelude::{AutoPlugin, auto_component, auto_system}; 7 7 use immediate_stats::*; 8 8 9 9 fn main() {
+1 -1
immediate_stats/src/lib.rs
··· 153 153 /// # use bevy_app::prelude::*; 154 154 /// # use bevy_ecs::prelude::*; 155 155 /// # use immediate_stats::*; 156 - /// # use bevy_auto_plugin::modes::global::prelude::{AutoPlugin, auto_component, auto_resource}; 156 + /// # use bevy_auto_plugin::prelude::{AutoPlugin, auto_component, auto_resource}; 157 157 /// #[derive(AutoPlugin)] 158 158 /// #[auto_plugin(impl_plugin_trait)] 159 159 /// struct MyPlugin;
+1 -1
immediate_stats_macros/Cargo.toml
··· 1 1 [package] 2 2 name = "immediate_stats_macros" 3 - version = "0.3.2" 3 + version = "0.4.0" 4 4 edition = "2024" 5 5 description = "Game stats that reset every frame, inspired by immediate mode GUI." 6 6 categories = ["game-development", "data-structures"]
+2 -2
immediate_stats_macros/src/bevy_auto_plugin.rs
··· 50 50 let system_ident = format_ident!("__reset_{ident}_component_modifiers"); 51 51 52 52 tokens.extend(quote! { 53 - #[bevy_auto_plugin::modes::global::prelude::auto_system( 53 + #[bevy_auto_plugin::prelude::auto_system( 54 54 plugin = #plugin, 55 55 schedule = immediate_stats::__PreUpdate, 56 56 config( ··· 73 73 let system_ident = format_ident!("__reset_{ident}_resource_modifiers"); 74 74 75 75 tokens.extend(quote! { 76 - #[bevy_auto_plugin::modes::global::prelude::auto_system( 76 + #[bevy_auto_plugin::prelude::auto_system( 77 77 plugin = #plugin, 78 78 schedule = immediate_stats::__PreUpdate, 79 79 config(