diff --git a/core/src/mindustry/content/Blocks.java b/core/src/mindustry/content/Blocks.java index 7cf34f1f80..4f011a8fc6 100644 --- a/core/src/mindustry/content/Blocks.java +++ b/core/src/mindustry/content/Blocks.java @@ -1034,17 +1034,17 @@ public class Blocks implements ContentList{ //special transport blocks duct = new Duct("duct"){{ - requirements(Category.distribution, with(Items.graphite, 4, Items.metaglass, 1)); + requirements(Category.distribution, with(Items.graphite, 5, Items.metaglass, 2)); speed = 4f; }}; ductRouter = new DuctRouter("duct-router"){{ - requirements(Category.distribution, with(Items.graphite, 8, Items.metaglass, 2)); + requirements(Category.distribution, with(Items.graphite, 10, Items.metaglass, 4)); speed = 4f; }}; ductBridge = new DuctBridge("duct-bridge"){{ - requirements(Category.distribution, with(Items.graphite, 16, Items.metaglass, 4)); + requirements(Category.distribution, with(Items.graphite, 20, Items.metaglass, 8)); speed = 4f; }}; diff --git a/core/src/mindustry/ui/dialogs/ModsDialog.java b/core/src/mindustry/ui/dialogs/ModsDialog.java index 593c714674..0784bfe95d 100644 --- a/core/src/mindustry/ui/dialogs/ModsDialog.java +++ b/core/src/mindustry/ui/dialogs/ModsDialog.java @@ -127,7 +127,7 @@ public class ModsDialog extends BaseDialog{ try{ return d.parse(text); }catch(Exception e){ - throw new RuntimeException(e); + return new Date(); } }; @@ -148,7 +148,7 @@ public class ModsDialog extends BaseDialog{ void setup(){ float h = 110f; - float w = Math.min(Core.graphics.getWidth() / 1.1f, 520f); //squish ? 410f : 524f; + float w = Math.min(Core.graphics.getWidth() / 1.1f, 520f); cont.clear(); cont.defaults().width(Math.min(Core.graphics.getWidth() / 1.2f, 520f)).pad(4); diff --git a/core/src/mindustry/world/blocks/defense/MendProjector.java b/core/src/mindustry/world/blocks/defense/MendProjector.java index 6fbf281918..036863d530 100644 --- a/core/src/mindustry/world/blocks/defense/MendProjector.java +++ b/core/src/mindustry/world/blocks/defense/MendProjector.java @@ -34,6 +34,8 @@ public class MendProjector extends Block{ group = BlockGroup.projectors; hasPower = true; hasItems = true; + emitLight = true; + lightRadius = 50f; } @Override @@ -129,7 +131,7 @@ public class MendProjector extends Block{ @Override public void drawLight(){ - Drawf.light(team, x, y, 50f * smoothEfficiency, baseColor, 0.7f * smoothEfficiency); + Drawf.light(team, x, y, lightRadius * smoothEfficiency, baseColor, 0.7f * smoothEfficiency); } @Override diff --git a/core/src/mindustry/world/blocks/defense/OverdriveProjector.java b/core/src/mindustry/world/blocks/defense/OverdriveProjector.java index d11ef77db5..8611801979 100644 --- a/core/src/mindustry/world/blocks/defense/OverdriveProjector.java +++ b/core/src/mindustry/world/blocks/defense/OverdriveProjector.java @@ -39,6 +39,8 @@ public class OverdriveProjector extends Block{ hasPower = true; hasItems = true; canOverdrive = false; + emitLight = true; + lightRadius = 50f; } @Override @@ -89,7 +91,7 @@ public class OverdriveProjector extends Block{ @Override public void drawLight(){ - Drawf.light(team, x, y, 50f * smoothEfficiency, baseColor, 0.7f * smoothEfficiency); + Drawf.light(team, x, y, lightRadius * smoothEfficiency, baseColor, 0.7f * smoothEfficiency); } @Override diff --git a/core/src/mindustry/world/blocks/payloads/PayloadMassDriver.java b/core/src/mindustry/world/blocks/payloads/PayloadMassDriver.java index 50aacfe31f..7199d603f3 100644 --- a/core/src/mindustry/world/blocks/payloads/PayloadMassDriver.java +++ b/core/src/mindustry/world/blocks/payloads/PayloadMassDriver.java @@ -443,12 +443,22 @@ public class PayloadMassDriver extends PayloadBlock{ return Point2.unpack(link).sub(tile.x, tile.y); } + @Override + public byte version(){ + return 1; + } + @Override public void write(Writes write){ super.write(write); write.i(link); write.f(turretRotation); write.b((byte)state.ordinal()); + + write.f(reload); + write.f(charge); + write.bool(loaded); + write.bool(charging); } @Override @@ -457,6 +467,13 @@ public class PayloadMassDriver extends PayloadBlock{ link = read.i(); turretRotation = read.f(); state = PayloadDriverState.all[read.b()]; + + if(revision >= 1){ + reload = read.f(); + charge = read.f(); + loaded = read.bool(); + charging = read.bool(); + } } } diff --git a/core/src/mindustry/world/blocks/power/ThermalGenerator.java b/core/src/mindustry/world/blocks/power/ThermalGenerator.java index c57284c667..1c6d7837eb 100644 --- a/core/src/mindustry/world/blocks/power/ThermalGenerator.java +++ b/core/src/mindustry/world/blocks/power/ThermalGenerator.java @@ -18,6 +18,13 @@ public class ThermalGenerator extends PowerGenerator{ super(name); } + @Override + public void init(){ + super.init(); + //proper light clipping + clipSize = Math.max(clipSize, 45f * size * 2f * 2f); + } + @Override public void setStats(){ super.setStats(); @@ -52,7 +59,7 @@ public class ThermalGenerator extends PowerGenerator{ @Override public void drawLight(){ - Drawf.light(team, x, y, (40f + Mathf.absin(10f, 5f)) * productionEfficiency * size, Color.scarlet, 0.4f); + Drawf.light(team, x, y, (40f + Mathf.absin(10f, 5f)) * Math.min(productionEfficiency, 2f) * size, Color.scarlet, 0.4f); } @Override