From a8a2b9f68495cb7f2f2a7a0f2331940ee765e65b Mon Sep 17 00:00:00 2001 From: Anuken Date: Sun, 19 Jun 2022 00:22:06 -0400 Subject: [PATCH] Impact cryo requirement fix --- core/src/mindustry/content/Blocks.java | 2 +- core/src/mindustry/world/blocks/power/BeamNode.java | 12 ++++++++++++ .../mindustry/world/blocks/power/ImpactReactor.java | 2 +- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/core/src/mindustry/content/Blocks.java b/core/src/mindustry/content/Blocks.java index 9addc6d75f..df22863d05 100644 --- a/core/src/mindustry/content/Blocks.java +++ b/core/src/mindustry/content/Blocks.java @@ -1277,7 +1277,7 @@ public class Blocks{ drawer = new DrawMulti(new DrawDefault(), new DrawHeatOutput()); size = 2; heatOutput = 15f; - craftTime = 60f * 15f; + craftTime = 60f * 12f; consumeItem(Items.phaseFabric); }}; diff --git a/core/src/mindustry/world/blocks/power/BeamNode.java b/core/src/mindustry/world/blocks/power/BeamNode.java index 206deec0c4..f08131d290 100644 --- a/core/src/mindustry/world/blocks/power/BeamNode.java +++ b/core/src/mindustry/world/blocks/power/BeamNode.java @@ -72,6 +72,12 @@ public class BeamNode extends PowerBlock{ int offset = size/2; for(int j = 1 + offset; j <= range + offset; j++){ var other = world.build(x + j * dir.x, y + j * dir.y); + + //hit insulated wall + if(other != null && other.isInsulated()){ + break; + } + if(other != null && other.block.hasPower && other.team == Vars.player.team() && !(other.block instanceof PowerNode)){ maxLen = j; dest = other; @@ -166,6 +172,12 @@ public class BeamNode extends PowerBlock{ //find first block with power in range for(int j = 1 + offset; j <= range + offset; j++){ var other = world.build(tile.x + j * dir.x, tile.y + j * dir.y); + + //hit insulated wall + if(other != null && other.isInsulated()){ + break; + } + //power nodes do NOT play nice with beam nodes, do not touch them as that forcefully modifies their links if(other != null && other.block.hasPower && other.team == team && !(other.block instanceof PowerNode)){ links[i] = other; diff --git a/core/src/mindustry/world/blocks/power/ImpactReactor.java b/core/src/mindustry/world/blocks/power/ImpactReactor.java index e256f4ba56..8acd19a295 100644 --- a/core/src/mindustry/world/blocks/power/ImpactReactor.java +++ b/core/src/mindustry/world/blocks/power/ImpactReactor.java @@ -76,7 +76,7 @@ public class ImpactReactor extends PowerGenerator{ @Override public void updateTile(){ - if(efficiency > 0 && power.status >= 0.99f){ + if(efficiency >= 0.9999f && power.status >= 0.99f){ boolean prevOut = getPowerProduction() <= consPower.requestedPower(this); warmup = Mathf.lerpDelta(warmup, 1f, warmupSpeed * timeScale);