From 1e0ad48c47f0c4b3c2eadc19d65e20123b931023 Mon Sep 17 00:00:00 2001 From: Kai Stevenson Date: Sun, 23 Aug 2026 16:40:46 -0700 Subject: bullet emitter --- src/sim/entity/mod.rs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/sim/entity') diff --git a/src/sim/entity/mod.rs b/src/sim/entity/mod.rs index 2a046c5..a86a51f 100644 --- a/src/sim/entity/mod.rs +++ b/src/sim/entity/mod.rs @@ -49,6 +49,7 @@ impl Marchable for EntityCells { } pub trait EntityBehaviour { + // TODO merge ctxs? fn update(&mut self, _update_ctx: &mut EntityUpdateCtx, _ctx: &mut SimCtx, _delta_time: f32) {} fn physics_update( &mut self, @@ -67,6 +68,23 @@ pub struct EntityDef { } impl EntityDef { + pub fn from_cells_and_rb( + cells: EntityCells, + rb: RigidBody, + behaviour: Option>, + ) -> Self { + let collider = RbManager::convex_hull_collider_from_marchable(&cells, Some(10)) + .mass(mass_from_cells(&cells.cells)) + .build(); + + EntityDef { + rb: Some(rb), + collider: Some(collider), + cells: Some(cells), + behaviour, + } + } + pub fn from_cells( position: Vec2, cells: EntityCells, -- cgit v1.3.1