diff --git a/core/src/io/anuke/mindustry/editor/WaveInfoDialog.java b/core/src/io/anuke/mindustry/editor/WaveInfoDialog.java index 1cb2fadae4..33642245d0 100644 --- a/core/src/io/anuke/mindustry/editor/WaveInfoDialog.java +++ b/core/src/io/anuke/mindustry/editor/WaveInfoDialog.java @@ -37,7 +37,13 @@ public class WaveInfoDialog extends FloatingDialog{ this.editor = editor; shown(this::setup); - hidden(() -> editor.getTags().put("waves", world.maps.writeWaves(groups))); + hidden(() -> { + if(groups == null){ + editor.getTags().remove("waves"); + }else{ + editor.getTags().put("waves", world.maps.writeWaves(groups)); + } + }); addCloseButton(); buttons.addButton("$settings.reset", () -> ui.showConfirm("$confirm", "$settings.clear.confirm", () ->{ diff --git a/core/src/io/anuke/mindustry/world/blocks/power/PowerGraph.java b/core/src/io/anuke/mindustry/world/blocks/power/PowerGraph.java index 949a549c89..6de3fbbff2 100644 --- a/core/src/io/anuke/mindustry/world/blocks/power/PowerGraph.java +++ b/core/src/io/anuke/mindustry/world/blocks/power/PowerGraph.java @@ -143,6 +143,10 @@ public class PowerGraph{ } public void update(){ + if(Core.graphics.getFrameId() == lastFrameUpdated){ + return; + } + lastFrameUpdated = Core.graphics.getFrameId(); float powerNeeded = getPowerNeeded(); @@ -150,7 +154,7 @@ public class PowerGraph{ powerBalance.addValue((powerProduced - powerNeeded) / Time.delta()); - if(Core.graphics.getFrameId() == lastFrameUpdated || (consumers.size == 0 && producers.size == 0 && batteries.size == 0)){ + if(consumers.size == 0 && producers.size == 0 && batteries.size == 0){ return; }