diff --git a/core/src/mindustry/ai/types/MissileAI.java b/core/src/mindustry/ai/types/MissileAI.java index 075d7e4cab..b5d8271975 100644 --- a/core/src/mindustry/ai/types/MissileAI.java +++ b/core/src/mindustry/ai/types/MissileAI.java @@ -24,7 +24,7 @@ public class MissileAI extends AIController{ var build = unit.buildOn(); //kill instantly on enemy building contact - if(build != null && build.team != unit.team){ + if(build != null && build.team != unit.team && (build == target || !build.block.underBullets)){ unit.kill(); } } diff --git a/core/src/mindustry/entities/part/RegionPart.java b/core/src/mindustry/entities/part/RegionPart.java index e0f933d22e..77094910b3 100644 --- a/core/src/mindustry/entities/part/RegionPart.java +++ b/core/src/mindustry/entities/part/RegionPart.java @@ -30,7 +30,7 @@ public class RegionPart extends DrawPart{ /** Progress function for heat alpha. */ public PartProgress heatProgress = PartProgress.heat; public Blending blending = Blending.normal; - public float layer = -1, layerOffset = 0f, heatLayerOffset = 1f; + public float layer = -1, layerOffset = 0f, heatLayerOffset = 1f, turretHeatLayer = Layer.turretHeat; public float outlineLayerOffset = -0.001f; public float x, y, rotation; public float moveX, moveY, moveRot; @@ -119,7 +119,7 @@ public class RegionPart extends DrawPart{ } if(heat.found()){ - Drawf.additive(heat, heatColor.write(Tmp.c1).a(heatProgress.getClamp(params) * heatColor.a), rx, ry, rot, turretShading ? Layer.turretHeat : Draw.z() + heatLayerOffset); + Drawf.additive(heat, heatColor.write(Tmp.c1).a(heatProgress.getClamp(params) * heatColor.a), rx, ry, rot, turretShading ? turretHeatLayer : Draw.z() + heatLayerOffset); } Draw.xscl *= sign; diff --git a/core/src/mindustry/world/blocks/distribution/DirectionBridge.java b/core/src/mindustry/world/blocks/distribution/DirectionBridge.java index 55c691fd49..3749462af0 100644 --- a/core/src/mindustry/world/blocks/distribution/DirectionBridge.java +++ b/core/src/mindustry/world/blocks/distribution/DirectionBridge.java @@ -134,16 +134,16 @@ public class DirectionBridge extends Block{ cy = (y1 + y2)/2f, len = Math.max(Math.abs(x1 - x2), Math.abs(y1 - y2)) - size * tilesize; - Draw.rect(bridgeRegion, cx, cy, len, tilesize, angle); + Draw.rect(bridgeRegion, cx, cy, len, bridgeRegion.height * Draw.scl, angle); if(liquidColor != null){ Draw.color(liquidColor, liquidColor.a * Renderer.bridgeOpacity); - Draw.rect(bridgeLiquidRegion, cx, cy, len, tilesize, angle); + Draw.rect(bridgeLiquidRegion, cx, cy, len, bridgeLiquidRegion.height * Draw.scl, angle); Draw.color(); Draw.alpha(Renderer.bridgeOpacity); } if(bridgeBotRegion.found()){ Draw.color(0.4f, 0.4f, 0.4f, 0.4f * Renderer.bridgeOpacity); - Draw.rect(bridgeBotRegion, cx, cy, len, tilesize, angle); + Draw.rect(bridgeBotRegion, cx, cy, len, bridgeBotRegion.height * Draw.scl, angle); Draw.reset(); } Draw.alpha(Renderer.bridgeOpacity); diff --git a/core/src/mindustry/world/draw/DrawTurret.java b/core/src/mindustry/world/draw/DrawTurret.java index d4cdc36790..30140c95d9 100644 --- a/core/src/mindustry/world/draw/DrawTurret.java +++ b/core/src/mindustry/world/draw/DrawTurret.java @@ -50,7 +50,7 @@ public class DrawTurret extends DrawBlock{ Draw.rect(base, build.x, build.y); Draw.color(); - Draw.z(Layer.turret - 0.02f); + Draw.z(Layer.turret - 0.5f); Drawf.shadow(preview, build.x + tb.recoilOffset.x - turret.elevation, build.y + tb.recoilOffset.y - turret.elevation, tb.drawrot());