mindustry logic execution, map- and schematic- parsing and rendering
-rw-r--r--src/block/defense.rs26
-rw-r--r--src/block/mod.rs1
2 files changed, 27 insertions, 0 deletions
diff --git a/src/block/defense.rs b/src/block/defense.rs
new file mode 100644
index 0000000..e0bb469
--- /dev/null
+++ b/src/block/defense.rs
@@ -0,0 +1,26 @@
+use crate::block::make_register;
+use crate::block::simple::SimpleBlock;
+
+make_register!
+(
+ COPPER_WALL: "copper-wall" => SimpleBlock::new(1, true);
+ COPPER_WALL_LARGE: "copper-wall-large" => SimpleBlock::new(2, true);
+ TITANIUM_WALL: "titanium-wall" => SimpleBlock::new(1, true);
+ TITANIUM_WALL_LARGE: "titanium-wall-large" => SimpleBlock::new(2, true);
+ PLASTANIUM_WALL: "plastanium-wall" => SimpleBlock::new(1, true);
+ PLASTANIUM_WALL_LARGE: "plastanium-wall-large" => SimpleBlock::new(2, true);
+ THORIUM_WALL: "thorium-wall" => SimpleBlock::new(1, true);
+ THORIUM_WALL_LARGE: "thorium-wall-large" => SimpleBlock::new(2, true);
+ PHASE_WALL: "phase-wall" => SimpleBlock::new(1, true);
+ PHASE_WALL_LARGE: "phase-wall-large" => SimpleBlock::new(2, true);
+ SURGE_WALL: "surge-wall" => SimpleBlock::new(1, true);
+ SURGE_WALL_LARGE: "surge-wall-large" => SimpleBlock::new(2, true);
+ DOOR: "door" => SimpleBlock::new(1, true); // TODO config: opened
+ DOOR_LARGE: "door-large" => SimpleBlock::new(2, true); // TODO config: opened
+ // sandbox only
+ SCRAP_WALL: "scrap-wall" => SimpleBlock::new(1, true);
+ SCRAP_WALL_LARGE: "scrap-wall-large" => SimpleBlock::new(2, true);
+ SCRAP_WALL_HUGE: "scrap-wall-huge" => SimpleBlock::new(3, true);
+ SCRAP_WALL_GIGANTIC: "scrap-wall-gigantic" => SimpleBlock::new(4, true);
+ THRUSTER: "thruster" => SimpleBlock::new(4, false);
+);
diff --git a/src/block/mod.rs b/src/block/mod.rs
index 1cf32ce..cf1f991 100644
--- a/src/block/mod.rs
+++ b/src/block/mod.rs
@@ -5,6 +5,7 @@ use std::collections::hash_map::Entry;
use crate::access::BoxAccess;
use crate::data::dynamic::DynData;
+pub mod defense;
pub mod extraction;
pub mod fluid;
pub mod power;