From f391e7a5ac04ee9731b134e02f31eb26b553e04f Mon Sep 17 00:00:00 2001 From: Anuken Date: Fri, 16 Oct 2020 12:16:00 -0400 Subject: [PATCH] Sector production bugfixes --- core/src/mindustry/content/SectorPresets.java | 14 ++++++------- core/src/mindustry/game/Universe.java | 5 +---- .../mindustry/ui/dialogs/PlanetDialog.java | 20 ++++++++----------- .../world/blocks/storage/CoreBlock.java | 1 + 4 files changed, 17 insertions(+), 23 deletions(-) diff --git a/core/src/mindustry/content/SectorPresets.java b/core/src/mindustry/content/SectorPresets.java index ff1f36bc22..e516bab740 100644 --- a/core/src/mindustry/content/SectorPresets.java +++ b/core/src/mindustry/content/SectorPresets.java @@ -18,7 +18,7 @@ public class SectorPresets implements ContentList{ groundZero = new SectorPreset("groundZero", serpulo, 15){{ alwaysUnlocked = true; captureWave = 10; - difficulty = 0; + difficulty = 1; }}; saltFlats = new SectorPreset("saltFlats", serpulo, 101){{ @@ -26,23 +26,23 @@ public class SectorPresets implements ContentList{ }}; frozenForest = new SectorPreset("frozenForest", serpulo, 86){{ - captureWave = 40; - difficulty = 1; + captureWave = 20; + difficulty = 2; }}; craters = new SectorPreset("craters", serpulo, 18){{ - captureWave = 40; + captureWave = 20; difficulty = 2; }}; ruinousShores = new SectorPreset("ruinousShores", serpulo, 19){{ - captureWave = 40; + captureWave = 30; difficulty = 3; }}; stainedMountains = new SectorPreset("stainedMountains", serpulo, 20){{ captureWave = 30; - difficulty = 2; + difficulty = 3; }}; fungalPass = new SectorPreset("fungalPass", serpulo, 21){{ @@ -54,7 +54,7 @@ public class SectorPresets implements ContentList{ }}; tarFields = new SectorPreset("tarFields", serpulo, 23){{ - captureWave = 40; + captureWave = 50; difficulty = 5; }}; diff --git a/core/src/mindustry/game/Universe.java b/core/src/mindustry/game/Universe.java index 37a22d4209..5577d3da2f 100644 --- a/core/src/mindustry/game/Universe.java +++ b/core/src/mindustry/game/Universe.java @@ -196,18 +196,15 @@ public class Universe{ if(!sector.isAttacked() && turn > invasionGracePeriod){ //TODO use factors like difficulty for better invasion chance if(sector.near().contains(Sector::hasEnemyBase) && Mathf.chance(baseInvasionChance)){ - int waveMax = Math.max(sector.info.winWave, sector.isBeingPlayed() ? state.wave : 0) + Mathf.random(2, 4) * 5; - float waveSpace = Math.max(sector.info.waveSpacing - Mathf.random(1, 4) * 5 * 60, 40 * 60); + int waveMax = Math.max(sector.info.winWave, sector.isBeingPlayed() ? state.wave : 0) + Mathf.random(2, 5) * 5; //assign invasion-related things if(sector.isBeingPlayed()){ state.rules.winWave = waveMax; state.rules.waves = true; - state.rules.waveSpacing = waveSpace; }else{ sector.info.winWave = waveMax; sector.info.waves = true; - sector.info.waveSpacing = waveSpace; sector.saveInfo(); } diff --git a/core/src/mindustry/ui/dialogs/PlanetDialog.java b/core/src/mindustry/ui/dialogs/PlanetDialog.java index 9ad8c87831..2d32588faa 100644 --- a/core/src/mindustry/ui/dialogs/PlanetDialog.java +++ b/core/src/mindustry/ui/dialogs/PlanetDialog.java @@ -380,19 +380,15 @@ public class PlanetDialog extends BaseDialog implements PlanetInterfaceRenderer{ stable.row(); } - if(sector.save != null){ + if(sector.save != null && sector.info.resources.any()){ stable.add("@sectors.resources").row(); stable.table(t -> { - if(sector.info.resources.any()){ - t.left(); - int idx = 0; - int max = 5; - for(UnlockableContent c : sector.info.resources){ - t.image(c.icon(Cicon.small)).padRight(3); - if(++idx % max == 0) t.row(); - } - }else{ - t.add("@unknown").color(Color.lightGray); + t.left(); + int idx = 0; + int max = 5; + for(UnlockableContent c : sector.info.resources){ + t.image(c.icon(Cicon.small)).padRight(3); + if(++idx % max == 0) t.row(); } }).fillX().row(); } @@ -414,7 +410,7 @@ public class PlanetDialog extends BaseDialog implements PlanetInterfaceRenderer{ if(t.getChildren().any()){ stable.add("@sectors.production").row(); - stable.add(t); + stable.add(t).row(); } } diff --git a/core/src/mindustry/world/blocks/storage/CoreBlock.java b/core/src/mindustry/world/blocks/storage/CoreBlock.java index 99ae254e8b..b8c240e95d 100644 --- a/core/src/mindustry/world/blocks/storage/CoreBlock.java +++ b/core/src/mindustry/world/blocks/storage/CoreBlock.java @@ -342,6 +342,7 @@ public class CoreBlock extends StorageBlock{ @Override public void handleItem(Building source, Item item){ if(net.server() || !net.active()){ + state.secinfo.handleCoreItem(item, 1); if(items.get(item) >= getMaximumAccepted(item)){ //create item incineration effect at random intervals