mindustry logic execution, map- and schematic- parsing and rendering
Implement transportation block registration
KosmosPrime 2023-01-03
parent 5feb3ea · commit ef95946
-rw-r--r--src/block/mod.rs1
-rw-r--r--src/block/transport.rs23
2 files changed, 24 insertions, 0 deletions
diff --git a/src/block/mod.rs b/src/block/mod.rs
index c43144f..b7e3310 100644
--- a/src/block/mod.rs
+++ b/src/block/mod.rs
@@ -7,6 +7,7 @@ use crate::data::dynamic::DynData;
pub mod extraction;
pub mod simple;
+pub mod transport;
pub mod turret;
pub trait BlockLogic
diff --git a/src/block/transport.rs b/src/block/transport.rs
new file mode 100644
index 0000000..cb34232
--- /dev/null
+++ b/src/block/transport.rs
@@ -0,0 +1,23 @@
+use crate::block::make_register;
+use crate::block::simple::SimpleBlock;
+
+make_register!
+(
+ CONVEYOR: "conveyor" => SimpleBlock::new(1, false);
+ TITANIUM_CONVEYOR: "titanium-conveyor" => SimpleBlock::new(1, false);
+ PLASTANIUM_CONVEYOR: "plastanium-conveyor" => SimpleBlock::new(1, false);
+ ARMORED_CONVEYOR: "armored-conveyor" => SimpleBlock::new(1, false);
+ JUNCTION: "junction" => SimpleBlock::new(1, true);
+ BRIDGE_CONVEYOR: "bridge-conveyor" => SimpleBlock::new(1, false); // TODO config: destination
+ PHASE_CONVEYOR: "phase-conveyor" => SimpleBlock::new(1, false); // TODO config: destination
+ SORTER: "sorter" => SimpleBlock::new(1, true); // TODO config: item
+ INVERTED_SORTER: "inverted-sorter" => SimpleBlock::new(1, true); // TODO config: item
+ ROUTER: "router" => SimpleBlock::new(1, true);
+ DISTRIBUTOR: "distributor" => SimpleBlock::new(2, true);
+ OVERFLOW_GATE: "overflow-gate" => SimpleBlock::new(1, true);
+ UNDERFLOW_GATE: "underflow-gate" => SimpleBlock::new(1, true);
+ MASS_DRIVER: "mass-driver" => SimpleBlock::new(3, true); // TODO config: destination
+ // sandbox only
+ ITEM_SOURCE: "item-source" => SimpleBlock::new(1, true); // TODO config: item
+ ITEM_VOID: "item-void" => SimpleBlock::new(1, true);
+);