function OnMugiyousei01AttackLanded(keys) local caster = EntIndexToHScript(keys.caster_entindex) local target = keys.target local powerDamage = 0 local powerDuration = 0 local pv = caster:GetAbilityPowerValue(keys.ability:GetAbilityName()) if pv ~= nil then powerDamage = pv[1] powerDuration = pv[2] end local damage = caster:THTD_GetAbilityPowerDamage(keys.ability) * (1 + powerDamage) local time = keys.damage_duration + powerDuration target:AddPoison(1, caster) target:SetContextThink(DoUniqueString("thtd_mugiyousei01_attack"), function() if GameRules:IsGamePaused() then return 0.03 end if time <= 0 or THTD_IsValid(target) == false then if target ~= nil and target:IsNull() == false then target:AddPoison(-1) end return nil end local DamageTable = { ability = keys.ability, victim = target, attacker = caster, damage = damage, damage_type = keys.ability:GetAbilityDamageType(), damage_flags = DOTA_DAMAGE_FLAG_NONE } UnitDamageTarget(DamageTable) time = time - 1.0 return 1.0 end, 0) end