diff --git a/core/src/mindustry/content/Blocks.java b/core/src/mindustry/content/Blocks.java index 5278bbca9624..0865cadf56ac 100644 --- a/core/src/mindustry/content/Blocks.java +++ b/core/src/mindustry/content/Blocks.java @@ -4503,7 +4503,52 @@ Items.silicon, new BasicBulletType(){{ extraRangeMargin = 32f; hitEffect = despawnEffect = Fx.hitBulletColor; - }}); + }}, + + Items.surgeAlloy, new BasicBulletType(){{ + reloadMultiplier = 0.5f; + damage = 65; + rangeChange = 8f * 3f; + lightning = 3; + lightningLength = 4; + lightningDamage = 18f; + lightningLengthRand = 3; + speed = 7f; + width = height = 16; + shrinkY = 0.3f; + backSprite = "large-bomb-back"; + sprite = "mine-bullet"; + velocityRnd = 0.11f; + collidesGround = false; + collidesTiles = false; + shootEffect = Fx.shootBig2; + smokeEffect = Fx.shootSmokeDisperse; + frontColor = Color.white; + backColor = trailColor = hitColor = Pal.surge; + trailChance = 0.44f; + ammoMultiplier = 3f; + + lifetime = 34f; + rotationOffset = 90f; + trailRotation = true; + trailEffect = Fx.disperseTrail; + + hitEffect = despawnEffect = Fx.hitBulletColor; + + bulletInterval = 4f; + + intervalBullet = new BulletType(){{ + lightningLengthRand = 4; + lightningLength = 2; + lightningCone = 30f; + lightningDamage = 20f; + lightning = 1; + hittable = collides = false; + instantDisappear = true; + hitEffect = despawnEffect = Fx.none; + }}; + }} + ); reload = 9f; shootY = 15f; diff --git a/core/src/mindustry/entities/bullet/LightningBulletType.java b/core/src/mindustry/entities/bullet/LightningBulletType.java index add245a16e77..226d188f913c 100644 --- a/core/src/mindustry/entities/bullet/LightningBulletType.java +++ b/core/src/mindustry/entities/bullet/LightningBulletType.java @@ -1,6 +1,5 @@ package mindustry.entities.bullet; -import arc.graphics.*; import arc.math.*; import mindustry.content.*; import mindustry.entities.*; @@ -8,8 +7,6 @@ import mindustry.graphics.*; public class LightningBulletType extends BulletType{ - public Color lightningColor = Pal.lancerLaser; - public int lightningLength = 25, lightningLengthRand = 0; public LightningBulletType(){ damage = 1f; @@ -21,6 +18,9 @@ public LightningBulletType(){ hittable = false; //for stats status = StatusEffects.shocked; + lightningLength = 25; + lightningLengthRand = 0; + lightningColor = Pal.lancerLaser; } @Override @@ -33,10 +33,6 @@ public float estimateDPS(){ return super.estimateDPS() * Math.max(lightningLength / 10f, 1); } - @Override - public void draw(Bullet b){ - } - @Override public void init(Bullet b){ super.init(b);