mindustry logic execution, map- and schematic- parsing and rendering
Diffstat (limited to 'src/block/mod.rs')
-rw-r--r--src/block/mod.rs144
1 files changed, 75 insertions, 69 deletions
diff --git a/src/block/mod.rs b/src/block/mod.rs
index c61f538..c314175 100644
--- a/src/block/mod.rs
+++ b/src/block/mod.rs
@@ -605,14 +605,82 @@ macro_rules! make_register {
$field, BlockLogicEnum::BasicBlock(BasicBlock::new($size, true, &[])), Some(crate::data::renderer::load!($field))
); }
};
+ // floors
+ (impl $field: literal > $size: literal) => {
+ paste::paste! { pub static [<$field:snake:upper>]: Block = Block::new(
+ $field, BlockLogicEnum::BasicBlock(BasicBlock::new($size, true, &[])), Some(crate::data::renderer::load!("empty4"))
+ ); }
+ };
}
// pub(self) use make_register;
make_register! {
- "darksand": 1;
- "sand-floor": 1;
- "yellow-stone": 1;
- "arkyic-stone": 1;
- "carbon-stone": 1;
+ "darksand" > 1;
+ "sand-floor" > 1;
+ "yellow-stone" > 1;
+ "arkyic-stone" > 1;
+ "carbon-stone" > 1;
+ "dacite" > 1;
+ "dirt" > 1;
+ "arkycite-floor" > 1;
+ "basalt" > 1;
+ "ice" > 1;
+ "molten-slag" > 1;
+ "moss" > 1;
+ "mud" > 1;
+ "magmarock" > 1;
+ "grass" > 1;
+ "ice-snow" > 1;
+ "hotrock" > 1;
+ "char" > 1;
+ "snow" > 1;
+ "salt" > 1;
+ "shale" > 1;
+ "metal-floor" > 1;
+ "metal-floor-2" > 1;
+ "metal-floor-3" > 1;
+ "metal-floor-4" > 1;
+ "metal-floor-5" > 1;
+ "dark-panel-1" > 1;
+ "dark-panel-2" > 1;
+ "dark-panel-3" > 1;
+ "dark-panel-4" > 1;
+ "dark-panel-5" > 1;
+ "dark-panel-6" > 1;
+ "darksand-tainted-water" > 1;
+ "darksand-water" > 1;
+ "deep-tainted-water" > 1;
+ "deep-water" > 1;
+ "sand-water" > 1;
+ "shallow-water" > 1;
+ "space" > 1;
+ "stone" > 1;
+ "arkyic-vent" > 1;
+ "beryllic-stone" > 1;
+ "bluemat" > 1;
+ "carbon-vent" > 1;
+ "core-zone" > 1;
+ "crater-stone" > 1;
+ "crystal-floor" > 1;
+ "crystalline-stone" > 1;
+ "crystalline-vent" > 1;
+ "metal-floor-damaged" > 1;
+ "dense-red-stone" > 1;
+ "ferric-craters" > 1; // ferris section
+ "ferric-stone" > 1;
+ "pooled-cryofluid" > 1;
+ "red-ice" > 1;
+ "red-stone-vent" > 1;
+ "red-stone" > 1;
+ "redmat" > 1;
+ "regolith" > 1;
+ "rhyolite-crater" > 1;
+ "rhyolite" > 1;
+ "rough-rhyolite" > 1;
+ "tainted-water" > 1;
+ "tar" > 1;
+ "yellow-stone-plates" > 1;
+ "yellow-stone-vent" > 1;
+ "spore-moss" > 1;
"ore-beryllium": 1;
"ore-copper": 1;
"ore-lead": 1;
@@ -626,84 +694,26 @@ make_register! {
"ore-wall-thorium": 1;
"ore-wall-tungsten": 1;
"graphitic-wall": 1;
- "dacite": 1;
- "dirt": 1;
- "arkycite-floor": 1;
- "basalt": 1;
- "ice": 1;
- "molten-slag": 1;
- "moss": 1;
- "mud": 1;
- "magmarock": 1;
- "grass": 1;
- "ice-snow": 1;
- "hotrock": 1;
- "char": 1;
- "snow": 1;
- "salt": 1;
- "shale": 1;
- "metal-floor": 1;
- "metal-floor-2": 1;
- "metal-floor-3": 1;
- "metal-floor-4": 1;
- "metal-floor-5": 1;
- "dark-panel-1": 1;
- "dark-panel-2": 1;
- "dark-panel-3": 1;
- "dark-panel-4": 1;
- "dark-panel-5": 1;
- "dark-panel-6": 1;
- "darksand-tainted-water": 1;
- "darksand-water": 1;
- "deep-tainted-water": 1;
- "deep-water": 1;
- "sand-water": 1;
- "shallow-water": 1;
- "space": 1;
- "stone": 1;
- "build1": 1;
"boulder": 1;
- "arkyic-vent": 1;
"arkyic-wall": 1;
"beryllic-stone-wall": 1;
- "beryllic-stone": 1;
- "bluemat": 1;
- "carbon-vent": 1;
"carbon-wall": 1;
"cliff": 1;
- "core-zone": 1;
- "crater-stone": 1;
- "crystal-floor": 1;
"crystalline-stone-wall": 1;
- "crystalline-stone": 1;
- "crystalline-vent": 3;
"dacite-wall": 1;
"dark-metal": 1;
- "metal-floor-damaged": 1;
- "dense-red-stone": 1;
"dirt-wall": 1;
"dune-wall": 1;
- "ferric-craters": 1; // ferris section
"ferric-stone-wall": 1;
- "ferric-stone": 1;
"ice-wall": 1;
"pebbles": 1;
"pine": 1;
- "pooled-cryofluid": 1;
"red-diamond-wall": 1;
"red-ice-wall": 1;
- "red-ice": 1;
- "red-stone-vent": 1;
"red-stone-wall": 1;
- "red-stone": 1;
- "redmat": 1;
"regolith-wall": 1;
- "regolith": 1;
- "rhyolite-crater": 1;
- "rhyolite-vent": 1;
+ "rhyolite-vent" > 1;
"rhyolite-wall": 1;
- "rhyolite": 1;
- "rough-rhyolite": 1;
"salt-wall": 1;
"sand-wall": 1;
"shale-wall": 1;
@@ -711,14 +721,9 @@ make_register! {
"snow-pine": 1;
"snow-wall": 1;
"spawn": 1;
- "spore-moss": 1;
"spore-pine": 1;
"spore-wall": 1;
"stone-wall": 1;
- "tainted-water": 1;
- "tar": 1;
- "yellow-stone-plates": 1;
- "yellow-stone-vent": 1;
"yellow-stone-wall": 1;
// props
"yellow-stone-boulder": 1;
@@ -748,6 +753,7 @@ make_register! {
"vibrant-crystal-cluster": 1;
"crystal-orbs": 1;
// end tall
+ "build1": 1;
"build2": 1;
"build3": 1;
"build4": 1;