Merge branch 'master' of https://github.com/Anuken/Mindustry into 7.0-features

 Conflicts:
	core/src/mindustry/content/Blocks.java
This commit is contained in:
Anuken
2021-06-05 11:57:14 -04:00
94 changed files with 1030 additions and 714 deletions

View File

@@ -1168,22 +1168,24 @@ public class Blocks implements ContentList{
reloadTime = 200f;
range = 440f;
consumes.power(1.75f);
bullet = new MassDriverBolt();
}};
//special transport blocks
duct = new Duct("duct"){{
requirements(Category.distribution, with(Items.graphite, 5, Items.copper, 5));
speed = 5f;
requirements(Category.distribution, with(Items.graphite, 5, Items.metaglass, 2));
speed = 4f;
}};
ductRouter = new DuctRouter("duct-router"){{
requirements(Category.distribution, with(Items.graphite, 10, Items.copper, 5));
speed = 5f;
requirements(Category.distribution, with(Items.graphite, 10, Items.metaglass, 4));
speed = 4f;
}};
ductBridge = new DuctBridge("duct-bridge"){{
requirements(Category.distribution, with(Items.graphite, 20, Items.copper, 15));
requirements(Category.distribution, with(Items.graphite, 20, Items.metaglass, 8));
speed = 4f;
}};
//endregion
@@ -2048,7 +2050,7 @@ public class Blocks implements ContentList{
requirements(Category.units, with(Items.copper, 150, Items.lead, 130, Items.metaglass, 120));
plans = Seq.with(
new UnitPlan(UnitTypes.risso, 60f * 45f, with(Items.silicon, 20, Items.metaglass, 35)),
new UnitPlan(UnitTypes.retusa, 60f * 60f, with(Items.silicon, 15, Items.metaglass, 25, Items.titanium, 20))
new UnitPlan(UnitTypes.retusa, 60f * 50f, with(Items.silicon, 15, Items.metaglass, 25, Items.titanium, 20))
);
size = 3;
consumes.power(1.2f);
@@ -2090,7 +2092,8 @@ public class Blocks implements ContentList{
new UnitType[]{UnitTypes.poly, UnitTypes.mega},
new UnitType[]{UnitTypes.minke, UnitTypes.bryde},
new UnitType[]{UnitTypes.pulsar, UnitTypes.quasar},
new UnitType[]{UnitTypes.atrax, UnitTypes.spiroct}
new UnitType[]{UnitTypes.atrax, UnitTypes.spiroct},
new UnitType[]{UnitTypes.oxynoe, UnitTypes.cyerce}
);
}};
@@ -2111,7 +2114,8 @@ public class Blocks implements ContentList{
new UnitType[]{UnitTypes.fortress, UnitTypes.scepter},
new UnitType[]{UnitTypes.bryde, UnitTypes.sei},
new UnitType[]{UnitTypes.mega, UnitTypes.quad},
new UnitType[]{UnitTypes.quasar, UnitTypes.vela}
new UnitType[]{UnitTypes.quasar, UnitTypes.vela},
new UnitType[]{UnitTypes.cyerce, UnitTypes.aegires}
);
}};
@@ -2132,7 +2136,8 @@ public class Blocks implements ContentList{
new UnitType[]{UnitTypes.scepter, UnitTypes.reign},
new UnitType[]{UnitTypes.sei, UnitTypes.omura},
new UnitType[]{UnitTypes.quad, UnitTypes.oct},
new UnitType[]{UnitTypes.vela, UnitTypes.corvus}
new UnitType[]{UnitTypes.vela, UnitTypes.corvus},
new UnitType[]{UnitTypes.aegires, UnitTypes.navanax}
);
}};
@@ -2149,7 +2154,7 @@ public class Blocks implements ContentList{
requirements(Category.units, with(Items.silicon, 70, Items.thorium, 60, Items.plastanium, 60));
size = 2;
length = 6f;
repairSpeed = 5f;
repairSpeed = 4f;
repairRadius = 140f;
powerUse = 5f;
beamWidth = 1.1f;

View File

@@ -36,7 +36,7 @@ public class Bullets implements ContentList{
waterShot, cryoShot, slagShot, oilShot, heavyWaterShot, heavyCryoShot, heavySlagShot, heavyOilShot,
//environment, misc.
damageLightning, damageLightningGround, fireball, basicFlame, pyraFlame, driverBolt;
damageLightning, damageLightningGround, fireball, basicFlame, pyraFlame;
@Override
public void load(){
@@ -510,7 +510,5 @@ public class Bullets implements ContentList{
statusDuration = 60f * 4f;
damage = 0.2f;
}};
driverBolt = new MassDriverBolt();
}
}

View File

@@ -855,6 +855,7 @@ public class Fx{
if(Fire.regions[0] == null) return;
alpha(e.fout());
rect(Fire.regions[((int)(e.rotation + e.fin() * Fire.frames)) % Fire.frames], e.x, e.y);
Drawf.light(e.x, e.y, 50f + Mathf.absin(5f, 5f), Pal.lightFlame, 0.6f * e.fout());
}),
fire = new Effect(50f, e -> {
@@ -962,7 +963,7 @@ public class Fx{
}),
overdriven = new Effect(20f, e -> {
color(Pal.accent);
color(e.color);
randLenVectors(e.id, 2, 1f + e.fin() * 2f, (x, y) -> {
Fill.square(e.x + x, e.y + y, e.fout() * 2.3f + 0.5f);
@@ -970,7 +971,7 @@ public class Fx{
}),
overclocked = new Effect(50f, e -> {
color(Pal.accent);
color(e.color);
Fill.square(e.x, e.y, e.fslope() * 2f, 45f);
}),

View File

@@ -53,7 +53,9 @@ public class TechTree implements ContentList{
node(titaniumConveyor, Seq.with(new SectorComplete(craters)), () -> {
node(phaseConveyor, () -> {
node(massDriver, () -> {
node(payloadPropulsionTower, () -> {
});
});
});
@@ -233,7 +235,9 @@ public class TechTree implements ContentList{
});
node(repairPoint, () -> {
node(repairTurret, () -> {
});
});
});
});
@@ -416,6 +420,18 @@ public class TechTree implements ContentList{
});
});
});
node(retusa, () -> {
node(oxynoe, () -> {
node(cyerce, () -> {
node(aegires, () -> {
node(navanax, () -> {
});
});
});
});
});
});
});
});

