From 6f8aeb236725f673f199bce7a6f3942eb56a8318 Mon Sep 17 00:00:00 2001 From: HampusM Date: Sat, 2 Mar 2024 12:00:01 +0100 Subject: feat(ecs): add event trait --- ecs/examples/simple.rs | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'ecs/examples/simple.rs') diff --git a/ecs/examples/simple.rs b/ecs/examples/simple.rs index 76d9538..9983c4a 100644 --- a/ecs/examples/simple.rs +++ b/ecs/examples/simple.rs @@ -1,3 +1,4 @@ +use ecs::event::{Event, Id as EventId}; use ecs::{Component, Query, World}; #[derive(Component)] @@ -19,17 +20,22 @@ fn say_hello(query: Query<(SomeData, Greeting)>) } } -#[derive(Debug, PartialEq, Eq, Hash)] -enum Event +#[derive(Debug)] +struct Start; + +impl Event for Start { - Start, + fn id(&self) -> EventId + { + EventId::of::() + } } fn main() { - let mut world = World::::new(); + let mut world = World::new(); - world.register_system(Event::Start, say_hello); + world.register_system(&Start, say_hello); world.create_entity(( SomeData { num: 987_654 }, @@ -43,5 +49,5 @@ fn main() Greeting { greeting: "Good evening".to_string() }, )); - world.emit(&Event::Start); + world.emit(&Start); } -- cgit v1.2.3-18-g5258