diff --git a/core/assets/bundles/bundle.properties b/core/assets/bundles/bundle.properties index 671eff2048..eef7dd7e26 100644 --- a/core/assets/bundles/bundle.properties +++ b/core/assets/bundles/bundle.properties @@ -561,6 +561,7 @@ sector.tarFields.name = Tar Fields sector.saltFlats.name = Salt Flats sector.fungalPass.name = Fungal Pass sector.biomassFacility.name = Biomass Synthesis Facility +sector.windsweptIslands.name = Windswept Islands #unused #sector.crags.name = Crags diff --git a/core/assets/maps/windsweptIslands.msav b/core/assets/maps/windsweptIslands.msav new file mode 100644 index 0000000000..347c8ce3f4 Binary files /dev/null and b/core/assets/maps/windsweptIslands.msav differ diff --git a/core/src/mindustry/content/SectorPresets.java b/core/src/mindustry/content/SectorPresets.java index 8b1459552a..e6ff587048 100644 --- a/core/src/mindustry/content/SectorPresets.java +++ b/core/src/mindustry/content/SectorPresets.java @@ -8,7 +8,7 @@ import static mindustry.content.Planets.*; public class SectorPresets implements ContentList{ public static SectorPreset groundZero, - craters, biomassFacility, frozenForest, ruinousShores, stainedMountains, tarFields, fungalPass, + craters, biomassFacility, frozenForest, ruinousShores, windsweptIslands, stainedMountains, tarFields, fungalPass, saltFlats, overgrowth, impact0078, desolateRift, nuclearComplex; @@ -46,6 +46,11 @@ public class SectorPresets implements ContentList{ difficulty = 3; }}; + windsweptIslands = new SectorPreset("windsweptIslands", serpulo, 246){{ + captureWave = 30; + difficulty = 5; + }}; + stainedMountains = new SectorPreset("stainedMountains", serpulo, 20){{ captureWave = 30; difficulty = 3; diff --git a/core/src/mindustry/content/TechTree.java b/core/src/mindustry/content/TechTree.java index 559611fb69..77e5344e05 100644 --- a/core/src/mindustry/content/TechTree.java +++ b/core/src/mindustry/content/TechTree.java @@ -436,7 +436,7 @@ public class TechTree implements ContentList{ }); }); - node(navalFactory, () -> { + node(navalFactory, Seq.with(new SectorComplete(ruinousShores)), () -> { node(risso, () -> { node(minke, () -> { node(bryde, () -> { @@ -479,36 +479,44 @@ public class TechTree implements ContentList{ new Research(kiln), new Research(mechanicalPump) ), () -> { - node(tarFields, Seq.with( + node(windsweptIslands, Seq.with( new SectorComplete(ruinousShores), - new Research(coalCentrifuge), - new Research(conduit), - new Research(wave) + new Research(pneumaticDrill), + new Research(hail), + new Research(siliconSmelter), + new Research(steamGenerator) ), () -> { - //TODO change positions? - node(impact0078, Seq.with( - new SectorComplete(tarFields), - new Research(Items.thorium), - new Research(overdriveProjector) + node(tarFields, Seq.with( + new SectorComplete(windsweptIslands), + new Research(coalCentrifuge), + new Research(conduit), + new Research(wave) ), () -> { - node(desolateRift, Seq.with( - new SectorComplete(impact0078), - new Research(thermalGenerator), - new Research(thoriumReactor) + //TODO change positions? + node(impact0078, Seq.with( + new SectorComplete(tarFields), + new Research(Items.thorium), + new Research(overdriveProjector) ), () -> { + node(desolateRift, Seq.with( + new SectorComplete(impact0078), + new Research(thermalGenerator), + new Research(thoriumReactor) + ), () -> { + }); }); }); - }); - node(saltFlats, Seq.with( - new SectorComplete(ruinousShores), - new Research(groundFactory), - new Research(airFactory), - new Research(door), - new Research(waterExtractor) - ), () -> { + node(saltFlats, Seq.with( + new SectorComplete(windsweptIslands), + new Research(groundFactory), + new Research(airFactory), + new Research(door), + new Research(waterExtractor) + ), () -> { + }); }); }); diff --git a/core/src/mindustry/core/Control.java b/core/src/mindustry/core/Control.java index 2134d08d57..946c675605 100644 --- a/core/src/mindustry/core/Control.java +++ b/core/src/mindustry/core/Control.java @@ -175,6 +175,8 @@ public class Control implements ApplicationListener, Loadable{ app.post(() -> ui.hudfrag.showLand()); renderer.zoomIn(Fx.coreLand.lifetime); app.post(() -> Fx.coreLand.at(core.getX(), core.getY(), 0, core.block)); + camera.position.set(core); + player.set(core); Time.run(Fx.coreLand.lifetime, () -> { Fx.launch.at(core); Effect.shake(5f, 5f, core); diff --git a/core/src/mindustry/core/Logic.java b/core/src/mindustry/core/Logic.java index 646d0732a6..85cb166237 100644 --- a/core/src/mindustry/core/Logic.java +++ b/core/src/mindustry/core/Logic.java @@ -34,7 +34,6 @@ public class Logic implements ApplicationListener{ Events.on(BlockDestroyEvent.class, event -> { //blocks that get broken are appended to the team's broken block queue Tile tile = event.tile; - Block block = tile.block(); //skip null entities or un-rebuildables, for obvious reasons; also skip client since they can't modify these requests if(tile.build == null || !tile.block().rebuildable || net.client()) return; diff --git a/core/src/mindustry/input/DesktopInput.java b/core/src/mindustry/input/DesktopInput.java index 50bcf839e3..4533053822 100644 --- a/core/src/mindustry/input/DesktopInput.java +++ b/core/src/mindustry/input/DesktopInput.java @@ -61,7 +61,7 @@ public class DesktopInput extends InputHandler{ t.visible(() -> { t.color.a = Mathf.lerpDelta(t.color.a, player.builder().isBuilding() ? 1f : 0f, 0.15f); - return Core.settings.getBool("hints") && selectRequests.isEmpty() && t.color.a > 0.01f; + return ui.hudfrag.shown && Core.settings.getBool("hints") && selectRequests.isEmpty() && t.color.a > 0.01f; }); t.touchable(() -> t.color.a < 0.1f ? Touchable.disabled : Touchable.childrenOnly); t.table(Styles.black6, b -> { @@ -75,7 +75,7 @@ public class DesktopInput extends InputHandler{ }); group.fill(t -> { - t.visible(() -> lastSchematic != null && !selectRequests.isEmpty()); + t.visible(() -> ui.hudfrag.shown && lastSchematic != null && !selectRequests.isEmpty()); t.bottom(); t.table(Styles.black6, b -> { b.defaults().left(); diff --git a/core/src/mindustry/ui/fragments/HudFragment.java b/core/src/mindustry/ui/fragments/HudFragment.java index c2d372786e..d3ec9647a0 100644 --- a/core/src/mindustry/ui/fragments/HudFragment.java +++ b/core/src/mindustry/ui/fragments/HudFragment.java @@ -446,7 +446,7 @@ public class HudFragment extends Fragment{ Table table = new Table(Tex.button); table.update(() -> { - if(state.isMenu()){ + if(state.isMenu() || !ui.hudfrag.shown){ table.remove(); } });