sirnii's picture
Upload 1816 files
b6a38d7 verified
raw
history blame
1.74 kB
-- ========== GENERATED BY CharacterEffectCompositeDef Editor DO NOT EDIT MANUALLY! ==========
PlaceObj('CharacterEffectCompositeDef', {
'Group', "Health",
'Id', "Berserker",
'SortKey', 4,
'Parameters', {
PlaceObj('PresetParamPercent', {
'Name', "damageBonus",
'Value', 10,
'Tag', "<damageBonus>%",
}),
PlaceObj('PresetParamNumber', {
'Name', "stackCap",
'Value', 5,
'Tag', "<stackCap>",
}),
},
'object_class', "Perk",
'unit_reactions', {
PlaceObj('UnitReaction', {
Event = "OnCalcBaseDamage",
Handler = function (self, target, weapon, attack_target, data)
local wounded = target:GetStatusEffect("Wounded")
if wounded and wounded.stacks > 0 then
local stackCap = self:ResolveValue("stackCap")
local damagePerStack = self:ResolveValue("damageBonus")
local stacks = Min(wounded.stacks, stackCap)
local berserkerMod = damagePerStack*stacks
data.modifier = data.modifier + berserkerMod
data.breakdown[#data.breakdown + 1] = { name = self.DisplayName, value = berserkerMod }
if target.team.player_enemy and g_Combat and not table.find(g_Combat.berserkVRsPerRole, target.role) then
PlayVoiceResponse(target, "AIBerserkerPerk")
table.insert(g_Combat.berserkVRsPerRole, target.role)
end
end
end,
}),
},
'DisplayName', T(489115886772, --[[CharacterEffectCompositeDef Berserker DisplayName]] "Rage"),
'Description', T(709603782046, --[[CharacterEffectCompositeDef Berserker Description]] "Deal <em><percent(damageBonus)> Damage</em> per <GameTerm('Wound')>.\n\nCapped at <em><Multiply(damageBonus, stackCap)>%</em>."),
'Icon', "UI/Icons/Perks/PainManagement",
'Tier', "Silver",
'Stat', "Health",
'StatValue', 80,
})