From 4122a9d51d655134225cb26a0c193eb51adc226c Mon Sep 17 00:00:00 2001 From: SomeonesShade Date: Thu, 1 Jan 2026 03:39:22 +0800 Subject: [PATCH 1/2] Reactivity and Assorted Changes (#11245) * Implemented turretDepositCooldown (1) * Implemented activationTime for Turrets (1) * activationTime for Turrets Fixes (2) readSync() line isn't needed, Overdrive should not make the cooldown go faster, it stays as is unless there is a good argument against it. * activationTime (3): Descriptions and SetBars() Updated arc and lancer descriptions. Added setBars() stuff for clearness. * turretDepositCooldown (2): now depositCooldown and is now on a per turret basis if needed... will potentially need further iteration * turretDepositCooldown (3): made it opt in added an internal gamerule (long name, need to reduce it later) to enable the balance (oriented for pvp) depositCooldown = 0 by def added depositCooldown entries in Blocks.java * activationTime (4): Minor Adjustments to UI * activitationTime (5): Implemented drawInactive() and inactiveColo, and arc/lancer sprite Thinking if I should set the sprites to be white, then use Color.gray... * turretDepositCooldown (4): Made the cooldown only affect turrets * Reload Turret Coolant Fixes (1) Made coolant and overdrive effects not get chopped off from Math.min when its too high * activationTime (6): activationTime is now at the Base Turret Level Also implemented the code for TractorBeamTurret thanks to the code changes Parallax can have the feature if needed for future balancing. Hopefully nothing was screwed up in the transition... * Counterbalance (1): Swarmer 8 -> 7 firerate nerf, and Cyclone 7.5 -> 6 firerate nerf [First Attempt] * Reload Turret Coolant Fixes (2): added a buffer if the excessReload exceeds more than 2 reloads. * Reload Turret Coolant Fixes (3): hotfix, the buffer actually works this time * turretDepositCooldown (5): Made the cooldown seperate from itemDepositCooldown * Implemented armorMultiplier (1) * fixing a merge * (AT:7a) Reverted Saving Capability * (AT:7b) Removed activation timer from lancer and arc as well as sprites * (AT:7c) Removed visuals for activation timer will be reimplemented via a greyscale effect if returned rather than via sprites * (AT:7aa) oops * Made the default value 0 when placed - Activation Timer (8) * (depositCooldown : 6) Moved depositCooldown to Blocks.java, cleaned up canDepositItem(), removed enableTurretDepositCooldown * armorMultiplier (2) - oops, made armorMultipler = 0 correspond to 100% armorPiercing * Update core/src/mindustry/input/InputHandler.java * Reload Turret Coolant Fixes (4): A bit too high --------- Co-authored-by: Anuken --- core/assets/bundles/bundle.properties | 6 +++ core/src/mindustry/content/Blocks.java | 16 ++++++- .../mindustry/entities/bullet/BulletType.java | 4 ++ .../mindustry/entities/comp/BuildingComp.java | 2 +- .../mindustry/entities/comp/HealthComp.java | 14 ++++++ .../mindustry/entities/comp/ShieldComp.java | 12 +++++ .../mindustry/graphics/OverlayRenderer.java | 2 +- core/src/mindustry/input/InputHandler.java | 11 ++++- core/src/mindustry/world/Block.java | 2 + .../blocks/defense/turrets/BaseTurret.java | 31 +++++++++++++ .../blocks/defense/turrets/ReloadTurret.java | 6 ++- .../defense/turrets/TractorBeamTurret.java | 5 +++ .../world/blocks/defense/turrets/Turret.java | 45 +++++++++++++++---- .../src/mindustry/world/meta/BlockStatus.java | 3 +- core/src/mindustry/world/meta/Stat.java | 1 + core/src/mindustry/world/meta/StatValues.java | 10 +++++ 16 files changed, 155 insertions(+), 15 deletions(-) diff --git a/core/assets/bundles/bundle.properties b/core/assets/bundles/bundle.properties index 8e4e733140..6cc516ca9a 100644 --- a/core/assets/bundles/bundle.properties +++ b/core/assets/bundles/bundle.properties @@ -1073,6 +1073,7 @@ stat.ammo = Ammo stat.shieldhealth = Shield Health stat.cooldowntime = Cooldown Time stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Explosiveness stat.basedeflectchance = Base Deflect Chance stat.lightningchance = Lightning Chance @@ -1183,6 +1184,8 @@ bar.input = Input bar.output = Output bar.strength = [stat]{0}[lightgray]x strength bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Processor Controlled @@ -1191,6 +1194,9 @@ bullet.splashdamage = [stat]{0}[lightgray] area dmg ~ [stat]{1}[lightgray] tiles bullet.incendiary = [stat]incendiary bullet.homing = [stat]homing bullet.armorpierce = [stat]armor piercing +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0}[lightgray] seconds of repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/src/mindustry/content/Blocks.java b/core/src/mindustry/content/Blocks.java index 6fe2b66161..c23011525f 100644 --- a/core/src/mindustry/content/Blocks.java +++ b/core/src/mindustry/content/Blocks.java @@ -3322,6 +3322,7 @@ public class Blocks{ coolant = consumeCoolant(0.1f); coolantMultiplier = 10f; researchCostMultiplier = 0.05f; + depositCooldown = 2.0f; limitRange(5f); }}; @@ -3407,6 +3408,7 @@ public class Blocks{ shootSound = Sounds.shootScatter; coolant = consumeCoolant(0.2f); researchCostMultiplier = 0.05f; + depositCooldown = 0.5f; limitRange(2); }}; @@ -3453,6 +3455,7 @@ public class Blocks{ health = 400; shootSound = Sounds.shootFlame; coolant = consumeCoolant(0.1f); + depositCooldown = 1.0f; }}; hail = new ItemTurret("hail"){{ @@ -3517,6 +3520,7 @@ public class Blocks{ shootSound = Sounds.shootArtillerySmall; coolant = consumeCoolant(0.1f); coolantMultiplier = 10f; + depositCooldown = 2.0f; limitRange(0f); }}; @@ -3581,6 +3585,7 @@ public class Blocks{ chargeEffect = new MultiEffect(Fx.lancerLaserCharge, Fx.lancerLaserChargeBegin); buildingDamageMultiplier = 0.25f; + armorMultiplier = 4f; hitEffect = Fx.hitLancer; hitSize = 4; lifetime = 16f; @@ -3706,7 +3711,7 @@ public class Blocks{ }}; shootY = 4.5f; - reload = 30f; + reload = 60f * 4f / 7f; inaccuracy = 10f; range = 240f; consumeAmmoOnce = false; @@ -3717,6 +3722,7 @@ public class Blocks{ limitRange(5f); coolant = consumeCoolant(0.3f); + depositCooldown = 2.0f; }}; salvo = new ItemTurret("salvo"){{ @@ -3818,6 +3824,7 @@ public class Blocks{ limitRange(); coolant = consumeCoolant(0.2f); + depositCooldown = 2.0f; }}; segment = new PointDefenseTurret("segment"){{ @@ -3935,6 +3942,7 @@ public class Blocks{ shootEffect = smokeEffect = Fx.thoriumShoot; }} ); + depositCooldown = 1.0f; }}; ripple = new ItemTurret("ripple"){{ @@ -4063,6 +4071,7 @@ public class Blocks{ coolant = consumeCoolant(0.3f); scaledHealth = 130; + depositCooldown = 2.0f; shootSound = Sounds.shootRipple; }}; @@ -4168,7 +4177,7 @@ public class Blocks{ } }}; - reload = 8f; + reload = 10f; range = 200f; size = 3; recoil = 1.5f; @@ -4180,6 +4189,7 @@ public class Blocks{ coolant = consumeCoolant(0.3f); scaledHealth = 145; + depositCooldown = 2.0f; limitRange(); }}; @@ -4224,6 +4234,7 @@ public class Blocks{ scaledHealth = 150; coolant = consumeCoolant(1f); + depositCooldown = 2.0f; consumePower(10f); }}; @@ -4290,6 +4301,7 @@ public class Blocks{ scaledHealth = 160; coolant = consumeCoolant(1f); + depositCooldown = 2.0f; limitRange(); }}; diff --git a/core/src/mindustry/entities/bullet/BulletType.java b/core/src/mindustry/entities/bullet/BulletType.java index a74c13edce..9e2b10e846 100644 --- a/core/src/mindustry/entities/bullet/BulletType.java +++ b/core/src/mindustry/entities/bullet/BulletType.java @@ -181,6 +181,8 @@ public class BulletType extends Content implements Cloneable{ public boolean fragOnAbsorb = true; /** If true, unit armor is ignored in damage calculations. */ public boolean pierceArmor = false; + /** Multiplies the unit armor used in damage calculations. Used for armor weakness, armor piercing, and anti-armor. */ + public float armorMultiplier = 1f; /** If true, the bullet will "stick" to enemies and get deactivated on collision. */ public boolean sticky = false; /** Extra time added to bullet when it sticks to something. */ @@ -483,6 +485,8 @@ public class BulletType extends Content implements Cloneable{ } if(pierceArmor){ h.damagePierce(damage); + }else if(armorMultiplier != 1){ + h.damageArmorMult(damage, armorMultiplier); }else{ h.damage(damage); } diff --git a/core/src/mindustry/entities/comp/BuildingComp.java b/core/src/mindustry/entities/comp/BuildingComp.java index baacb406ab..617a74fc96 100644 --- a/core/src/mindustry/entities/comp/BuildingComp.java +++ b/core/src/mindustry/entities/comp/BuildingComp.java @@ -1727,7 +1727,7 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc, float damage = other.type.buildingDamage(other); if(!other.type.pierceArmor){ - damage = Damage.applyArmor(damage, block.armor); + damage = Damage.applyArmor(damage, block.armor * other.type.armorMultiplier); } damage(other, other.team, damage); diff --git a/core/src/mindustry/entities/comp/HealthComp.java b/core/src/mindustry/entities/comp/HealthComp.java index f315b3fb75..cfc3cb92c4 100644 --- a/core/src/mindustry/entities/comp/HealthComp.java +++ b/core/src/mindustry/entities/comp/HealthComp.java @@ -58,6 +58,16 @@ abstract class HealthComp implements Entityc, Posc{ damagePierce(amount, true); } + /** Damage and multiply armor received. */ + void damageArmorMult(float amount, float armorMult, boolean withEffect){ + damage(amount, withEffect); + } + + /** Damage and multiply armor received. */ + void damageArmorMult(float amount, float armorMult){ + damageArmorMult(amount, armorMult, true); + } + void damage(float amount){ if(Float.isNaN(health)) health = 0f; @@ -86,6 +96,10 @@ abstract class HealthComp implements Entityc, Posc{ damagePierce(amount * Time.delta, hitTime <= -20 + hitDuration); } + void damageContinuousArmorMult(float amount, float armorMult){ + damageArmorMult(amount * Time.delta, armorMult, hitTime <= -20 + hitDuration); + } + void clampHealth(){ health = Math.min(health, maxHealth); if(Float.isNaN(health)) health = 0f; diff --git a/core/src/mindustry/entities/comp/ShieldComp.java b/core/src/mindustry/entities/comp/ShieldComp.java index f2f6e4c808..f67ece6f99 100644 --- a/core/src/mindustry/entities/comp/ShieldComp.java +++ b/core/src/mindustry/entities/comp/ShieldComp.java @@ -42,6 +42,18 @@ abstract class ShieldComp implements Healthc, Posc{ } } + @Replace + @Override + public void damageArmorMult(float amount, float armorMult, boolean withEffect){ + float pre = hitTime; + + rawDamage(Damage.applyArmor(amount, armorOverride >= 0f ? armorOverride * armorMult : armor * armorMult) / healthMultiplier / Vars.state.rules.unitHealth(team)); + + if(!withEffect){ + hitTime = pre; + } + } + protected void rawDamage(float amount){ boolean hadShields = shield > 0.0001f; diff --git a/core/src/mindustry/graphics/OverlayRenderer.java b/core/src/mindustry/graphics/OverlayRenderer.java index e9c3450503..78533c7fe7 100644 --- a/core/src/mindustry/graphics/OverlayRenderer.java +++ b/core/src/mindustry/graphics/OverlayRenderer.java @@ -248,7 +248,7 @@ public class OverlayRenderer{ Building build = world.buildWorld(v.x, v.y); if(input.canDropItem() && build != null && build.interactable(player.team()) && build.acceptStack(player.unit().item(), player.unit().stack.amount, player.unit()) > 0 && player.within(build, itemTransferRange) && - input.itemDepositCooldown <= 0f){ + input.canDepositItem(build)){ boolean invalid = !build.allowDeposit(); diff --git a/core/src/mindustry/input/InputHandler.java b/core/src/mindustry/input/InputHandler.java index c4263b7323..53245fb1f6 100644 --- a/core/src/mindustry/input/InputHandler.java +++ b/core/src/mindustry/input/InputHandler.java @@ -37,6 +37,7 @@ import mindustry.ui.fragments.*; import mindustry.world.*; import mindustry.world.blocks.ConstructBlock.*; import mindustry.world.blocks.*; +import mindustry.world.blocks.defense.turrets.*; import mindustry.world.blocks.distribution.*; import mindustry.world.blocks.payloads.*; import mindustry.world.blocks.storage.*; @@ -2154,7 +2155,7 @@ public abstract class InputHandler implements InputProcessor, GestureListener{ if(build != null && build.acceptStack(stack.item, stack.amount, player.unit()) > 0 && build.interactable(player.team()) && build.block.hasItems && player.unit().stack().amount > 0 && build.interactable(player.team())){ - if(build.allowDeposit() && itemDepositCooldown <= 0f){ + if(build.allowDeposit() && canDepositItem(build)){ Call.transferInventory(player, build); itemDepositCooldown = state.rules.itemDepositCooldown; } @@ -2163,6 +2164,14 @@ public abstract class InputHandler implements InputProcessor, GestureListener{ } } + public boolean canDepositItem(Building build){ + //takes advantage of itemDepositCooldown being able to be negative, allows the cooldown to be different for each building + if(build.block.depositCooldown >= 0){ + return itemDepositCooldown - state.rules.itemDepositCooldown <= -build.block.depositCooldown; + } + return itemDepositCooldown <= 0; + } + public void rebuildArea(int x1, int y1, int x2, int y2){ NormalizeResult result = Placement.normalizeArea(x1, y1, x2, y2, rotation, false, 999999999); Tmp.r1.set(result.x * tilesize, result.y * tilesize, (result.x2 - result.x) * tilesize, (result.y2 - result.y) * tilesize); diff --git a/core/src/mindustry/world/Block.java b/core/src/mindustry/world/Block.java index e0658b5640..6cbed7004d 100644 --- a/core/src/mindustry/world/Block.java +++ b/core/src/mindustry/world/Block.java @@ -66,6 +66,8 @@ public class Block extends UnlockableContent implements Senseable{ public boolean acceptsItems = false; /** If true, this block won't be affected by the onlyDepositCore rule. */ public boolean alwaysAllowDeposit = false; + /** Cooldown, in seconds, applied to player item depositing when any item is deposited to this block. Overrides the itemDepositCooldown if non-negative. */ + public float depositCooldown = -1f; /** If true, all item capacities of this block are separate instead of pooled as one number. */ public boolean separateItemCapacity = false; /** maximum items this block can carry (usually, this is per-type of item) */ diff --git a/core/src/mindustry/world/blocks/defense/turrets/BaseTurret.java b/core/src/mindustry/world/blocks/defense/turrets/BaseTurret.java index b6c7510349..20ec8d43d9 100644 --- a/core/src/mindustry/world/blocks/defense/turrets/BaseTurret.java +++ b/core/src/mindustry/world/blocks/defense/turrets/BaseTurret.java @@ -1,5 +1,7 @@ package mindustry.world.blocks.defense.turrets; +import arc.*; +import arc.graphics.*; import arc.math.*; import arc.struct.*; import arc.util.*; @@ -8,6 +10,7 @@ import mindustry.entities.*; import mindustry.gen.*; import mindustry.graphics.*; import mindustry.logic.*; +import mindustry.ui.*; import mindustry.world.*; import mindustry.world.blocks.*; import mindustry.world.consumers.*; @@ -21,6 +24,8 @@ public class BaseTurret extends Block{ public float rotateSpeed = 5; public float fogRadiusMultiplier = 1f; public boolean disableOverlapCheck = false; + /** How much time to start shooting after placement. */ + public float activationTime = 0f; /** Effect displayed when coolant is used. */ public Effect coolEffect = Fx.fuelburn; @@ -90,10 +95,31 @@ public class BaseTurret extends Block{ super.setStats(); stats.add(Stat.shootRange, range / tilesize, StatUnit.blocks); + if(activationTime > 0) stats.add(Stat.activationTime, activationTime / 60f, StatUnit.seconds); + } + + @Override + public void setBars(){ + super.setBars(); + + if(activationTime > 0){ + addBar("activationtimer", (BaseTurretBuild entity) -> + new Bar(() -> + (entity.activationTimer > 0)? Core.bundle.format("bar.activationtimer", Mathf.ceil(entity.activationTimer / 60f)) : Core.bundle.get("bar.activated"), + () -> (entity.activationTimer > 0)? Pal.lightOrange : Pal.techBlue, + () -> 1 - entity.activationTimer / activationTime)); + } } public class BaseTurretBuild extends Building implements Ranged, RotBlock{ public float rotation = 90; + public float activationTimer = 0; + + @Override + public void placed(){ + super.placed(); + activationTimer = activationTime; + } @Override public float range(){ @@ -113,5 +139,10 @@ public class BaseTurret extends Block{ public float estimateDps(){ return 0f; } + + @Override + public BlockStatus status() { + return (activationTimer <= 0)? super.status() : BlockStatus.inactive; + } } } diff --git a/core/src/mindustry/world/blocks/defense/turrets/ReloadTurret.java b/core/src/mindustry/world/blocks/defense/turrets/ReloadTurret.java index 8748b91ed8..6b5721987b 100644 --- a/core/src/mindustry/world/blocks/defense/turrets/ReloadTurret.java +++ b/core/src/mindustry/world/blocks/defense/turrets/ReloadTurret.java @@ -26,7 +26,7 @@ public class ReloadTurret extends BaseTurret{ public float reloadCounter; protected void updateCooling(){ - if(reloadCounter < reload && coolant != null && coolant.efficiency(this) > 0 && efficiency > 0){ + if(canReload() && coolant != null && coolant.efficiency(this) > 0 && efficiency > 0){ float capacity = coolant instanceof ConsumeLiquidFilter filter ? filter.getConsumed(this).heatCapacity : (coolant.consumes(liquids.current()) ? liquids.current().heatCapacity : 0.4f); float amount = coolant.amount * coolant.efficiency(this); coolant.update(this); @@ -45,5 +45,9 @@ public class ReloadTurret extends BaseTurret{ protected float baseReloadSpeed(){ return efficiency; } + + protected boolean canReload(){ + return reloadCounter < reload; + } } } diff --git a/core/src/mindustry/world/blocks/defense/turrets/TractorBeamTurret.java b/core/src/mindustry/world/blocks/defense/turrets/TractorBeamTurret.java index aa447d6ae7..35a746dbc5 100644 --- a/core/src/mindustry/world/blocks/defense/turrets/TractorBeamTurret.java +++ b/core/src/mindustry/world/blocks/defense/turrets/TractorBeamTurret.java @@ -76,6 +76,11 @@ public class TractorBeamTurret extends BaseTurret{ @Override public void updateTile(){ + if(activationTimer > 0){ + activationTimer -= Time.delta; + return; + } + float eff = efficiency * coolantMultiplier, edelta = eff * delta(); //retarget diff --git a/core/src/mindustry/world/blocks/defense/turrets/Turret.java b/core/src/mindustry/world/blocks/defense/turrets/Turret.java index 9f8e5edd4a..cb4a38ee8d 100644 --- a/core/src/mindustry/world/blocks/defense/turrets/Turret.java +++ b/core/src/mindustry/world/blocks/defense/turrets/Turret.java @@ -278,6 +278,8 @@ public class Turret extends ReloadTurret{ public @Nullable float[] curRecoils; public float shootWarmup, charge, warmupHold = 0f; public int totalShots, barrelCounter; + public float excessReload = 0; + public int reloadShots = 0; public boolean logicShooting = false; public @Nullable Posc target; public Vec2 targetPos = new Vec2(); @@ -419,7 +421,7 @@ public class Turret extends ReloadTurret{ } public boolean isActive(){ - return (target != null || wasShooting) && enabled; + return (target != null || wasShooting) && enabled && activationTimer <= 0; } public void targetPosition(Posc pos){ @@ -481,8 +483,6 @@ public class Turret extends ReloadTurret{ shootWarmup = Mathf.lerpDelta(shootWarmup, warmupTarget, shootWarmupSpeed * (warmupTarget > 0 ? efficiency : 1f)); } - wasShooting = false; - curRecoil = Mathf.approachDelta(curRecoil, 0, 1 / recoilTime); if(recoils > 0){ if(curRecoils == null) curRecoils = new float[recoils]; @@ -515,8 +515,11 @@ public class Turret extends ReloadTurret{ if(reloadWhileCharging || !charging()){ updateReload(); updateCooling(); + capReload(); } + wasShooting = false; + if(state.rules.fog){ float newRange = hasAmmo() ? peekAmmo().rangeChange : 0f; if(newRange != lastRangeChange){ @@ -525,6 +528,11 @@ public class Turret extends ReloadTurret{ } } + if(activationTimer > 0){ + activationTimer -= Time.delta; + return; + } + if(hasAmmo()){ if(Float.isNaN(reloadCounter)) reloadCounter = 0; @@ -673,11 +681,30 @@ public class Turret extends ReloadTurret{ return queuedBullets > 0 && shoot.firstShotDelay > 0; } - protected void updateReload(){ - reloadCounter += delta() * ammoReloadMultiplier() * baseReloadSpeed(); + @Override + protected boolean canReload(){ + //keep reloading as the turret keeps shooting + return reloadShots < 1 || wasShooting; + } - //cap reload for visual reasons + protected void updateReload(){ + if(!canReload()) return; + reloadCounter += delta() * ammoReloadMultiplier() * baseReloadSpeed(); + } + + protected void capReload(){ + //cap reload for visual reasons, need to store the excess reload to keep the firerate consistent + if(canReload() && reloadCounter >= reload){ + reloadShots += (int)(reloadCounter / reload); + excessReload += reloadCounter % reload; + } reloadCounter = Math.min(reloadCounter, reload); + reloadShots = Math.min(reloadShots, 5); + + if(!wasShooting){ + reloadShots = 0; + excessReload = 0; + } } @Override @@ -687,12 +714,14 @@ public class Turret extends ReloadTurret{ protected void updateShooting(){ - if(reloadCounter >= reload && !charging() && shootWarmup >= minWarmup){ + if(reloadShots > 0 && !charging() && shootWarmup >= minWarmup){ BulletType type = peekAmmo(); shoot(type); - reloadCounter %= reload; + reloadCounter = excessReload; + excessReload = 0; + reloadShots--; } } diff --git a/core/src/mindustry/world/meta/BlockStatus.java b/core/src/mindustry/world/meta/BlockStatus.java index d21887244e..f22b3d5054 100644 --- a/core/src/mindustry/world/meta/BlockStatus.java +++ b/core/src/mindustry/world/meta/BlockStatus.java @@ -7,7 +7,8 @@ public enum BlockStatus{ active(Color.valueOf("5ce677")), noOutput(Color.orange), noInput(Pal.remove), - logicDisable(Color.valueOf("8a73c6")); + logicDisable(Color.valueOf("8a73c6")), + inactive(Color.lightGray); public final Color color; diff --git a/core/src/mindustry/world/meta/Stat.java b/core/src/mindustry/world/meta/Stat.java index 37974939ef..6dcef85afe 100644 --- a/core/src/mindustry/world/meta/Stat.java +++ b/core/src/mindustry/world/meta/Stat.java @@ -95,6 +95,7 @@ public class Stat implements Comparable{ shieldHealth = new Stat("shieldHealth", StatCat.function), cooldownTime = new Stat("cooldownTime", StatCat.function), regenerationRate = new Stat("regenerationRate", StatCat.function), + activationTime = new Stat("activationTime", StatCat.function), moduleTier = new Stat("moduletier", StatCat.function), unitType = new Stat("unittype", StatCat.function), diff --git a/core/src/mindustry/world/meta/StatValues.java b/core/src/mindustry/world/meta/StatValues.java index b2694d1c8f..8556ef3adc 100644 --- a/core/src/mindustry/world/meta/StatValues.java +++ b/core/src/mindustry/world/meta/StatValues.java @@ -704,6 +704,16 @@ public class StatValues{ sep(bt, "@bullet.armorpierce"); } + if(type.armorMultiplier != 1f){ + if(type.armorMultiplier > 1f){ + sep(bt, Core.bundle.format("bullet.armorweakness", (int)(type.armorMultiplier * 100))); + }else if(Mathf.sign(type.armorMultiplier) == 1){ + sep(bt, Core.bundle.format("bullet.armorpiercing", (int)((1 - type.armorMultiplier) * 100))); + }else{ + sep(bt, Core.bundle.format("bullet.antiarmor", (-type.armorMultiplier))); + } + } + if(type.maxDamageFraction > 0){ sep(bt, Core.bundle.format("bullet.maxdamagefraction", (int)(type.maxDamageFraction * 100))); } From 4e00176c984568ac09f352c4f4671766bbf1de1b Mon Sep 17 00:00:00 2001 From: Github Actions Date: Wed, 31 Dec 2025 19:40:40 +0000 Subject: [PATCH 2/2] Automatic bundle update --- core/assets/bundles/bundle_be.properties | 6 ++++++ core/assets/bundles/bundle_bg.properties | 6 ++++++ core/assets/bundles/bundle_ca.properties | 6 ++++++ core/assets/bundles/bundle_cs.properties | 6 ++++++ core/assets/bundles/bundle_da.properties | 6 ++++++ core/assets/bundles/bundle_de.properties | 6 ++++++ core/assets/bundles/bundle_es.properties | 6 ++++++ core/assets/bundles/bundle_et.properties | 6 ++++++ core/assets/bundles/bundle_eu.properties | 6 ++++++ core/assets/bundles/bundle_fi.properties | 6 ++++++ core/assets/bundles/bundle_fil.properties | 6 ++++++ core/assets/bundles/bundle_fr.properties | 6 ++++++ core/assets/bundles/bundle_hu.properties | 6 ++++++ core/assets/bundles/bundle_id_ID.properties | 6 ++++++ core/assets/bundles/bundle_it.properties | 6 ++++++ core/assets/bundles/bundle_ja.properties | 6 ++++++ core/assets/bundles/bundle_ko.properties | 6 ++++++ core/assets/bundles/bundle_lt.properties | 6 ++++++ core/assets/bundles/bundle_nl.properties | 6 ++++++ core/assets/bundles/bundle_nl_BE.properties | 6 ++++++ core/assets/bundles/bundle_pl.properties | 6 ++++++ core/assets/bundles/bundle_pt_BR.properties | 6 ++++++ core/assets/bundles/bundle_pt_PT.properties | 6 ++++++ core/assets/bundles/bundle_ro.properties | 6 ++++++ core/assets/bundles/bundle_ru.properties | 6 ++++++ core/assets/bundles/bundle_sr.properties | 6 ++++++ core/assets/bundles/bundle_sv.properties | 6 ++++++ core/assets/bundles/bundle_th.properties | 6 ++++++ core/assets/bundles/bundle_tk.properties | 6 ++++++ core/assets/bundles/bundle_tr.properties | 6 ++++++ core/assets/bundles/bundle_uk_UA.properties | 6 ++++++ core/assets/bundles/bundle_vi.properties | 6 ++++++ core/assets/bundles/bundle_zh_CN.properties | 6 ++++++ core/assets/bundles/bundle_zh_TW.properties | 6 ++++++ 34 files changed, 204 insertions(+) diff --git a/core/assets/bundles/bundle_be.properties b/core/assets/bundles/bundle_be.properties index ec6a396e74..6f608c3dfe 100644 --- a/core/assets/bundles/bundle_be.properties +++ b/core/assets/bundles/bundle_be.properties @@ -1070,6 +1070,7 @@ stat.ammo = Боепрыпасы stat.shieldhealth = Трываласць Шчыта stat.cooldowntime = Час Перазарадкі stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Узрыўчатасць stat.basedeflectchance = Шанец Збоя Базы stat.lightningchance = Шанец Маланкі @@ -1180,6 +1181,8 @@ bar.input = Уваход bar.output = Выхад bar.strength = [stat]{0}[lightgray]x strength bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Кантралюецца Працэссарам @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat] {0} [lightgray]страты ў радыусе ~ [st bullet.incendiary = [stat] запальны bullet.homing = [stat] саманаводных bullet.armorpierce = [stat]armor piercing +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_bg.properties b/core/assets/bundles/bundle_bg.properties index 3bae20c720..0ddcf9b8c0 100644 --- a/core/assets/bundles/bundle_bg.properties +++ b/core/assets/bundles/bundle_bg.properties @@ -1070,6 +1070,7 @@ stat.ammo = Боеприпаси stat.shieldhealth = Здравина на щита stat.cooldowntime = Време за охлаждане stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Експлозивност stat.basedeflectchance = Базов шанс за отклоняване на изстрел stat.lightningchance = Вероятност за светкавица @@ -1180,6 +1181,8 @@ bar.input = Вход bar.output = Изход bar.strength = [stat]{0}[lightgray]x сила bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Контролиран от процесор @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] щети на площ ~[stat] {1}[li bullet.incendiary = [stat]Подпалване bullet.homing = [stat]Самонасочване bullet.armorpierce = [stat]Пробождане на броня +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] ограничена щета bullet.suppression = [stat]{0} сек[lightgray] възпиране на поправки ~ [stat]{1}[lightgray] плочки bullet.interval = [stat]{0}/сек[lightgray] куршуми в интервал: diff --git a/core/assets/bundles/bundle_ca.properties b/core/assets/bundles/bundle_ca.properties index 131c0d0534..067d92c96b 100644 --- a/core/assets/bundles/bundle_ca.properties +++ b/core/assets/bundles/bundle_ca.properties @@ -1070,6 +1070,7 @@ stat.ammo = Munició stat.shieldhealth = Salut de l’escut stat.cooldowntime = Temps de refredament stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Explosivitat stat.basedeflectchance = Probabilitat base d’evasió stat.lightningchance = Probabilitat de llampegar @@ -1180,6 +1181,8 @@ bar.input = Entrada bar.output = Sortida bar.strength = [stat]{0}[lightgray]× força bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Controlat pel processador @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] de dany a l’àrea ~[stat] {1}[light bullet.incendiary = [stat]incendiari bullet.homing = [stat]munició guiada bullet.armorpierce = [stat]perforador d’armadures +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] de dany límit bullet.suppression = [stat]Supressió de reparacions cada {0} s[lightgray] ~ [stat]{1}[lightgray] caselles bullet.interval = [stat]Interval de bales de {0}/s[lightgray]: diff --git a/core/assets/bundles/bundle_cs.properties b/core/assets/bundles/bundle_cs.properties index 70d99de917..d85f0b4cf3 100644 --- a/core/assets/bundles/bundle_cs.properties +++ b/core/assets/bundles/bundle_cs.properties @@ -1070,6 +1070,7 @@ stat.ammo = Střelivo stat.shieldhealth = Zdraví štítu stat.cooldowntime = Čas na zchladnutí stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Výbušnost stat.basedeflectchance = Základní pravděpodobnost odražení stat.lightningchance = Pravděpodobnost blesku @@ -1180,6 +1181,8 @@ bar.input = Vstup bar.output = Výstup bar.strength = [stat]{0}[lightgray]x síla bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Procesor je ovládán[] @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] plošného poškození ~[stat] {1}[li bullet.incendiary = [stat]zápalný bullet.homing = [stat]samonaváděcí bullet.armorpierce = [stat]proražení brnění +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] limit poškození bullet.suppression = [stat]{0} sek[lightgray] potlačení opravy ~ [stat]{1}[lightgray] kostek bullet.interval = [stat]{0}/sek[lightgray] interval kulek: diff --git a/core/assets/bundles/bundle_da.properties b/core/assets/bundles/bundle_da.properties index fc180952c7..bda3260bf8 100644 --- a/core/assets/bundles/bundle_da.properties +++ b/core/assets/bundles/bundle_da.properties @@ -1070,6 +1070,7 @@ stat.ammo = Ammunition stat.shieldhealth = Skjold-helbred stat.cooldowntime = Nedkølingstid stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Eksplosivitet stat.basedeflectchance = Grundlæggende reflektions-chance stat.lightningchance = Lyn-chance @@ -1180,6 +1181,8 @@ bar.input = Input bar.output = Output bar.strength = [stat]{0}[lightgray]x strength bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Processor kontrolleret @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] områdeskade ~[stat] {1}[lightgray] f bullet.incendiary = [stat]brændfarlig bullet.homing = [stat]målsøgende bullet.armorpierce = [stat]armor piercing +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_de.properties b/core/assets/bundles/bundle_de.properties index 1e95d137fe..0415776250 100644 --- a/core/assets/bundles/bundle_de.properties +++ b/core/assets/bundles/bundle_de.properties @@ -1070,6 +1070,7 @@ stat.ammo = Munition stat.shieldhealth = Schildlebenspunkte stat.cooldowntime = Cooldown-Zeit stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Sprengkraft stat.basedeflectchance = Grundreflektionschance stat.lightningchance = Blitzwahrscheinlichkeit @@ -1180,6 +1181,8 @@ bar.input = Input bar.output = Output bar.strength = [stat]{0}[lightgray]x Stärke bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Prozessorgesteuert @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] Flächenschaden ~[stat] {1}[lightgray bullet.incendiary = [stat]entzündend bullet.homing = [stat]zielsuchend bullet.armorpierce = [stat]panzerbrechend +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] Heilungsunterdrückung ~ [stat]{1}[lightgray] Kacheln bullet.interval = [stat]{0}/sec[lightgray] Intervallgeschosse: diff --git a/core/assets/bundles/bundle_es.properties b/core/assets/bundles/bundle_es.properties index 147b297d22..d78d1f7f0e 100644 --- a/core/assets/bundles/bundle_es.properties +++ b/core/assets/bundles/bundle_es.properties @@ -1070,6 +1070,7 @@ stat.ammo = Munición stat.shieldhealth = Escudo stat.cooldowntime = Enfriamiento stat.regenerationrate = Tasa de regeneración +stat.activationtime = Activation Time stat.explosiveness = Explosividad stat.basedeflectchance = Probabilidad base de desvío stat.lightningchance = Probabilidad de descarga @@ -1180,6 +1181,8 @@ bar.input = Entrada bar.output = Salida bar.strength = [stat]{0}[lightgray]x potencia bar.regenerationrate = [stat]{0}/seg[lightgray] regeneración +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Controlado desde el procesador @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] daño en área ~[stat] {1}[lightgray] bullet.incendiary = [stat]incendiaria bullet.homing = [stat]rastreadora bullet.armorpierce = [stat]perforación de armadura +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] daño límite bullet.suppression = [stat]{0} seg[lightgray] supresión de reparación ~ [stat]{1}[lightgray] casillas bullet.interval = [stat]{0}/seg[lightgray] balas por intervalo: diff --git a/core/assets/bundles/bundle_et.properties b/core/assets/bundles/bundle_et.properties index 5a788c4776..50fbc89397 100644 --- a/core/assets/bundles/bundle_et.properties +++ b/core/assets/bundles/bundle_et.properties @@ -1070,6 +1070,7 @@ stat.ammo = Laskemoon stat.shieldhealth = Shield Health stat.cooldowntime = Cooldown Time stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Explosiveness stat.basedeflectchance = Base Deflect Chance stat.lightningchance = Lightning Chance @@ -1180,6 +1181,8 @@ bar.input = Input bar.output = Output bar.strength = [stat]{0}[lightgray]x strength bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Processor Controlled @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] hävituspunkti ~[stat] {1}[lightgray] bullet.incendiary = [stat]süttiv bullet.homing = [stat]isesihtiv bullet.armorpierce = [stat]armor piercing +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_eu.properties b/core/assets/bundles/bundle_eu.properties index 95b5b89f84..836025c45e 100644 --- a/core/assets/bundles/bundle_eu.properties +++ b/core/assets/bundles/bundle_eu.properties @@ -1070,6 +1070,7 @@ stat.ammo = Munizioa stat.shieldhealth = Shield Health stat.cooldowntime = Cooldown Time stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Explosiveness stat.basedeflectchance = Base Deflect Chance stat.lightningchance = Lightning Chance @@ -1180,6 +1181,8 @@ bar.input = Input bar.output = Output bar.strength = [stat]{0}[lightgray]x strength bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Processor Controlled @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] ingurune-kaltea ~[stat] {1}[lightgray bullet.incendiary = [stat]su-eragilea bullet.homing = [stat]gidatua bullet.armorpierce = [stat]armor piercing +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_fi.properties b/core/assets/bundles/bundle_fi.properties index 67a9baec59..a0a121e903 100644 --- a/core/assets/bundles/bundle_fi.properties +++ b/core/assets/bundles/bundle_fi.properties @@ -1070,6 +1070,7 @@ stat.ammo = Ammus stat.shieldhealth = Kilven elämäpisteet stat.cooldowntime = Jäähtymisaika stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Räjähdysherkkyys stat.basedeflectchance = Perustorjuntatodennäköisyys stat.lightningchance = Salamointitodennäköisyys @@ -1180,6 +1181,8 @@ bar.input = Sisääntulo bar.output = Ulostulo bar.strength = [stat]{0}[lightgray]x voimakkuus bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Prosessorin hallitsema @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] Aluevahinko ~[stat] {1}[lightgray] pa bullet.incendiary = [stat]sytyttävä bullet.homing = [stat]itseohjautuva bullet.armorpierce = [stat]haarniskan läpäisevä +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_fil.properties b/core/assets/bundles/bundle_fil.properties index b2f7c30fd5..1ce828969a 100644 --- a/core/assets/bundles/bundle_fil.properties +++ b/core/assets/bundles/bundle_fil.properties @@ -1070,6 +1070,7 @@ stat.ammo = Mga Bala stat.shieldhealth = Health ng Kalasag stat.cooldowntime = Oras ng Cooldown stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Pagkasabog stat.basedeflectchance = Base Deflect Chance stat.lightningchance = Pagkakataon ng Lightning @@ -1180,6 +1181,8 @@ bar.input = Input bar.output = Output bar.strength = [stat]{0}[lightgray]x strength bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Processor Controlled @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] area dmg ~[stat] {1}[lightgray] tiles bullet.incendiary = [stat]incendiary bullet.homing = [stat]homing bullet.armorpierce = [stat]armor piercing +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_fr.properties b/core/assets/bundles/bundle_fr.properties index 04644942f7..6ff6eb10c9 100644 --- a/core/assets/bundles/bundle_fr.properties +++ b/core/assets/bundles/bundle_fr.properties @@ -1070,6 +1070,7 @@ stat.ammo = Munitions stat.shieldhealth = Santé du bouclier stat.cooldowntime = Temps de refroidissement stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Explosivité stat.basedeflectchance = Chance de Détournement de Base stat.lightningchance = Chance d'Éclairs @@ -1180,6 +1181,8 @@ bar.input = Entrée bar.output = Sortie bar.strength = [stat]{0}[lightgray]x puissance bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Contrôlé par un processeur. @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] dégâts de zone ~[stat] {1}[lightgra bullet.incendiary = [stat]incendiaire bullet.homing = [stat]autoguidé bullet.armorpierce = [stat]perceur d'armure +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] limite de dégâts bullet.suppression = [stat]{0} sec[lightgray] suppression de soins ~ [stat]{1}[lightgray] blocs bullet.interval = [stat]{0}/sec[lightgray] Balle secondaire: diff --git a/core/assets/bundles/bundle_hu.properties b/core/assets/bundles/bundle_hu.properties index a00517b7b8..69a1afa16f 100644 --- a/core/assets/bundles/bundle_hu.properties +++ b/core/assets/bundles/bundle_hu.properties @@ -1070,6 +1070,7 @@ stat.ammo = Lőszer stat.shieldhealth = Erőpajzs életpontja stat.cooldowntime = Újratöltés időtartama stat.regenerationrate = Regenerálási sebesség +stat.activationtime = Activation Time stat.explosiveness = Robbanékonyság stat.basedeflectchance = Alap hárítási esély stat.lightningchance = Villámlás esélye @@ -1180,6 +1181,8 @@ bar.input = Bemenet bar.output = Kimenet bar.strength = [stat]{0}[lightgray]x erő bar.regenerationrate = [stat]{0}/mp[lightgray] regenerálási sebesség +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Processzorvezérelt @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] területi sebzés ~[stat] {1}[lightgr bullet.incendiary = [stat]gyújtó bullet.homing = [stat]nyomkövető bullet.armorpierce = [stat]páncéltörő +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] sebzési határérték bullet.suppression = [stat]{0} mp[lightgray] javításelnyomás ~[stat]{1}[lightgray] mező bullet.interval = [stat]{0}/mp[lightgray] gyakoriságú lövedékek: diff --git a/core/assets/bundles/bundle_id_ID.properties b/core/assets/bundles/bundle_id_ID.properties index 8249109ff2..2dce8ca1a5 100644 --- a/core/assets/bundles/bundle_id_ID.properties +++ b/core/assets/bundles/bundle_id_ID.properties @@ -1070,6 +1070,7 @@ stat.ammo = Amunisi stat.shieldhealth = Nyawa Perisai stat.cooldowntime = Waktu Pendinginan stat.regenerationrate = Laju Pemulihan +stat.activationtime = Activation Time stat.explosiveness = Daya Ledak stat.basedeflectchance = Peluang Defleksi Dasar stat.lightningchance = Peluang Menghasilkan Petir @@ -1180,6 +1181,8 @@ bar.input = Masukan bar.output = Keluaran bar.strength = [stat]{0}[lightgray]x penguatan bar.regenerationrate = [stat]{0}/sec[lightgray] waktu pulih +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Dikendalikan Prosesor @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] damage percikan~[stat] {1}[lightgray] bullet.incendiary = [stat]membakar bullet.homing = [stat]mengejar bullet.armorpierce = [stat]menembus pelindung +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] batas damage bullet.suppression = [stat]{0}[lightgray] detik penahan perbaikan ~ [stat]{1}[lightgray] ubin bullet.interval = [stat]{0}/detik[lightgray] jarak antar peluru: diff --git a/core/assets/bundles/bundle_it.properties b/core/assets/bundles/bundle_it.properties index 6efb2d9f29..b446f9e775 100644 --- a/core/assets/bundles/bundle_it.properties +++ b/core/assets/bundles/bundle_it.properties @@ -1070,6 +1070,7 @@ stat.ammo = Munizioni stat.shieldhealth = Integrità Scudo stat.cooldowntime = Tempo Raffreddamento stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Esplosività stat.basedeflectchance = Probabilità di Deviazione stat.lightningchance = Probabilità di Fulmine @@ -1180,6 +1181,8 @@ bar.input = Entrata bar.output = Uscita bar.strength = [stat]{0}[lightgray]x forza bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Controllato dal Processore @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] danno ad area ~[stat] {1}[lightgray] bullet.incendiary = [stat]incendiario bullet.homing = [stat]autoguidato bullet.armorpierce = [stat]perforazione alle armature +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_ja.properties b/core/assets/bundles/bundle_ja.properties index 1fb090df22..b49fa93b8a 100644 --- a/core/assets/bundles/bundle_ja.properties +++ b/core/assets/bundles/bundle_ja.properties @@ -1070,6 +1070,7 @@ stat.ammo = 弾薬 stat.shieldhealth = シールド stat.cooldowntime = クールタイム stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = 爆発性 stat.basedeflectchance = 反射確率 stat.lightningchance = 電撃確率 @@ -1180,6 +1181,8 @@ bar.input = 入力 bar.output = 出力 bar.strength = [stat]{0}[lightgray]x 強化 bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]プロセッサーの制御下 @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] 範囲ダメージ 約[stat] {1}[ligh bullet.incendiary = [stat]焼夷弾 bullet.homing = [stat]追尾弾 bullet.armorpierce = [stat]装甲貫通 +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] ダメージ制限 bullet.suppression = [stat]{0} 秒[lightgray] 修復妨害 ~ [stat]{1}[lightgray] タイル bullet.interval = [stat]{0}/秒[lightgray] 発砲間隔: diff --git a/core/assets/bundles/bundle_ko.properties b/core/assets/bundles/bundle_ko.properties index 09010786c0..ac2a69552c 100644 --- a/core/assets/bundles/bundle_ko.properties +++ b/core/assets/bundles/bundle_ko.properties @@ -1070,6 +1070,7 @@ stat.ammo = 탄약 stat.shieldhealth = 보호막 내구도 stat.cooldowntime = 쿨타임 stat.regenerationrate = 재생률 +stat.activationtime = Activation Time stat.explosiveness = 폭발성 stat.basedeflectchance = 기본 반사 확률 stat.lightningchance = 전격 생성 확률 @@ -1180,6 +1181,8 @@ bar.input = 입력 bar.output = 출력 bar.strength = [stat]{0}[lightgray]x 치료 속도[][] bar.regenerationrate = [stat]{0}/초[lightgray] 재생률 +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]프로세서 제어됨[] @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] 범위 피해량 ~ [stat]{1}[lightgra bullet.incendiary = [stat]방화[] bullet.homing = [stat]유도[] bullet.armorpierce = [stat]방어 관통 +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] 피해 한도 bullet.suppression = [stat]{0} 초[lightgray] 수리 억제 ~ [stat]{1}[lightgray] 타일 bullet.interval = [stat]{0}/초[lightgray] 간격 탄환: diff --git a/core/assets/bundles/bundle_lt.properties b/core/assets/bundles/bundle_lt.properties index 3cb3bed043..668d45d949 100644 --- a/core/assets/bundles/bundle_lt.properties +++ b/core/assets/bundles/bundle_lt.properties @@ -1070,6 +1070,7 @@ stat.ammo = Šoviniai stat.shieldhealth = Shield Health stat.cooldowntime = Cooldown Time stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Explosiveness stat.basedeflectchance = Base Deflect Chance stat.lightningchance = Lightning Chance @@ -1180,6 +1181,8 @@ bar.input = Įeiga bar.output = Išeiga bar.strength = [stat]{0}[lightgray]x strength bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Processor Controlled @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] zonos žalos ~[stat] {1}[lightgray] b bullet.incendiary = [stat]uždegantis bullet.homing = [stat]sekimas bullet.armorpierce = [stat]armor piercing +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_nl.properties b/core/assets/bundles/bundle_nl.properties index 82eb4f2b37..3252cf5794 100644 --- a/core/assets/bundles/bundle_nl.properties +++ b/core/assets/bundles/bundle_nl.properties @@ -1070,6 +1070,7 @@ stat.ammo = Ammunitie stat.shieldhealth = Schild Levenspunten stat.cooldowntime = Afkoelingsperiode stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Explosiviteit stat.basedeflectchance = Basis Afbuigingskans stat.lightningchance = Bliksemkans @@ -1180,6 +1181,8 @@ bar.input = Invoer bar.output = Uitvoer bar.strength = [stat]{0}[lightgray]x sterkte bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Processor Gestuurd @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] gebied scade ~[stat] {1}[lightgray] t bullet.incendiary = [stat]brandstichtend bullet.homing = [stat]doelzoekend bullet.armorpierce = [stat]pantserdoorborend +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_nl_BE.properties b/core/assets/bundles/bundle_nl_BE.properties index 26efddfdb4..63e1d8b7f4 100644 --- a/core/assets/bundles/bundle_nl_BE.properties +++ b/core/assets/bundles/bundle_nl_BE.properties @@ -1070,6 +1070,7 @@ stat.ammo = Ammo stat.shieldhealth = Shield Health stat.cooldowntime = Cooldown Time stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Explosiveness stat.basedeflectchance = Base Deflect Chance stat.lightningchance = Lightning Chance @@ -1180,6 +1181,8 @@ bar.input = Input bar.output = Output bar.strength = [stat]{0}[lightgray]x strength bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Processor Controlled @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] area dmg ~[stat] {1}[lightgray] tiles bullet.incendiary = [stat]incendiary bullet.homing = [stat]homing bullet.armorpierce = [stat]armor piercing +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_pl.properties b/core/assets/bundles/bundle_pl.properties index f68d0a321c..1ce592f6c0 100644 --- a/core/assets/bundles/bundle_pl.properties +++ b/core/assets/bundles/bundle_pl.properties @@ -1070,6 +1070,7 @@ stat.ammo = Amunicja stat.shieldhealth = Życie Tarczy stat.cooldowntime = Czas Odnowienia stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Wybuchowość stat.basedeflectchance = Bazowa Szansa Na Odbicie stat.lightningchance = Szansa Na Błyskawicę @@ -1180,6 +1181,8 @@ bar.input = Wejście bar.output = Wyjście bar.strength = [stat]{0}[lightgray]x siły bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Kontrolowany przez procesor @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] Obrażenia obszarowe ~[stat] {1}[ligh bullet.incendiary = [stat]zapalający bullet.homing = [stat]naprowadzający bullet.armorpierce = [stat]przebijający pancerz +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] maksymalne obrażenia bullet.suppression = [stat]{0} sec[lightgray] wyłączenie naprawy ~ [stat]{1}[lightgray] kratki bullet.interval = [stat]{0}/sec[lightgray] częstotliwość strzału: diff --git a/core/assets/bundles/bundle_pt_BR.properties b/core/assets/bundles/bundle_pt_BR.properties index c5888489f9..e1b166c23c 100644 --- a/core/assets/bundles/bundle_pt_BR.properties +++ b/core/assets/bundles/bundle_pt_BR.properties @@ -1070,6 +1070,7 @@ stat.ammo = Munição stat.shieldhealth = Vida do Escudo stat.cooldowntime = Tempo de espera stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Explosividade stat.basedeflectchance = Chance Base de Esquiva stat.lightningchance = Chance de Raio @@ -1180,6 +1181,8 @@ bar.input = Entrada bar.output = Saída bar.strength = [stat]{0}[lightgray]x força bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Controlado por Processador @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] de dano em área ~[stat] {1}[lightgra bullet.incendiary = [stat]Incendiário bullet.homing = [stat]Guiado bullet.armorpierce = [stat]pentração de armadura +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_pt_PT.properties b/core/assets/bundles/bundle_pt_PT.properties index caeccaffe9..f1ed9e9a58 100644 --- a/core/assets/bundles/bundle_pt_PT.properties +++ b/core/assets/bundles/bundle_pt_PT.properties @@ -1070,6 +1070,7 @@ stat.ammo = Munição stat.shieldhealth = Vida do Escudo stat.cooldowntime = Tempo de Espera stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Explosividade stat.basedeflectchance = Probabilidade Base de Esquiva stat.lightningchance = Probabilidade de Raio @@ -1180,6 +1181,8 @@ bar.input = Entrada bar.output = Saída bar.strength = [stat]{0}[lightgray]x força bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Controlado por Processador @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] Dano em área ~[stat] {1}[lightgray] bullet.incendiary = [stat]incendiário bullet.homing = [stat]guiado bullet.armorpierce = [stat]perfuração de armadura +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] limite de dano bullet.suppression = [stat]{0} seg.[lightgray] supressão de reparação ~ [stat]{1}[lightgray] blocos bullet.interval = [stat]{0}/seg.[lightgray] balas de intervalo: diff --git a/core/assets/bundles/bundle_ro.properties b/core/assets/bundles/bundle_ro.properties index d2e4a64563..d55a272719 100644 --- a/core/assets/bundles/bundle_ro.properties +++ b/core/assets/bundles/bundle_ro.properties @@ -1070,6 +1070,7 @@ stat.ammo = Muniție stat.shieldhealth = Viață Scut stat.cooldowntime = Timp de Reîncărcare stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Explozivitate stat.basedeflectchance = Șansă de Reflexie stat.lightningchance = Șansă Fulger @@ -1180,6 +1181,8 @@ bar.input = Necesită bar.output = Produce bar.strength = [stat]{0}[lightgray]x putere bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Controlat de Procesor @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] forță pe raza ~[stat] {1}[lightgray bullet.incendiary = [stat]incendiar bullet.homing = [stat]cu radar bullet.armorpierce = [stat]armor piercing +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_ru.properties b/core/assets/bundles/bundle_ru.properties index 411cdb2195..135650e071 100644 --- a/core/assets/bundles/bundle_ru.properties +++ b/core/assets/bundles/bundle_ru.properties @@ -1070,6 +1070,7 @@ stat.ammo = Боеприпасы stat.shieldhealth = Прочность щита stat.cooldowntime = Время восстановления stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Взрывоопасность stat.basedeflectchance = Базовый шанс отражения stat.lightningchance = Шанс удара молнии @@ -1180,6 +1181,8 @@ bar.input = Ввод bar.output = Вывод bar.strength = [stat]{0}[lightgray]x эффективность bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Управляется процессором @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] урона в радиусе ~[stat] bullet.incendiary = [stat]зажигательный bullet.homing = [stat]самонаводящийся bullet.armorpierce = [stat]бронебойный +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] предел урона bullet.suppression = [stat]{0} сек[lightgray] подавления регенерации в радиусе ~ [stat]{1}[lightgray] блоков bullet.interval = [stat]{0}/сек[lightgray] интервальный(ых) снаряд(ов): diff --git a/core/assets/bundles/bundle_sr.properties b/core/assets/bundles/bundle_sr.properties index 8bb40dabce..978dea6411 100644 --- a/core/assets/bundles/bundle_sr.properties +++ b/core/assets/bundles/bundle_sr.properties @@ -1070,6 +1070,7 @@ stat.ammo = Municija stat.shieldhealth = Izdržljivost štita stat.cooldowntime = Vreme hlađenja stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Eksplozivnost stat.basedeflectchance = Šansa odbijanja stat.lightningchance = Šansa za stvaranje munje @@ -1180,6 +1181,8 @@ bar.input = Ulaz bar.output = Izlaz bar.strength = [stat]{0}[lightgray]x snage bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Procesno Upravljan @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] oblasna šteta ~[stat] {1}[lightgray] bullet.incendiary = [stat]zapaljiv bullet.homing = [stat]samonavođenje bullet.armorpierce = [stat]proboj oklopa +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_sv.properties b/core/assets/bundles/bundle_sv.properties index 01ab6d2782..20c45fc86c 100644 --- a/core/assets/bundles/bundle_sv.properties +++ b/core/assets/bundles/bundle_sv.properties @@ -1070,6 +1070,7 @@ stat.ammo = Ammunition stat.shieldhealth = Shield Health stat.cooldowntime = Cooldown Time stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Explosiveness stat.basedeflectchance = Base Deflect Chance stat.lightningchance = Lightning Chance @@ -1180,6 +1181,8 @@ bar.input = Input bar.output = Output bar.strength = [stat]{0}[lightgray]x strength bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Processor Controlled @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] area dmg ~[stat] {1}[lightgray] tiles bullet.incendiary = [stat]incendiary bullet.homing = [stat]homing bullet.armorpierce = [stat]armor piercing +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_th.properties b/core/assets/bundles/bundle_th.properties index 24367bc208..458d2c2843 100644 --- a/core/assets/bundles/bundle_th.properties +++ b/core/assets/bundles/bundle_th.properties @@ -1070,6 +1070,7 @@ stat.ammo = กระสุน stat.shieldhealth = พลังชีวิตโล่ stat.cooldowntime = เวลาคูลดาวน์ stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = แรงระเบิด stat.basedeflectchance = โอกาสกระสุนสะท้อนกลับ stat.lightningchance = โอกาสเกิดสายฟ้า @@ -1180,6 +1181,8 @@ bar.input = ด้านเข้า bar.output = ด้านออก bar.strength = [lightgray]ความรุนแรง [stat]{0}[lightgray]x bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]ถูกตัวประมวลผลควบคุมอยู่ @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] ดาเมจกระจาย ~[s bullet.incendiary = [stat]ติดไฟ bullet.homing = [stat]ติดตามตัว bullet.armorpierce = [stat]เจาะเกราะ +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] ความเสียหายสูงสุด bullet.suppression = [stat]{0} วิ[lightgray] ระงับการฟื้นฟู ~ [stat]{1}[lightgray] ช่อง bullet.interval = [stat]{0}/วิ[lightgray] กระสุนช่วงระยะ: diff --git a/core/assets/bundles/bundle_tk.properties b/core/assets/bundles/bundle_tk.properties index 3a9067d41d..2424fcb29a 100644 --- a/core/assets/bundles/bundle_tk.properties +++ b/core/assets/bundles/bundle_tk.properties @@ -1070,6 +1070,7 @@ stat.ammo = Ammo stat.shieldhealth = Shield Health stat.cooldowntime = Cooldown Time stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Explosiveness stat.basedeflectchance = Base Deflect Chance stat.lightningchance = Lightning Chance @@ -1180,6 +1181,8 @@ bar.input = Input bar.output = Output bar.strength = [stat]{0}[lightgray]x strength bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Processor Controlled @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] area dmg ~[stat] {1}[lightgray] tiles bullet.incendiary = [stat]incendiary bullet.homing = [stat]homing bullet.armorpierce = [stat]armor piercing +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles bullet.interval = [stat]{0}/sec[lightgray] interval bullets: diff --git a/core/assets/bundles/bundle_tr.properties b/core/assets/bundles/bundle_tr.properties index 50a6c295b0..fe1481ef75 100644 --- a/core/assets/bundles/bundle_tr.properties +++ b/core/assets/bundles/bundle_tr.properties @@ -1070,6 +1070,7 @@ stat.ammo = Mermi stat.shieldhealth = Kalkan Canı stat.cooldowntime = Soğuma Süresi stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Patlayıcılık stat.basedeflectchance = Mermi Sekme İhtimali stat.lightningchance = Yıldırım Çarpma İhtimali @@ -1180,6 +1181,8 @@ bar.input = Girdi bar.output = Çıktı bar.strength = [stat]{0}[lightgray]x Güç bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]İşlemci Kontrolünde @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0} [lightgray]alan hasarı ~[stat] {1} [lightgray]k bullet.incendiary = [stat]yakıcı bullet.homing = [stat]güdümlü bullet.armorpierce = [stat]zırh delici +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] hasar limiti bullet.suppression = [stat]{0} sn[lightgray] tamir bastırması ~ [stat]{1}[lightgray] karolar bullet.interval = [stat]{0}/sn[lightgray] ara mermiler: diff --git a/core/assets/bundles/bundle_uk_UA.properties b/core/assets/bundles/bundle_uk_UA.properties index 29403172bb..48d0670540 100644 --- a/core/assets/bundles/bundle_uk_UA.properties +++ b/core/assets/bundles/bundle_uk_UA.properties @@ -1070,6 +1070,7 @@ stat.ammo = Боєприпаси stat.shieldhealth = Міцність щита stat.cooldowntime = Тривалість охолодження stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = Вибухонебезпечність stat.basedeflectchance = Базовий шанс відбиття stat.lightningchance = Шанс удару блискавки @@ -1180,6 +1181,8 @@ bar.input = Ввід bar.output = Вивід bar.strength = x[stat]{0}[lightgray] сила bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Керується процесором @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] шкода по ділянці ~[stat bullet.incendiary = [stat]запальний bullet.homing = [stat]самонаведення bullet.armorpierce = [stat]бронебійність +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] обмеження шкоди bullet.suppression = [stat]{0}[lightgray] сек. пригнічення відновлення ~ [stat]{1}[lightgray] плит. bullet.interval = [stat]{0} за сек. [lightgray] період між кулями: diff --git a/core/assets/bundles/bundle_vi.properties b/core/assets/bundles/bundle_vi.properties index 5066ca281e..373b689961 100644 --- a/core/assets/bundles/bundle_vi.properties +++ b/core/assets/bundles/bundle_vi.properties @@ -1070,6 +1070,7 @@ stat.ammo = Đạn stat.shieldhealth = Độ bền khiên stat.cooldowntime = Thời gian hồi phục stat.regenerationrate = Tốc Độ Hồi Phục +stat.activationtime = Activation Time stat.explosiveness = Gây nổ stat.basedeflectchance = Tỷ lệ phản đạn stat.lightningchance = Tỷ lệ phóng điện @@ -1180,6 +1181,8 @@ bar.input = Đầu vào bar.output = Đầu ra bar.strength = [stat]{0}[lightgray]x sức mạnh bar.regenerationrate = [stat]{0}/sec[lightgray] tốc độ hồi phục +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]Điều khiển bởi bộ xử lý @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] sát thương diện rộng ~[stat] { bullet.incendiary = [stat]gây cháy bullet.homing = [stat]truy đuổi bullet.armorpierce = [stat]xuyên giáp +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] giới hạn sát thương bullet.suppression = [stat]{0}[lightgray] giây ngăn sửa chữa ~ [stat]{1}[lightgray] ô bullet.interval = [stat]{0}/giây[lightgray] đạn ngắt quãng: diff --git a/core/assets/bundles/bundle_zh_CN.properties b/core/assets/bundles/bundle_zh_CN.properties index fa501fc325..a987a73a90 100644 --- a/core/assets/bundles/bundle_zh_CN.properties +++ b/core/assets/bundles/bundle_zh_CN.properties @@ -1070,6 +1070,7 @@ stat.ammo = 弹药 stat.shieldhealth = 护盾容量 stat.cooldowntime = 冷却时间 stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = 爆炸性 stat.basedeflectchance = 基础反射概率 stat.lightningchance = 激发闪电概率 @@ -1180,6 +1181,8 @@ bar.input = 输入 bar.output = 输出 bar.strength = [stat]{0}[lightgray]x 效率 bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]由处理器控制 @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray] 范围伤害 ~ [stat]{1}[lightgray] bullet.incendiary = [stat]燃烧 bullet.homing = [stat]追踪 bullet.armorpierce = [stat]穿甲 +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray] 伤害上限 bullet.suppression = [stat]{0} 秒[lightgray] 修复压制 ~ [stat]{1}[lightgray] 格 bullet.interval = [stat]{0}/秒[lightgray] 分裂子弹: diff --git a/core/assets/bundles/bundle_zh_TW.properties b/core/assets/bundles/bundle_zh_TW.properties index b8d8165836..13dce3f0cf 100644 --- a/core/assets/bundles/bundle_zh_TW.properties +++ b/core/assets/bundles/bundle_zh_TW.properties @@ -1070,6 +1070,7 @@ stat.ammo = 彈藥 stat.shieldhealth = 護盾生命值 stat.cooldowntime = 冷確時間 stat.regenerationrate = Regeneration Rate +stat.activationtime = Activation Time stat.explosiveness = 爆炸性 stat.basedeflectchance = 基礎偏移量 stat.lightningchance = 燃燒機率 @@ -1180,6 +1181,8 @@ bar.input = 輸入 bar.output = 輸出 bar.strength = [stat]{0}[lightgray]x 強度 bar.regenerationrate = [stat]{0}/sec[lightgray] regen rate +bar.activationtimer = Activates in {0} +bar.activated = Activated units.processorcontrol = [lightgray]由微處理器控制 @@ -1188,6 +1191,9 @@ bullet.splashdamage = [stat]{0}[lightgray]範圍傷害 ~[stat] {1}[lightgray]格 bullet.incendiary = [stat]燃燒 bullet.homing = [stat]追蹤 bullet.armorpierce = [stat]穿甲 +bullet.armorweakness = [red]{0}%[lightgray] armor weakness +bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing +bullet.antiarmor = [stat]{0}x[lightgray] anti-armor bullet.maxdamagefraction = [stat]{0}%[lightgray]傷害上限 bullet.suppression = [stat]{0}秒[lightgray]抑制修復 ~ [stat]{1}[lightgray]格 bullet.interval = [stat]{0}/秒[lightgray]分裂子彈: