mindustry logic execution, map- and schematic- parsing and rendering
remove cross-full
| -rw-r--r-- | assets/blocks/distribution/cross-full.png | bin | 159 -> 0 bytes | |||
| -rw-r--r-- | assets/blocks/distribution/ducts/duct-unloader-arrow.png | bin | 154 -> 0 bytes | |||
| -rw-r--r-- | assets/blocks/distribution/ducts/duct-unloader-top.png | bin | 140 -> 393 bytes | |||
| -rw-r--r-- | assets/blocks/distribution/inverted-sorter.png | bin | 252 -> 370 bytes | |||
| -rw-r--r-- | assets/blocks/distribution/item-source.png | bin | 206 -> 324 bytes | |||
| -rw-r--r-- | assets/blocks/distribution/sorter.png | bin | 194 -> 316 bytes | |||
| -rw-r--r-- | assets/blocks/liquid/liquid-source.png | bin | 206 -> 339 bytes | |||
| -rw-r--r-- | src/block/distribution.rs | 51 | ||||
| -rw-r--r-- | src/block/liquid.rs | 14 | ||||
| -rw-r--r-- | src/lib.rs | 3 |
10 files changed, 24 insertions, 44 deletions
diff --git a/assets/blocks/distribution/cross-full.png b/assets/blocks/distribution/cross-full.png Binary files differdeleted file mode 100644 index 631d138..0000000 --- a/assets/blocks/distribution/cross-full.png +++ /dev/null diff --git a/assets/blocks/distribution/ducts/duct-unloader-arrow.png b/assets/blocks/distribution/ducts/duct-unloader-arrow.png Binary files differdeleted file mode 100644 index 19609e0..0000000 --- a/assets/blocks/distribution/ducts/duct-unloader-arrow.png +++ /dev/null diff --git a/assets/blocks/distribution/ducts/duct-unloader-top.png b/assets/blocks/distribution/ducts/duct-unloader-top.png Binary files differindex 04c41de..781bea4 100644 --- a/assets/blocks/distribution/ducts/duct-unloader-top.png +++ b/assets/blocks/distribution/ducts/duct-unloader-top.png diff --git a/assets/blocks/distribution/inverted-sorter.png b/assets/blocks/distribution/inverted-sorter.png Binary files differindex 93283b4..2a75d17 100644 --- a/assets/blocks/distribution/inverted-sorter.png +++ b/assets/blocks/distribution/inverted-sorter.png diff --git a/assets/blocks/distribution/item-source.png b/assets/blocks/distribution/item-source.png Binary files differindex 5e07b36..d38ce01 100644 --- a/assets/blocks/distribution/item-source.png +++ b/assets/blocks/distribution/item-source.png diff --git a/assets/blocks/distribution/sorter.png b/assets/blocks/distribution/sorter.png Binary files differindex 9317e06..9345206 100644 --- a/assets/blocks/distribution/sorter.png +++ b/assets/blocks/distribution/sorter.png diff --git a/assets/blocks/liquid/liquid-source.png b/assets/blocks/liquid/liquid-source.png Binary files differindex f687796..3f230be 100644 --- a/assets/blocks/liquid/liquid-source.png +++ b/assets/blocks/liquid/liquid-source.png diff --git a/src/block/distribution.rs b/src/block/distribution.rs index 67c473e..d4fe4d1 100644 --- a/src/block/distribution.rs +++ b/src/block/distribution.rs @@ -228,44 +228,27 @@ impl BlockLogic for ItemBlock { s: Scale, ) -> ImageHolder<4> { let mut p = load!(from name which is ["sorter" | "inverted-sorter" | "duct-router" | "duct-unloader" | "unit-cargo-unload-point" | "unloader" | "item-source"], s); - if let Some(state) = state { - if let Some(item) = Self::get_state(state) { - let mut top = load!(s -> match name { - "unit-cargo-unload-point" => "unit-cargo-unload-point-top", - "unloader" => "unloader-center", - _ => "center", - }); - unsafe { p.overlay(top.tint(item.color())) }; - return p; - } - } - if matches!(name, "unloader" | "unit-cargo-unload-point") { + if let Some(state) = state && let Some(item) = Self::get_state(state) { + let mut top = load!(s -> match name { + "unit-cargo-unload-point" => "unit-cargo-unload-point-top", + "unloader" => "unloader-center", + _ => "center", + }); + unsafe { p.overlay(top.tint(item.color())) }; return p; } - if name == "duct-router" { - let mut arrow = load!("top", s); - unsafe { - arrow.rotate(rot.rotated(false).count()); - p.overlay(&arrow); - } - p - } else if name == "duct-unloader" { - let mut top = load!("duct-unloader-top", s); - unsafe { - top.rotate(rot.rotated(false).count()); - p.overlay(&top); + match name { + "duct-router" => { + unsafe { p.overlay(&load!("top", s).rotate(rot.rotated(false).count())) }; } - let mut arrow = load!("duct-unloader-arrow", s); - unsafe { - arrow.rotate(rot.rotated(false).count()); - p.overlay(&arrow); + "duct-unloader" => { + unsafe { + p.overlay(&load!("duct-unloader-top", s).rotate(rot.rotated(false).count())) + }; } - p - } else { - let mut null = load!("cross-full", s); - unsafe { null.overlay(&p) }; - null - } + _ => {} + }; + p } /// format: diff --git a/src/block/liquid.rs b/src/block/liquid.rs index 06d34ac..9a6d0b3 100644 --- a/src/block/liquid.rs +++ b/src/block/liquid.rs @@ -111,16 +111,12 @@ impl BlockLogic for FluidBlock { s: Scale, ) -> ImageHolder<4> { let mut p = load!("liquid-source", s); - if let Some(state) = state { - if let Some(liq) = Self::get_state(state) { - let mut top = load!("center", s); - unsafe { p.overlay(top.tint(liq.color())) }; - return p; - } + if let Some(state) = state && let Some(liq) = Self::get_state(state) { + let mut top = load!("center", s); + unsafe { p.overlay(top.tint(liq.color())) }; + return p; } - let mut null = load!("cross-full", s); - unsafe { null.overlay(&p) }; - null + p } /// format: @@ -4,7 +4,8 @@ const_trait_impl, unchecked_math, slice_as_chunks, - slice_swap_unchecked + slice_swap_unchecked, + let_chains )] #![allow(clippy::missing_safety_doc, clippy::missing_const_for_fn, clippy::perf)] pub mod block; |