1
0
EQ2Emu/docs/lua_functions/AddProcExt.md
2025-05-06 12:21:14 -04:00

40 lines
1.6 KiB
Markdown

### Function: AddProcExt(Spawn, ProcType, DamageType, Chance, HPRatio, BelowHealth, TargetHealth, Item, UseAllSpellTargets)
**Description:**
Add's a proc for a Spell and calls function proc_ext when proc succeeds.
**Parameters:**
- `Spawn`: Spawn - The spawn or entity involved.
- `ProcType`: int8 - See ProcType options
- `DamageType`: int8 - See DamageType options
- `Chance`: float - Floating point value.
- `HPRatio`: int8 - Small integer or boolean flag.
- `BelowHealth`: bool - Use HPRatio against health lower than if false (default). Otherwise if health is higher when true.
- `TargetHealth`: bool - Use Target's Health for formula, default is false (use self Spawn health). Otherwise when true use Target's health.
- `Item`: Item - An item reference.
- `UseAllSpellTargets`: int8 - By default 0 (false) use just Spawn, otherwise use all Spell Targets.
**Returns:** None.
**Example:**
```lua
-- Example usage: Spell Script when on cast there is a AddProcExt called for when player is going to die Type 13 PROC_TYPE_DEATH
- then proc_ext is called, which in turn casts the RedemptionReactiveSpell and the RemoveProc(Target) is called to remove spell from Target.
local RedemptionReactiveSpell = 2550537
function cast(Caster, Target, HealAmt, MaxHealthAmt)
AddProcExt(Target, 13, 255, 100.0)
end
function proc_ext(Caster, Target, Type, DamageType, InitialCaster, HealAmt, MaxHealthAmt)
CastSpell(Caster, RedemptionReactiveSpell, GetSpellTier(), InitialCaster)
SetSpellTriggerCount(1, 1)
RemoveProc(Target)
end
function remove(Caster, Target)
RemoveProc(Target)
end
```