mirror of
https://github.com/Anuken/Mindustry.git
synced 2025-03-10 04:40:10 +07:00
overdrivable meltdown (#9234)
This commit is contained in:
parent
e02bb988c6
commit
b4f01742cc
@ -3968,6 +3968,7 @@ public class Blocks{
|
||||
hitColor = Pal.meltdownHit;
|
||||
status = StatusEffects.melting;
|
||||
drawSize = 420f;
|
||||
timescaleDamage = true;
|
||||
|
||||
incendChance = 0.4f;
|
||||
incendSpread = 5f;
|
||||
|
@ -11,6 +11,8 @@ public class ContinuousBulletType extends BulletType{
|
||||
public float damageInterval = 5f;
|
||||
public boolean largeHit = false;
|
||||
public boolean continuous = true;
|
||||
/** If a building fired this, whether to multiply damage by its timescale. */
|
||||
public boolean timescaleDamage = false;
|
||||
|
||||
{
|
||||
removeAfterPierce = false;
|
||||
@ -79,7 +81,12 @@ public class ContinuousBulletType extends BulletType{
|
||||
}
|
||||
|
||||
public void applyDamage(Bullet b){
|
||||
float damage = b.damage;
|
||||
if(timescaleDamage && b.owner instanceof Building build){
|
||||
b.damage *= build.timeScale();
|
||||
}
|
||||
Damage.collideLine(b, b.team, hitEffect, b.x, b.y, b.rotation(), currentLength(b), largeHit, laserAbsorb, pierceCap);
|
||||
b.damage = damage;
|
||||
}
|
||||
|
||||
public float currentLength(Bullet b){
|
||||
|
@ -78,7 +78,7 @@ public class LaserTurret extends PowerTurret{
|
||||
entry.bullet.set(bulletX, bulletY);
|
||||
entry.bullet.time = entry.bullet.type.lifetime * entry.bullet.type.optimalLifeFract;
|
||||
entry.bullet.keepAlive = true;
|
||||
entry.life -= Time.delta / Math.max(efficiency, 0.00001f);
|
||||
entry.life -= Time.delta * timeScale / Math.max(efficiency, 0.00001f);
|
||||
}
|
||||
|
||||
wasShooting = true;
|
||||
|
Loading…
Reference in New Issue
Block a user