diff --git a/crates/bevy_core/Cargo.toml b/crates/bevy_core/Cargo.toml index 7e638b4d7d..7d6dc64ff0 100644 --- a/crates/bevy_core/Cargo.toml +++ b/crates/bevy_core/Cargo.toml @@ -6,6 +6,7 @@ edition = "2018" [dependencies] bevy_app = { path = "../bevy_app" } +bevy_property = { path = "../bevy_property" } bevy_type_registry = { path = "../bevy_type_registry" } bevy_transform = { path = "../bevy_transform" } legion = { path = "../bevy_legion" } diff --git a/crates/bevy_core/src/lib.rs b/crates/bevy_core/src/lib.rs index d9b68707aa..6ba6d5d053 100644 --- a/crates/bevy_core/src/lib.rs +++ b/crates/bevy_core/src/lib.rs @@ -12,7 +12,7 @@ use bevy_transform::{ }; use glam::{Mat3, Mat4, Quat, Vec2, Vec3}; use legion::prelude::IntoSystem; -use time::{timer_system, Time}; +use time::{time_system, Time, Timer, timer_system}; #[derive(Default)] pub struct CorePlugin; @@ -31,11 +31,13 @@ impl AppPlugin for CorePlugin { .register_component::() .register_component::() .register_component::() + .register_component::() .register_property_type::() .register_property_type::() .register_property_type::() .register_property_type::() .register_property_type::() + .add_system_to_stage(stage::FIRST, time_system.system()) .add_system_to_stage(stage::FIRST, timer_system.system()); } } diff --git a/crates/bevy_core/src/time/mod.rs b/crates/bevy_core/src/time/mod.rs new file mode 100644 index 0000000000..dcad82c30c --- /dev/null +++ b/crates/bevy_core/src/time/mod.rs @@ -0,0 +1,5 @@ +mod time; +mod timer; + +pub use time::*; +pub use timer::*; \ No newline at end of file diff --git a/crates/bevy_core/src/time.rs b/crates/bevy_core/src/time/time.rs similarity index 79% rename from crates/bevy_core/src/time.rs rename to crates/bevy_core/src/time/time.rs index ba0f9feff5..552fac2b4a 100644 --- a/crates/bevy_core/src/time.rs +++ b/crates/bevy_core/src/time/time.rs @@ -29,12 +29,12 @@ impl Time { if let Some(instant) = self.instant { self.delta = now - instant; self.delta_seconds_f64 = - self.delta.as_secs() as f64 + (self.delta.subsec_nanos() as f64 / 1.0e9); - self.delta_seconds = self.delta_seconds_f64 as f32; + self.delta.as_secs_f64(); + self.delta_seconds = self.delta.as_secs_f32(); } let duration_since_startup = now - self.startup; - self.seconds_since_startup = duration_since_startup.as_secs() as f64 + (duration_since_startup.subsec_nanos() as f64 / 1.0e9); + self.seconds_since_startup = duration_since_startup.as_secs_f64(); self.instant = Some(now); } @@ -43,6 +43,6 @@ impl Time { } } -pub fn timer_system(mut time: ResMut