diff options
| author | Kai Stevenson <kai@kaistevenson.com> | 2026-08-16 00:46:57 -0700 |
|---|---|---|
| committer | Kai Stevenson <kai@kaistevenson.com> | 2026-08-16 00:46:57 -0700 |
| commit | 24886c2752548f1c32ed54968a7bfdf2b1fe38ea (patch) | |
| tree | e6ba72311d9c5b39793d3fd1944a4ee4851fd94c /src/sim/materials/mod.rs | |
| parent | d7eccba2055cd7784a0db6d9ee8692a4f3510931 (diff) | |
fire changes + smoke
Diffstat (limited to 'src/sim/materials/mod.rs')
| -rw-r--r-- | src/sim/materials/mod.rs | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/sim/materials/mod.rs b/src/sim/materials/mod.rs index 764318a..10f0a06 100644 --- a/src/sim/materials/mod.rs +++ b/src/sim/materials/mod.rs @@ -3,6 +3,7 @@ use crate::sim::sim::UpdateCtx; mod fire; mod gas; mod sand; +mod smoke; mod water; #[repr(u8)] @@ -14,6 +15,7 @@ pub enum MaterialId { Water, Gas, Fire, + Smoke, } pub struct MaterialDef { @@ -23,7 +25,7 @@ pub struct MaterialDef { pub sim_update: Option<fn(ctx: &mut UpdateCtx) -> ()>, } -static MATERIALS: [MaterialDef; 6] = [ +static MATERIALS: [MaterialDef; 7] = [ MaterialDef { name: "Void", color: (0x00, 0x00, 0x00, 0x00), @@ -61,16 +63,23 @@ static MATERIALS: [MaterialDef; 6] = [ density: 50, sim_update: Some(fire::sim_update), }, + MaterialDef { + name: "Smoke", + color: (0x32, 0x35, 0x36, 0xAA), + density: 15, + sim_update: Some(smoke::sim_update), + }, ]; impl MaterialId { - pub const ALL: [MaterialId; 6] = [ + pub const ALL: [MaterialId; 7] = [ MaterialId::Void, MaterialId::Sand, MaterialId::Wood, MaterialId::Water, MaterialId::Gas, MaterialId::Fire, + MaterialId::Smoke, ]; #[inline] pub fn def(self) -> &'static MaterialDef { |
