-- ========== GENERATED BY CharacterEffectCompositeDef Editor DO NOT EDIT MANUALLY! ========== PlaceObj('CharacterEffectCompositeDef', { 'Group', "Strength", 'Id', "CollateralDamage", 'SortKey', 7, 'Parameters', { PlaceObj('PresetParamPercent', { 'Name', "enemyDamageMod", 'Value', 15, 'Tag', "%", }), PlaceObj('PresetParamPercent', { 'Name', "objectDamageMod", 'Value', 30, 'Tag', "%", }), }, 'object_class', "Perk", 'unit_reactions', { PlaceObj('UnitReaction', { Event = "OnCalcDamageAndEffects", Handler = function (self, target, attacker, attack_target, action, weapon, attack_args, hit, data) if attacker ~= target then return end if not IsKindOf(attack_target, "CombatObject") or not IsKindOfClasses(weapon, "HeavyWeapon", "MachineGun") then return end if IsKindOf(attack_target,"Unit") then if GetCoversAt(attack_target:GetPos()) then local damageBonus = self:ResolveValue("enemyDamageMod") data.base_damage = MulDivRound(data.base_damage, 100 + damageBonus, 100) data.breakdown[#data.breakdown + 1] = { name = self.DisplayName, value = damageBonus } end else local damageBonus = self:ResolveValue("objectDamageMod") data.base_damage = MulDivRound(data.base_damage, 100 + damageBonus, 100) data.breakdown[#data.breakdown + 1] = { name = self.DisplayName, value = damageBonus } end end, }), }, 'DisplayName', T(462837297109, --[[CharacterEffectCompositeDef CollateralDamage DisplayName]] "Collateral Damage"), 'Description', T(247186377267, --[[CharacterEffectCompositeDef CollateralDamage Description]] "Deal extra Damage to enemies behind cover with Heavy Weapons and Machine Guns.\n\nDeal Damage to objects with Heavy Weapons and Machine Guns."), 'Icon', "UI/Icons/Perks/CollateralDamage", 'Tier', "Gold", 'Stat', "Strength", 'StatValue', 90, })