View File

@@ -1375,7 +1375,7 @@ public class UnitTypes implements ContentList{
shrinkX = shrinkY = 0.7f;
speed = 0.001f;
speed = 0f;
collides = false;
healPercent = 15f;
@@ -1759,7 +1759,7 @@ public class UnitTypes implements ContentList{
armor = 3f;
buildSpeed = 2f;
buildSpeed = 1.5f;
weapons.add(new RepairBeamWeapon("repair-beam-weapon-center"){{
x = 0f;
@@ -1810,7 +1810,7 @@ public class UnitTypes implements ContentList{
shrinkX = shrinkY = 0f;
speed = 0.001f;
speed = 0f;
splashDamage = 50f;
splashDamageRadius = 40f;
@@ -1833,7 +1833,7 @@ public class UnitTypes implements ContentList{
trailY = -4f;
trailScl = 1.9f;
buildSpeed = 2.5f;
buildSpeed = 2f;
weapons.add(new Weapon("plasma-mount-weapon"){{
@@ -1906,7 +1906,7 @@ public class UnitTypes implements ContentList{
trailY = -9f;
trailScl = 2f;
buildSpeed = 3f;
buildSpeed = 2f;
weapons.add(new RepairBeamWeapon("repair-beam-weapon-center"){{
x = 11f;
@@ -1936,7 +1936,6 @@ public class UnitTypes implements ContentList{
ejectEffect = Fx.none;
bullet = new FlakBulletType(2.5f, 25){{
sprite = "missile-large";
collides = false;
//for targeting
collidesGround = collidesAir = true;
explodeRange = 40f;
@@ -1950,9 +1949,9 @@ public class UnitTypes implements ContentList{
lightColor = Pal.heal;
splashDamageRadius = 30f;
splashDamage = 28f;
splashDamage = 25f;
lifetime = 90f;
lifetime = 80f;
backColor = Pal.heal;
frontColor = Color.white;
@@ -1976,17 +1975,17 @@ public class UnitTypes implements ContentList{
weaveMag = 1f;
trailColor = Pal.heal;
trailParam = 5f;
trailInterval = 3f;
trailWidth = 4.5f;
trailLength = 29;
fragBullets = 7;
fragVelocityMin = 0.3f;
fragBullet = new MissileBulletType(3.9f, 12){{
fragBullet = new MissileBulletType(3.9f, 11){{
homingPower = 0.2f;
weaveMag = 4;
weaveScale = 4;
lifetime = 70f;
lifetime = 60f;
shootEffect = Fx.shootHeal;
smokeEffect = Fx.hitLaser;
splashDamage = 13f;
@@ -1998,12 +1997,14 @@ public class UnitTypes implements ContentList{
lightRadius = 40f;
lightOpacity = 0.7f;
trailInterval = 2f;
trailParam = 3f;
trailColor = Pal.heal;
trailWidth = 2.5f;
trailLength = 20;
trailChance = -1f;
healPercent = 2.8f;
collidesTeam = true;
backColor = Pal.heal;
trailColor = Pal.heal;
despawnEffect = Fx.none;
hitEffect = new ExplosionEffect(){{
@@ -2043,7 +2044,7 @@ public class UnitTypes implements ContentList{
trailY = -17f;
trailScl = 3.2f;
buildSpeed = 3.5f;
buildSpeed = 3f;
abilities.add(new EnergyFieldAbility(35f, 65f, 180f){{
repair = 35f;
@@ -2084,7 +2085,7 @@ public class UnitTypes implements ContentList{
trailY = -32f;
trailScl = 3.5f;
buildSpeed = 3.8f;
buildSpeed = 3.5f;
for(float mountY : new float[]{-117/4f, 50/4f}){
for(float sign : Mathf.signs){
@@ -2112,8 +2113,8 @@ public class UnitTypes implements ContentList{
bullet = new ContinuousLaserBulletType(){{
maxRange = 90f;
damage = 25f;
length = 90f;
damage = 26f;
length = 95f;
hitEffect = Fx.hitMeltHeal;
drawSize = 200f;
lifetime = 155f;
@@ -2160,7 +2161,7 @@ public class UnitTypes implements ContentList{
timeIncrease = 3f;
timeDuration = 60f * 20f;
powerDamageScl = 3f;
damage = 40;
damage = 50;
hitColor = lightColor = Pal.heal;
lightRadius = 70f;
clipSize = 250f;
@@ -2176,7 +2177,7 @@ public class UnitTypes implements ContentList{
trailWidth = 6f;
trailColor = Pal.heal;
trailInterval = 3f;
splashDamage = 40f;
splashDamage = 60f;
splashDamageRadius = rad;
hitShake = 4f;
trailRotation = true;