mindustry logic execution, map- and schematic- parsing and rendering
fix blast mixer requiring thorium
bendn 2023-12-29
parent 43a7bc1 · commit 8b1064c
-rw-r--r--mindus/Cargo.toml2
-rw-r--r--mindus/src/block/mod.rs2
-rw-r--r--mindus/src/item/storage.rs8
3 files changed, 9 insertions, 3 deletions
diff --git a/mindus/Cargo.toml b/mindus/Cargo.toml
index f2f7d58..90b674c 100644
--- a/mindus/Cargo.toml
+++ b/mindus/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "mindus"
-version = "5.0.14"
+version = "5.0.15"
edition = "2021"
description = "A library for working with mindustry data formats (eg schematics and maps) (fork of plandustry)"
authors = [
diff --git a/mindus/src/block/mod.rs b/mindus/src/block/mod.rs
index 021722e..d799f3b 100644
--- a/mindus/src/block/mod.rs
+++ b/mindus/src/block/mod.rs
@@ -821,7 +821,7 @@ make_register! {
"surge-smelter" -> ProductionBlock::new(3, true, cost!(Lead: 80, Thorium: 70, Silicon: 80));
"cryofluid-mixer" -> ProductionBlock::new(2, true, cost!(Lead: 65, Thorium: 60, Silicon: 40));
"pyratite-mixer" -> ProductionBlock::new(2, true, cost!(Copper: 50, Lead: 25));
- "blast-mixer" -> ProductionBlock::new(2, true, cost!(Lead: 30, Thorium: 20));
+ "blast-mixer" -> ProductionBlock::new(2, true, cost!(Lead: 30, Titanium: 20));
"melter" -> ProductionBlock::new(1, true, cost!(Copper: 30, Lead: 35, Graphite: 45));
"separator" -> SeparatorBlock::new(2, true, cost!(Copper: 30, Titanium: 25));
"disassembler" -> SeparatorBlock::new(3, true, cost!(Titanium: 100, Thorium: 80, Silicon: 150, Plastanium: 40));
diff --git a/mindus/src/item/storage.rs b/mindus/src/item/storage.rs
index 9397b14..b028e1c 100644
--- a/mindus/src/item/storage.rs
+++ b/mindus/src/item/storage.rs
@@ -5,7 +5,7 @@ use std::slice;
use crate::item;
-#[derive(Clone, Debug, Eq)]
+#[derive(Clone, Eq)]
/// stores data
pub struct Storage<T> {
base: Vec<u32>,
@@ -25,6 +25,12 @@ impl<T> Default for Storage<T> {
}
}
+impl<T: std::fmt::Debug + TryFrom<u16>> std::fmt::Debug for Storage<T> {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ f.debug_map().entries(self.iter_nonzero()).finish()
+ }
+}
+
impl<T> Storage<T>
where
u16: From<T>,