diff --git a/core/assets-raw/sprites/blocks/drills/drill-top.png b/core/assets-raw/sprites/blocks/drills/drill-item-2.png similarity index 100% rename from core/assets-raw/sprites/blocks/drills/drill-top.png rename to core/assets-raw/sprites/blocks/drills/drill-item-2.png diff --git a/core/assets-raw/sprites/blocks/drills/drill-item-3.png b/core/assets-raw/sprites/blocks/drills/drill-item-3.png new file mode 100644 index 0000000000..ed716408b2 Binary files /dev/null and b/core/assets-raw/sprites/blocks/drills/drill-item-3.png differ diff --git a/core/assets-raw/sprites/blocks/drills/drill-item-4.png b/core/assets-raw/sprites/blocks/drills/drill-item-4.png new file mode 100644 index 0000000000..a18efb5dd4 Binary files /dev/null and b/core/assets-raw/sprites/blocks/drills/drill-item-4.png differ diff --git a/core/assets-raw/sprites/blocks/units/factory-in-3.png b/core/assets-raw/sprites/blocks/units/factory-in-3.png index 625be61764..7944814739 100644 Binary files a/core/assets-raw/sprites/blocks/units/factory-in-3.png and b/core/assets-raw/sprites/blocks/units/factory-in-3.png differ diff --git a/core/assets-raw/sprites/blocks/units/factory-in-5.png b/core/assets-raw/sprites/blocks/units/factory-in-5.png index f158423ff6..ccb7fbc5a3 100644 Binary files a/core/assets-raw/sprites/blocks/units/factory-in-5.png and b/core/assets-raw/sprites/blocks/units/factory-in-5.png differ diff --git a/core/assets-raw/sprites/blocks/units/factory-in-7.png b/core/assets-raw/sprites/blocks/units/factory-in-7.png index 39477c61cd..1861a46c35 100644 Binary files a/core/assets-raw/sprites/blocks/units/factory-in-7.png and b/core/assets-raw/sprites/blocks/units/factory-in-7.png differ diff --git a/core/assets-raw/sprites/blocks/units/factory-in-9.png b/core/assets-raw/sprites/blocks/units/factory-in-9.png index 6a3b324f1b..acf736c8dd 100644 Binary files a/core/assets-raw/sprites/blocks/units/factory-in-9.png and b/core/assets-raw/sprites/blocks/units/factory-in-9.png differ diff --git a/core/src/mindustry/content/Blocks.java b/core/src/mindustry/content/Blocks.java index 32a322b5a5..33e11eed93 100644 --- a/core/src/mindustry/content/Blocks.java +++ b/core/src/mindustry/content/Blocks.java @@ -1262,24 +1262,27 @@ public class Blocks implements ContentList{ mechanicalDrill = new Drill("mechanical-drill"){{ requirements(Category.production, with(Items.copper, 12), true); + drawMineItem = true; tier = 2; drillTime = 600; size = 2; - drawMineItem = true; + consumes.liquid(Liquids.water, 0.05f).boost(); }}; pneumaticDrill = new Drill("pneumatic-drill"){{ requirements(Category.production, with(Items.copper, 18, Items.graphite, 10)); + drawMineItem = true; tier = 3; drillTime = 400; size = 2; - drawMineItem = true; + consumes.liquid(Liquids.water, 0.06f).boost(); }}; laserDrill = new Drill("laser-drill"){{ requirements(Category.production, with(Items.copper, 35, Items.graphite, 30, Items.silicon, 30, Items.titanium, 20)); + drawMineItem = true; drillTime = 280; size = 3; hasPower = true; @@ -1293,6 +1296,7 @@ public class Blocks implements ContentList{ blastDrill = new Drill("blast-drill"){{ requirements(Category.production, with(Items.copper, 65, Items.silicon, 60, Items.titanium, 50, Items.thorium, 75)); + drawMineItem = true; drillTime = 280; size = 4; drawRim = true; diff --git a/core/src/mindustry/world/blocks/experimental/BlockForge.java b/core/src/mindustry/world/blocks/experimental/BlockForge.java index c609416a30..6dcd81a4eb 100644 --- a/core/src/mindustry/world/blocks/experimental/BlockForge.java +++ b/core/src/mindustry/world/blocks/experimental/BlockForge.java @@ -37,6 +37,11 @@ public class BlockForge extends PayloadAcceptor{ consumes.add(new ConsumeItemDynamic((BlockForgeBuild e) -> e.recipe != null ? e.recipe.requirements : ItemStack.empty)); } + @Override + public TextureRegion[] icons(){ + return new TextureRegion[]{region, outRegion}; + } + @Override public void setBars(){ super.setBars(); diff --git a/core/src/mindustry/world/blocks/experimental/BlockLoader.java b/core/src/mindustry/world/blocks/experimental/BlockLoader.java index 3e015ec9a6..afaefeffcc 100644 --- a/core/src/mindustry/world/blocks/experimental/BlockLoader.java +++ b/core/src/mindustry/world/blocks/experimental/BlockLoader.java @@ -31,6 +31,11 @@ public class BlockLoader extends PayloadAcceptor{ rotate = true; } + @Override + public TextureRegion[] icons(){ + return new TextureRegion[]{region, inRegion, outRegion, topRegion}; + } + @Override public boolean outputsItems(){ return false; @@ -72,7 +77,7 @@ public class BlockLoader extends PayloadAcceptor{ //draw input for(int i = 0; i < 4; i++){ if(blends(i) && i != rotation){ - Draw.rect(inRegion, x, y, i * 90); + Draw.rect(inRegion, x, y, (i * 90) - 180); } } diff --git a/core/src/mindustry/world/blocks/production/Drill.java b/core/src/mindustry/world/blocks/production/Drill.java index a0375ea203..9361c22905 100644 --- a/core/src/mindustry/world/blocks/production/Drill.java +++ b/core/src/mindustry/world/blocks/production/Drill.java @@ -57,6 +57,7 @@ public class Drill extends Block{ public @Load("@-rim") TextureRegion rimRegion; public @Load("@-rotator") TextureRegion rotatorRegion; public @Load("@-top") TextureRegion topRegion; + public @Load(value = "@-item", fallback = "drill-item-@size") TextureRegion itemRegion; public Drill(String name){ super(name); @@ -80,7 +81,7 @@ public class Drill extends Block{ if(returnItem == null || !drawMineItem) return; Draw.color(returnItem.color); - Draw.rect("drill-top", req.drawx(), req.drawy()); + Draw.rect(itemRegion, req.drawx(), req.drawy()); Draw.color(); } @@ -124,6 +125,12 @@ public class Drill extends Block{ Draw.rect(returnItem.icon(Cicon.small), dx, dy - 1); Draw.reset(); Draw.rect(returnItem.icon(Cicon.small), dx, dy); + + if(drawMineItem){ + Draw.color(returnItem.color); + Draw.rect(itemRegion, tile.worldx() + offset, tile.worldy() + offset); + Draw.color(); + } }else{ Tile to = tile.getLinkedTilesAs(this, tempTiles).find(t -> t.drop() != null && t.drop().hardness > tier); Item item = to == null ? null : to.drop(); @@ -304,7 +311,7 @@ public class Drill extends Block{ if(dominantItem != null && drawMineItem){ Draw.color(dominantItem.color); - Draw.rect("drill-top", x, y); + Draw.rect(itemRegion, x, y); Draw.color(); } } diff --git a/core/src/mindustry/world/blocks/units/Reconstructor.java b/core/src/mindustry/world/blocks/units/Reconstructor.java index 2aba7a8c7a..634ea5b911 100644 --- a/core/src/mindustry/world/blocks/units/Reconstructor.java +++ b/core/src/mindustry/world/blocks/units/Reconstructor.java @@ -39,7 +39,7 @@ public class Reconstructor extends UnitBlock{ @Override public TextureRegion[] icons(){ - return new TextureRegion[]{region, outRegion, topRegion}; + return new TextureRegion[]{region, inRegion, outRegion, topRegion}; } @Override @@ -129,7 +129,7 @@ public class Reconstructor extends UnitBlock{ //draw input for(int i = 0; i < 4; i++){ if(blends(i) && i != rotation){ - Draw.rect(inRegion, x, y, i * 90); + Draw.rect(inRegion, x, y, (i * 90) - 180); } }