diff --git a/core/src/mindustry/ai/types/CommandAI.java b/core/src/mindustry/ai/types/CommandAI.java index 630e52f86f..a4568538bc 100644 --- a/core/src/mindustry/ai/types/CommandAI.java +++ b/core/src/mindustry/ai/types/CommandAI.java @@ -168,7 +168,7 @@ public class CommandAI extends AIController{ @Override public Teamc findTarget(float x, float y, float range, boolean air, boolean ground){ - return attackTarget == null || !attackTarget.within(x, y, range + (attackTarget instanceof Sized s ? s.hitSize()/2f : 0f)) ? super.findTarget(x, y, range, air, ground) : attackTarget; + return attackTarget == null || !attackTarget.within(x, y, range + 3f + (attackTarget instanceof Sized s ? s.hitSize()/2f : 0f)) ? super.findTarget(x, y, range, air, ground) : attackTarget; } @Override diff --git a/core/src/mindustry/content/Blocks.java b/core/src/mindustry/content/Blocks.java index 5647cce590..196c8b0556 100644 --- a/core/src/mindustry/content/Blocks.java +++ b/core/src/mindustry/content/Blocks.java @@ -3670,7 +3670,7 @@ public class Blocks{ shootShake = 1f; ammoPerShot = 5; - draw = new DrawTurret("reinforced-"); + drawer = new DrawTurret("reinforced-"); shootY = -2; outlineColor = Pal.darkOutline; size = 3; @@ -3693,7 +3693,7 @@ public class Blocks{ //TODO requirements requirements(Category.turret, with(Items.tungsten, 150, Items.silicon, 200, Items.oxide, 40, Items.beryllium, 400)); - draw = new DrawTurret("reinforced-"){{ + drawer = new DrawTurret("reinforced-"){{ Color heatc = Color.valueOf("fa2859"); heatColor = heatc; @@ -3811,7 +3811,7 @@ public class Blocks{ coolant = consume(new ConsumeLiquid(Liquids.water, 30f / 60f)); coolantMultiplier = 1.5f; - draw = new DrawTurret("reinforced-"){{ + drawer = new DrawTurret("reinforced-"){{ parts.addAll( new RegionPart("-barrel"){{ progress = PartProgress.reload.curve(Interp.pow2In); @@ -3878,7 +3878,7 @@ public class Blocks{ coolant = consume(new ConsumeLiquid(Liquids.water, 30f / 60f)); - draw = new DrawTurret("reinforced-"){{ + drawer = new DrawTurret("reinforced-"){{ parts.add(new RegionPart("-side"){{ mirror = true; under = true; diff --git a/core/src/mindustry/content/ErekirTechTree.java b/core/src/mindustry/content/ErekirTechTree.java index 16db94f4d9..e7fd74d3d7 100644 --- a/core/src/mindustry/content/ErekirTechTree.java +++ b/core/src/mindustry/content/ErekirTechTree.java @@ -265,29 +265,41 @@ public class ErekirTechTree{ }); }); - node(fabricator, () -> { - node(UnitTypes.stell, Seq.with(new Research(siliconArcFurnace), new Research(plasmaBore), new Research(turbineCondenser)), () -> { + node(fabricator, Seq.with(new Research(siliconArcFurnace), new Research(plasmaBore), new Research(turbineCondenser)), () -> { + node(UnitTypes.stell, () -> { }); - node(tankAssembler, Seq.with(new OnSector(four), new Research(constructor), new Research(atmosphericConcentrator)), () -> { - node(UnitTypes.vanquish, () -> { - node(UnitTypes.conquer, Seq.with(tmpNever), () -> { + node(tankReconstructor, () -> { + node(UnitTypes.locus); - }); - }); + node(shipReconstructor, () -> { + node(UnitTypes.avert); - node(shipAssembler, Seq.with(new OnSector(five)), () -> { - node(UnitTypes.quell, () -> { - node(UnitTypes.disrupt, Seq.with(tmpNever), () -> { + node(mechReconstructor, () -> { + node(UnitTypes.latum); - }); - }); + node(tankAssembler, Seq.with(new OnSector(four), new Research(constructor), new Research(atmosphericConcentrator)), () -> { + node(UnitTypes.vanquish, () -> { + node(UnitTypes.conquer, Seq.with(tmpNever), () -> { - node(mechAssembler, Seq.with(tmpNever), () -> { - node(UnitTypes.bulwark, () -> { - node(UnitTypes.krepost, Seq.with(tmpNever), () -> { + }); + }); + node(shipAssembler, Seq.with(new OnSector(five)), () -> { + node(UnitTypes.quell, () -> { + node(UnitTypes.disrupt, Seq.with(tmpNever), () -> { + + }); + }); + + node(mechAssembler, Seq.with(tmpNever), () -> { + node(UnitTypes.bulwark, () -> { + node(UnitTypes.krepost, Seq.with(tmpNever), () -> { + + }); + }); + }); }); }); }); diff --git a/core/src/mindustry/content/UnitTypes.java b/core/src/mindustry/content/UnitTypes.java index 02db950828..d08b065c1c 100644 --- a/core/src/mindustry/content/UnitTypes.java +++ b/core/src/mindustry/content/UnitTypes.java @@ -687,8 +687,6 @@ public class UnitTypes{ armor = 5f; ammoType = new PowerAmmoType(1000); - buildSpeed = 0.75f; - visualElevation = 0.3f; groundLayer = Layer.legUnit; @@ -757,7 +755,6 @@ public class UnitTypes{ rippleScale = 2f; legSpeed = 0.2f; ammoType = new PowerAmmoType(2000); - buildSpeed = 1f; legSplashDamage = 32; legSplashRange = 30; @@ -861,7 +858,6 @@ public class UnitTypes{ rippleScale = 3f; legSpeed = 0.19f; ammoType = new ItemAmmoType(Items.graphite, 8); - buildSpeed = 1f; legSplashDamage = 80; legSplashRange = 60; @@ -1840,7 +1836,6 @@ public class UnitTypes{ rotateShooting = false; range = 100f; ammoType = new PowerAmmoType(900); - armor = 3f; buildSpeed = 1.5f; @@ -2512,6 +2507,7 @@ public class UnitTypes{ rotate = true; rotateSpeed = 1.4f; mirror = false; + shootCone = 2f; x = 0f; y = 0f; heatColor = Color.valueOf("f9350f"); diff --git a/core/src/mindustry/entities/bullet/RailBulletType.java b/core/src/mindustry/entities/bullet/RailBulletType.java index 4d0fd7ad31..8055446b81 100644 --- a/core/src/mindustry/entities/bullet/RailBulletType.java +++ b/core/src/mindustry/entities/bullet/RailBulletType.java @@ -28,6 +28,7 @@ public class RailBulletType extends BulletType{ hitEffect = Fx.none; despawnEffect = Fx.none; collides = false; + keepVelocity = false; lifetime = 1f; } diff --git a/core/src/mindustry/graphics/FogRenderer.java b/core/src/mindustry/graphics/FogRenderer.java index 3cd6eefeaa..9a8cbd0a26 100644 --- a/core/src/mindustry/graphics/FogRenderer.java +++ b/core/src/mindustry/graphics/FogRenderer.java @@ -114,7 +114,7 @@ public final class FogRenderer{ Draw.color(state.rules.dynamicColor); Draw.fbo(dynamicFog.getTexture(), world.width(), world.height(), tilesize); //TODO ai check? - if(state.rules.staticFog && !player.team().isAI()){ + if(state.rules.staticFog){ //TODO why does this require a half-tile offset while dynamic does not Draw.color(state.rules.staticColor); Draw.fbo(staticFog.getTexture(), world.width(), world.height(), tilesize, tilesize/2f); diff --git a/core/src/mindustry/world/blocks/defense/turrets/Turret.java b/core/src/mindustry/world/blocks/defense/turrets/Turret.java index 726d701def..9d3f34e721 100644 --- a/core/src/mindustry/world/blocks/defense/turrets/Turret.java +++ b/core/src/mindustry/world/blocks/defense/turrets/Turret.java @@ -88,7 +88,7 @@ public class Turret extends ReloadTurret{ public Sortf unitSort = UnitSorts.closest; public Boolf unitFilter = u -> true; - public DrawBlock draw = new DrawTurret(); + public DrawBlock drawer = new DrawTurret(); public Turret(String name){ super(name); @@ -139,17 +139,17 @@ public class Turret extends ReloadTurret{ public void load(){ super.load(); - draw.load(this); + drawer.load(this); } @Override public TextureRegion[] icons(){ - return draw.finalIcons(this); + return drawer.finalIcons(this); } @Override public void getRegionsToOutline(Seq out){ - draw.getRegionsToOutline(this, out); + drawer.getRegionsToOutline(this, out); } public static abstract class AmmoEntry{ @@ -295,7 +295,7 @@ public class Turret extends ReloadTurret{ @Override public void draw(){ - draw.draw(this); + drawer.draw(this); } @Override diff --git a/core/src/mindustry/world/blocks/production/Pump.java b/core/src/mindustry/world/blocks/production/Pump.java index 304f8a5c74..0935cc4b4d 100644 --- a/core/src/mindustry/world/blocks/production/Pump.java +++ b/core/src/mindustry/world/blocks/production/Pump.java @@ -19,7 +19,7 @@ public class Pump extends LiquidBlock{ public float pumpAmount = 0.2f; /** Interval in-between item consumptions, if applicable. */ public float consumeTime = 60f * 5f; - public DrawBlock draw = new DrawMulti(new DrawDefault(), new DrawPumpLiquid()); + public DrawBlock drawer = new DrawMulti(new DrawDefault(), new DrawPumpLiquid()); public Pump(String name){ super(name); @@ -68,12 +68,12 @@ public class Pump extends LiquidBlock{ @Override public void load(){ super.load(); - draw.load(this); + drawer.load(this); } @Override public TextureRegion[] icons(){ - return draw.finalIcons(this); + return drawer.finalIcons(this); } @Override @@ -110,13 +110,13 @@ public class Pump extends LiquidBlock{ @Override public void draw(){ - draw.draw(this); + drawer.draw(this); } @Override public void drawLight(){ super.drawLight(); - draw.drawLight(this); + drawer.drawLight(this); } @Override diff --git a/gradle.properties b/gradle.properties index 999615608e..4bb125b886 100644 --- a/gradle.properties +++ b/gradle.properties @@ -24,4 +24,4 @@ android.useAndroidX=true #used for slow jitpack builds; TODO see if this actually works org.gradle.internal.http.socketTimeout=100000 org.gradle.internal.http.connectionTimeout=100000 -archash=16a80926a6 +archash=60704334ff