diff --git a/core/src/mindustry/world/Build.java b/core/src/mindustry/world/Build.java index 1e20da65e8..98d4e504cc 100644 --- a/core/src/mindustry/world/Build.java +++ b/core/src/mindustry/world/Build.java @@ -87,7 +87,7 @@ public class Build{ if(tile == null) return false; if(type.isMultiblock()){ - if(type.canReplace(tile.block()) && tile.block().size == type.size && type.canPlaceOn(tile) && tile.interactable(team)){ + if((type.canReplace(tile.block()) || (tile.block instanceof BuildBlock && tile.ent().cblock == type)) && tile.block().size == type.size && type.canPlaceOn(tile) && tile.interactable(team)){ return true; } @@ -117,7 +117,7 @@ public class Build{ && contactsGround(tile.x, tile.y, type) && (!tile.floor().isDeep() || type.floating) && tile.floor().placeableOn - && ((type.canReplace(tile.block()) + && (((type.canReplace(tile.block()) || (tile.block instanceof BuildBlock && tile.ent().cblock == type)) && !(type == tile.block() && rotation == tile.rotation() && type.rotate)) || tile.block().alwaysReplace || tile.block() == Blocks.air) && tile.block().isMultiblock() == type.isMultiblock() && type.canPlaceOn(tile); }