diff --git a/core/assets-raw/sprites/units/conquer-treads.png b/core/assets-raw/sprites/units/conquer-treads.png index e265316c06..120fec69e9 100644 Binary files a/core/assets-raw/sprites/units/conquer-treads.png and b/core/assets-raw/sprites/units/conquer-treads.png differ diff --git a/core/assets-raw/sprites/units/conquer.aseprite b/core/assets-raw/sprites/units/conquer.aseprite index fef7b57363..a03661e347 100644 Binary files a/core/assets-raw/sprites/units/conquer.aseprite and b/core/assets-raw/sprites/units/conquer.aseprite differ diff --git a/core/assets-raw/sprites/units/conquer.png b/core/assets-raw/sprites/units/conquer.png index 0eec5bc3dc..aa349920a5 100644 Binary files a/core/assets-raw/sprites/units/conquer.png and b/core/assets-raw/sprites/units/conquer.png differ diff --git a/core/assets-raw/sprites/units/krepost.png b/core/assets-raw/sprites/units/krepost.png new file mode 100644 index 0000000000..8abb5caf67 Binary files /dev/null and b/core/assets-raw/sprites/units/krepost.png differ diff --git a/core/assets/maps/three.msav b/core/assets/maps/three.msav new file mode 100644 index 0000000000..2407974b79 Binary files /dev/null and b/core/assets/maps/three.msav differ diff --git a/core/src/mindustry/content/Blocks.java b/core/src/mindustry/content/Blocks.java index 0938d34b3a..d3a9ea1dae 100644 --- a/core/src/mindustry/content/Blocks.java +++ b/core/src/mindustry/content/Blocks.java @@ -3105,7 +3105,7 @@ public class Blocks{ //TODO bad name sublimate = new ContinuousLiquidTurret("sublimate"){{ //TODO requirements - requirements(Category.turret, with(Items.tungsten, 150, Items.silicon, 160, Items.oxide, 50, Items.beryllium, 250)); + requirements(Category.turret, with(Items.tungsten, 150, Items.silicon, 200, Items.oxide, 40, Items.beryllium, 400)); draw = new DrawTurret("reinforced-"){{ @@ -3147,14 +3147,14 @@ public class Blocks{ //TODO balance, set up, where is liquid/sec displayed? status effects maybe? ammo( Liquids.ozone, new ContinuousFlameBulletType(){{ - damage = 9f; + damage = 85f; length = range; knockback = 1f; colors = new Color[]{Color.valueOf("eb7abe").a(0.55f), Color.valueOf("e189f5").a(0.7f), Color.valueOf("907ef7").a(0.8f), Color.valueOf("91a4ff"), Color.white}; }}, Liquids.cyanogen, new ContinuousFlameBulletType(){{ - damage = 20f; + damage = 180f; rangeChange = 70f; length = range + rangeChange; knockback = 2f; diff --git a/core/src/mindustry/content/ErekirTechTree.java b/core/src/mindustry/content/ErekirTechTree.java index 28ab787087..6139f5f404 100644 --- a/core/src/mindustry/content/ErekirTechTree.java +++ b/core/src/mindustry/content/ErekirTechTree.java @@ -89,7 +89,7 @@ public class ErekirTechTree{ node(turbineCondenser, () -> { node(beamNode, () -> { node(ventCondenser, Seq.with(new OnSector(aware)), () -> { - node(chemicalCombustionChamber, () -> { + node(chemicalCombustionChamber, Seq.with(new OnSector(three)), () -> { node(pyrolysisGenerator, () -> { }); @@ -111,7 +111,7 @@ public class ErekirTechTree{ node(reinforcedConduit, () -> { //TODO maybe should be even later - node(reinforcedPump, Seq.with(new SectorComplete(aware)), () -> { + node(reinforcedPump, Seq.with(new OnSector(three)), () -> { //TODO T2 pump, consume cyanogen or similar }); @@ -122,7 +122,7 @@ public class ErekirTechTree{ node(reinforcedLiquidRouter, () -> { node(reinforcedLiquidContainer, () -> { - node(reinforcedLiquidTank, Seq.with(new SectorComplete(aware)), () -> { + node(reinforcedLiquidTank, Seq.with(new SectorComplete(three)), () -> { }); }); @@ -132,8 +132,7 @@ public class ErekirTechTree{ node(siliconArcFurnace, () -> { node(cliffCrusher, () -> { - //TODO should be gated on landing of 3rd sector, not complete? - node(electrolyzer, Seq.with(new SectorComplete(aware)), () -> { + node(electrolyzer, Seq.with(new OnSector(three)), () -> { node(oxidationChamber, () -> { node(electricHeater, () -> { node(heatRedirector, () -> { @@ -204,7 +203,9 @@ public class ErekirTechTree{ //TODO more sectors node(onset, () -> { node(aware, Seq.with(new SectorComplete(onset), new Research(ductRouter)), () -> { + node(three, Seq.with(new SectorComplete(aware), new Research(reinforcedContainer), new Research(ductUnloader), new Research(ventCondenser)), () -> { + }); }); }); diff --git a/core/src/mindustry/content/SectorPresets.java b/core/src/mindustry/content/SectorPresets.java index 49ae19adb1..4aa2e6c966 100644 --- a/core/src/mindustry/content/SectorPresets.java +++ b/core/src/mindustry/content/SectorPresets.java @@ -12,7 +12,7 @@ public class SectorPresets{ impact0078, desolateRift, nuclearComplex, planetaryTerminal, coastline, navalFortress, - onset, aware + onset, aware, three ; public static void load(){ @@ -123,6 +123,11 @@ public class SectorPresets{ difficulty = 3; }}; + three = new SectorPreset("three", erekir, 32){{ + captureWave = 100; + difficulty = 8; + }}; + //endregion } } diff --git a/core/src/mindustry/content/UnitTypes.java b/core/src/mindustry/content/UnitTypes.java index 4b49df1ca3..8dcb38a3b1 100644 --- a/core/src/mindustry/content/UnitTypes.java +++ b/core/src/mindustry/content/UnitTypes.java @@ -11,7 +11,6 @@ import mindustry.entities.*; import mindustry.entities.abilities.*; import mindustry.entities.bullet.*; import mindustry.entities.effect.*; -import mindustry.entities.units.*; import mindustry.gen.*; import mindustry.graphics.*; import mindustry.type.*; @@ -35,7 +34,7 @@ public class UnitTypes{ public static @EntityDef(value = {Unitc.class, Mechc.class}, legacy = true) UnitType nova, pulsar, quasar; //legs - public static @EntityDef({Unitc.class, Legsc.class}) UnitType corvus, atrax, bulwark; + public static @EntityDef({Unitc.class, Legsc.class}) UnitType corvus, atrax, bulwark, krepost; //legs, legacy public static @EntityDef(value = {Unitc.class, Legsc.class}, legacy = true) UnitType spiroct, arkyid, toxopid; @@ -2508,7 +2507,7 @@ public class UnitTypes{ armor = 25f; areaDamage = 22f; rotateSpeed = 0.9f; - treadRects = new Rect[]{new Rect(27, 152, 56, 73), new Rect(24, 51, 29, 17), new Rect(59, 18, 39, 19)}; + treadRects = new Rect[]{new Rect(27, 152, 56, 73), new Rect(24, 51 - 9, 29, 17), new Rect(59, 18 - 9, 39, 19)}; //TODO maybe different sprite, weapon impl weapons.add(new Weapon("conquer-weapon"){{ @@ -2522,7 +2521,7 @@ public class UnitTypes{ mirror = false; x = 0f; shadow = 32f; - y = -5f; + y = -8f; heatColor = Color.valueOf("f9350f"); cooldownTime = 80f; @@ -2546,9 +2545,9 @@ public class UnitTypes{ }}); //TODO could change color when shooting - decals.add(new UnitDecal("conquer-glow", Pal.turretHeat.cpy(), Blending.additive){{ - layer = -1f; - }}); + //decals.add(new UnitDecal("conquer-glow", Pal.turretHeat.cpy(), Blending.additive){{ + // layer = -1f; + //}}); }}; //endregion