Various database entry stats (#11583)

* Add Firerate Stat to Lustre and sublimate

* 8 votes

* forgot comment

* Show shock mine damage stats

* make spawnBullets appear in core database

* spawned instead

* typo h

* fuck impact stats

* segment and point defense stuff

* Change repair & shieldregen field's shown stats

* Grant "Airborne" achievement when commanding units

* more database entries

* navanax entries (holy hell there are so many)

* boosting speed entry

* add arrow icon and stuff

* dont break tests

* junction storage per side

* Apply suggestion from @Anuken

---------

Co-authored-by: Anuken <arnukren@gmail.com>
This commit is contained in:
EggleEgg
2026-02-10 18:05:42 +01:00
committed by GitHub
parent cb1ba51238
commit 121afa0c95
22 changed files with 228 additions and 75 deletions

View File

@@ -2368,64 +2368,6 @@ public class UnitTypes{
buildSpeed = 3.5f;
rotateToBuilding = false;
for(float mountY : new float[]{-117/4f, 50/4f}){
for(float sign : Mathf.signs){
weapons.add(new Weapon("plasma-laser-mount"){{
shadow = 20f;
controllable = false;
autoTarget = true;
mirror = false;
shake = 3f;
shootY = 7f;
rotate = true;
x = 84f/4f * sign;
y = mountY;
targetInterval = 20f;
targetSwitchInterval = 35f;
rotateSpeed = 3.5f;
reload = 170f;
recoil = 1f;
shootSound = Sounds.beamPlasmaSmall;
initialShootSound = Sounds.shootBeamPlasmaSmall;
continuous = true;
cooldownTime = reload;
immunities.add(StatusEffects.burning);
bullet = new ContinuousLaserBulletType(){{
maxRange = 90f;
damage = 27f;
length = 95f;
hitEffect = Fx.hitMeltHeal;
drawSize = 200f;
lifetime = 155f;
shake = 1f;
shootEffect = Fx.shootHeal;
smokeEffect = Fx.none;
width = 4f;
largeHit = false;
incendChance = 0.03f;
incendSpread = 5f;
incendAmount = 1;
healPercent = 0.4f;
collidesTeam = true;
colors = new Color[]{Pal.heal.cpy().a(.2f), Pal.heal.cpy().a(.5f), Pal.heal.cpy().mul(1.2f), Color.white};
}};
}});
}
}
abilities.add(new SuppressionFieldAbility(){{
orbRadius = 5;
particleSize = 3;
y = -10f;
particles = 10;
color = particleColor = effectColor = Pal.heal;
}});
weapons.add(new Weapon("emp-cannon-mount"){{
rotate = true;
@@ -2508,6 +2450,66 @@ public class UnitTypes{
});
}};
}});
for(float mountY : new float[]{-117/4f, 50/4f}){
for(float sign : Mathf.signs){
weapons.add(new Weapon("plasma-laser-mount"){{
shadow = 20f;
controllable = false;
autoTarget = true;
mirror = false;
shake = 3f;
shootY = 7f;
rotate = true;
x = 84f/4f * sign;
y = mountY;
targetInterval = 20f;
targetSwitchInterval = 35f;
rotateSpeed = 3.5f;
reload = 170f;
recoil = 1f;
shootSound = Sounds.beamPlasmaSmall;
initialShootSound = Sounds.shootBeamPlasmaSmall;
continuous = true;
cooldownTime = reload;
immunities.add(StatusEffects.burning);
bullet = new ContinuousLaserBulletType(){{
maxRange = 90f;
damage = 27f;
length = 95f;
hitEffect = Fx.hitMeltHeal;
drawSize = 200f;
lifetime = 155f;
shake = 1f;
shootEffect = Fx.shootHeal;
smokeEffect = Fx.none;
width = 4f;
largeHit = false;
incendChance = 0.03f;
incendSpread = 5f;
incendAmount = 1;
healPercent = 0.4f;
collidesTeam = true;
colors = new Color[]{Pal.heal.cpy().a(.2f), Pal.heal.cpy().a(.5f), Pal.heal.cpy().mul(1.2f), Color.white};
}};
}});
}
}
abilities.add(new SuppressionFieldAbility(){{
orbRadius = 5;
particleSize = 3;
y = -10f;
particles = 10;
color = particleColor = effectColor = Pal.heal;
}});
}};
//endregion
@@ -3115,6 +3117,7 @@ public class UnitTypes{
float fin = 0.05f + (j + 1) / (float)count;
float spd = speed;
float life = lifetime / Mathf.lerp(fin, 1f, 0.5f);
boolean show = j == 0 && i > 0;
spawnBullets.add(new BasicBulletType(spd * fin, 60){{
drag = 0.002f;
width = 12f;
@@ -3124,6 +3127,7 @@ public class UnitTypes{
hitSize = 5f;
pierceCap = 2;
pierce = true;
showStats = show;
pierceBuilding = true;
hitColor = backColor = trailColor = Color.valueOf("feb380");
frontColor = Color.white;