Turret bullet tweaks & fixes

This commit is contained in:
Anuken
2025-01-15 15:43:43 -05:00
parent d355ea9d0c
commit 45dfc85d02
4 changed files with 37 additions and 3 deletions

View File

@@ -4347,7 +4347,7 @@ public class Blocks{
reloadMultiplier = 0.8f;
splashDamageRadius = 110f;
rangeChange = 8f;
splashDamage = 300f;
splashDamage = 330f;
scaledSplashDamage = true;
hitColor = backColor = trailColor = Color.valueOf("a0b380");
frontColor = Color.valueOf("e4ffd6");
@@ -4371,6 +4371,23 @@ public class Blocks{
shrinkX = 0.2f;
shrinkY = 0.1f;
buildingDamageMultiplier = 0.25f;
fragBullets = 1;
fragBullet = new EmptyBulletType(){{
lifetime = 60f * 2f;
bulletInterval = 20f;
intervalBullet = new EmptyBulletType(){{
splashDamage = 30f;
collidesGround = true;
collidesAir = false;
collides = false;
hitEffect = Fx.none;
pierce = true;
instantDisappear = true;
splashDamageRadius = 90f;
buildingDamageMultiplier = 0.2f;
}};
}};
}}
);

View File

@@ -10,7 +10,7 @@ import mindustry.entities.bullet.*;
public class Bullets{
public static BulletType
placeholder, spaceLiquid, damageLightning, damageLightningGround, fireball;
placeholder, spaceLiquid, damageLightning, damageLightningGround, damageLightningAir, fireball;
public static void load(){
@@ -37,6 +37,10 @@ public class Bullets{
damageLightningGround = damageLightning.copy();
damageLightningGround.collidesAir = false;
damageLightningAir = damageLightning.copy();
damageLightningAir.collidesGround = false;
damageLightningAir.collidesTiles = false;
fireball = new FireBulletType(1f, 4){{
hittable = false;
}};

View File

@@ -716,7 +716,10 @@ public class BulletType extends Content implements Cloneable{
}
if(lightningType == null){
lightningType = !collidesAir ? Bullets.damageLightningGround : Bullets.damageLightning;
lightningType =
!collidesAir ? Bullets.damageLightningGround :
!collidesGround ? Bullets.damageLightningAir :
Bullets.damageLightning;
}
if(lightRadius <= -1){

View File

@@ -0,0 +1,10 @@
package mindustry.entities.bullet;
public class EmptyBulletType extends BulletType{
public EmptyBulletType(){
hittable = collidesGround = collidesAir = collidesTiles = false;
speed = 0f;
keepVelocity = false;
}
}