If you're making it, you don't need to store the attacker then if you'll use ExecuteHam().
Input for ExecuteHam() is like the callback's inputs:
Quote:
|
event_player_damage(victim, inflictor, attacker, dmg, dmgbits)
|
Those beeing Ham_TakeDamage's params, ExecuteHam would be:
Code:
ExecuteHam(Ham_TakeDamage, victim, inflictor, attacker, 3.0, DMG_POISON)
You should look into ham_const.inc for future ham related hooks.
Also your "doPoison" is not called by anything... and registering Ham_TakeDamage doesn't really do anything there, unless that's the way you're triggering poison, but I can't see it be called.
__________________