use super::*;
#[derive(Clone, Data, New)]
pub struct Entity {
#[get(type(copy))]
#[get_mut(pub(crate))]
pub(crate) id: u64,
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(crate) name: String,
#[get(type(copy))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(crate) transform: Transform2D,
#[get(type(copy))]
#[get_mut(pub(crate))]
pub(crate) active: bool,
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(crate) components: Vec<ComponentRc>,
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(crate) tags: Vec<String>,
}
#[derive(Clone, Data, New)]
pub struct EventBus {
#[get_mut(pub(crate))]
#[new(skip)]
#[get(pub(crate))]
#[set(pub(crate))]
pub(crate) handlers: EventHandlers,
}