From 32ffacf8f65b4ea0a77881fa268bcb135a5b1dd0 Mon Sep 17 00:00:00 2001 From: Anuken Date: Mon, 16 Mar 2020 23:09:07 -0400 Subject: [PATCH] Added sector deployment UI --- core/assets/planets/TODO.dat | Bin 18372 -> 18360 bytes core/src/mindustry/core/Control.java | 4 +-- .../mindustry/ui/dialogs/PlanetDialog.java | 29 +++++++++++------- tests/src/test/java/ApplicationTests.java | 3 +- .../mindustry/tools/SectorDataGenerator.java | 1 + 5 files changed, 23 insertions(+), 14 deletions(-) diff --git a/core/assets/planets/TODO.dat b/core/assets/planets/TODO.dat index 9f0778d11642707e7c49ae59af015e5a8efd377e..ecc370bc49bbb1a03a54250e475d598243cdeb9c 100644 GIT binary patch literal 18360 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 literal 18372 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 { ui.planet.hide(); SaveSlot slot = sector.save; - //TODO remove for persistent sector slots - slot = null; + //TODO comment for new sector states + //slot = null; if(slot != null){ try{ net.reset(); diff --git a/core/src/mindustry/ui/dialogs/PlanetDialog.java b/core/src/mindustry/ui/dialogs/PlanetDialog.java index 69bd980c99..a817785539 100644 --- a/core/src/mindustry/ui/dialogs/PlanetDialog.java +++ b/core/src/mindustry/ui/dialogs/PlanetDialog.java @@ -162,12 +162,15 @@ public class PlanetDialog extends FloatingDialog{ bloom.render(); Gl.disable(Gl.cullFace); - //Gl.disable(Gl.depthTest); + Gl.disable(Gl.depthTest); - if(false && selected != null){ - Vec3 pos = cam.project(Tmp.v31.set(selected.tile.v).setLength(outlineRad)); + if(selected != null){ + addChild(stable); + Vec3 pos = cam.project(Tmp.v31.set(selected.tile.v).setLength(outlineRad).rotate(Vec3.Y, -planet.getRotation()).add(planet.position)); stable.setPosition(pos.x, pos.y, Align.center); - stable.draw(); + stable.toFront(); + }else{ + stable.remove(); } cam.update(); @@ -225,12 +228,6 @@ public class PlanetDialog extends FloatingDialog{ if(selected != null){ drawSelection(selected); drawBorders(selected, borderColor); - - //TODO use better input - if(Core.input.keyTap(KeyCode.SPACE)){ - control.playSector(selected); - ui.planet.hide(); - } } batch.flush(Gl.triangles); @@ -277,6 +274,7 @@ public class PlanetDialog extends FloatingDialog{ } private void updateSelected(){ + float x = stable.getX(Align.center), y = stable.getY(Align.center); stable.clear(); stable.background(Styles.black6); @@ -302,8 +300,17 @@ public class PlanetDialog extends FloatingDialog{ } }).fillX().row(); + stable.row(); + + stable.addButton("Launch", () -> { + if(selected != null){ + control.playSector(selected); + hide(); + } + }).size(120f, 50f).pad(2f); + stable.pack(); - stable.setPosition(0, 0, Align.center); + stable.setPosition(x, y, Align.center); } private void setPlane(Sector sector){ diff --git a/tests/src/test/java/ApplicationTests.java b/tests/src/test/java/ApplicationTests.java index 484e31625b..b7bfe1bf91 100644 --- a/tests/src/test/java/ApplicationTests.java +++ b/tests/src/test/java/ApplicationTests.java @@ -404,6 +404,8 @@ public class ApplicationTests{ //infinite build range state.rules.editor = true; + state.rules.infiniteResources = true; + state.rules.buildSpeedMultiplier = 999999f; d1.set(0f, 0f); d2.set(20f, 20f); @@ -411,7 +413,6 @@ public class ApplicationTests{ d1.addBuild(new BuildRequest(0, 0, 0, Blocks.copperWallLarge)); d2.addBuild(new BuildRequest(1, 1, 0, Blocks.copperWallLarge)); - Time.setDeltaProvider(() -> 9999999f); d1.update(); d2.update(); diff --git a/tools/src/mindustry/tools/SectorDataGenerator.java b/tools/src/mindustry/tools/SectorDataGenerator.java index ec1688f32f..77c0134e3e 100644 --- a/tools/src/mindustry/tools/SectorDataGenerator.java +++ b/tools/src/mindustry/tools/SectorDataGenerator.java @@ -39,6 +39,7 @@ public class SectorDataGenerator{ for(Planet planet : content.getBy(ContentType.planet)){ int[] count = {0}; + if(planet.grid == null) continue; Fi fi = Fi.get("planets").child(planet.name + ".dat");