diff --git a/OpenRA.Game/GameRules/WeaponInfo.cs b/OpenRA.Game/GameRules/WeaponInfo.cs index 30f09ffb1c..a35d0dcf2c 100644 --- a/OpenRA.Game/GameRules/WeaponInfo.cs +++ b/OpenRA.Game/GameRules/WeaponInfo.cs @@ -52,6 +52,8 @@ namespace OpenRA.GameRules public readonly DamageModel DamageModel = DamageModel.Normal; [Desc("Whether we should prevent prone response for infantry.")] public readonly bool PreventProne = false; + [Desc("By what percentage should damage be modified against prone infantry.")] + public readonly int ProneModifier = 50; public float EffectivenessAgainst(ActorInfo ai) { diff --git a/OpenRA.Mods.RA/TakeCover.cs b/OpenRA.Mods.RA/TakeCover.cs index 57f47e60b7..a39f1a7852 100644 --- a/OpenRA.Mods.RA/TakeCover.cs +++ b/OpenRA.Mods.RA/TakeCover.cs @@ -18,7 +18,6 @@ namespace OpenRA.Mods.RA public class TakeCoverInfo : TurretedInfo { public readonly int ProneTime = 100; /* ticks, =4s */ - public readonly float ProneDamage = .5f; public readonly decimal ProneSpeed = .5m; public readonly WVec ProneOffset = new WVec(85, 0, -171); @@ -58,9 +57,10 @@ namespace OpenRA.Mods.RA LocalOffset = WVec.Zero; } - public float GetDamageModifier(Actor attacker, WarheadInfo warhead ) + public float GetDamageModifier(Actor attacker, WarheadInfo warhead) { - return IsProne ? Info.ProneDamage : 1f; + var proneDamage = (warhead.ProneModifier / 100f); + return IsProne ? proneDamage : 1f; } public decimal GetSpeedModifier()