diff --git a/examples/alive.rs b/examples/alive.rs new file mode 100644 index 0000000..5e4b053 --- /dev/null +++ b/examples/alive.rs @@ -0,0 +1,21 @@ +use edict::{component::Component, query::Entities, world::World}; + +#[derive(Debug, Component)] +struct A; + +#[derive(Debug, Component)] +struct B; + +fn main() { + let mut world = World::new(); + + world.spawn((A, B)); + + let bs = world.view::<&B>(); + + for (e, a) in world.view::<(Entities, &A)>() { + if let Some(b) = bs.get(e) { + println!("A {:?} has B {:?}", a, b); + } + } +} diff --git a/examples/flow.rs b/examples/flow.rs index 3b94b7e..3b3952b 100644 --- a/examples/flow.rs +++ b/examples/flow.rs @@ -129,9 +129,6 @@ fn main() { Pos { x: -1.0, y: 0.0 }, ]; - let mut scheduler = Scheduler::new(); - scheduler.add_system(move_to_system); - world.spawn_flow_for( e, flow_fn!(|mut e| { @@ -142,6 +139,9 @@ fn main() { }), ); + let mut scheduler = Scheduler::new(); + scheduler.add_system(move_to_system); + loop { world.insert_resource(DeltaTime(0.1));