From 0dd95e736dbf9032d449a0bf73209d3ca230193d Mon Sep 17 00:00:00 2001 From: Patrick 'Quezler' Mounier Date: Wed, 2 Dec 2020 12:01:21 +0100 Subject: [PATCH 1/2] Add items back to reconstructor if it overwrote itself --- core/src/mindustry/world/blocks/units/Reconstructor.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/core/src/mindustry/world/blocks/units/Reconstructor.java b/core/src/mindustry/world/blocks/units/Reconstructor.java index fb7b4ea1de..2ea7951e08 100644 --- a/core/src/mindustry/world/blocks/units/Reconstructor.java +++ b/core/src/mindustry/world/blocks/units/Reconstructor.java @@ -114,6 +114,13 @@ public class Reconstructor extends UnitBlock{ return capacities[item.id]; } + @Override + public void overwrote(Seq builds){ + if(builds.first().block == block){ + items.add(builds.first().items); + } + } + @Override public void draw(){ Draw.rect(region, x, y); From 382e27e1e4f9ef5d545e790e8b00c2b10551fcd9 Mon Sep 17 00:00:00 2001 From: Patrick 'Quezler' Mounier Date: Wed, 2 Dec 2020 12:02:49 +0100 Subject: [PATCH 2/2] Populate prevBuild when deconstructting --- core/src/mindustry/world/Build.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/core/src/mindustry/world/Build.java b/core/src/mindustry/world/Build.java index 86cca0d3d7..2b8542785e 100644 --- a/core/src/mindustry/world/Build.java +++ b/core/src/mindustry/world/Build.java @@ -37,8 +37,12 @@ public class Build{ Block previous = tile.block(); Block sub = ConstructBlock.get(previous.size); + Seq prevBuild = new Seq<>(1); + if(tile.build != null) prevBuild.add(tile.build); + tile.setBlock(sub, team, rotation); tile.bc().setDeconstruct(previous); + tile.bc().prevBuild = prevBuild; tile.build.health = tile.build.maxHealth * prevPercent; if(unit != null && unit.isPlayer()) tile.build.lastAccessed = unit.getPlayer().name;