I'm trying to re-create a weapon attack from scratch, but I have a problem where I have to set the "player" third person animation.
Code:
RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_medkit", "heal_pre", 0);
Code:
public heal_pre(weaponID)
{
new id = get_pdata_ehandle(weaponID, 404, 16);
new target;
get_user_aiming(id, target);
if(ExecuteHam(Ham_SC_IsMonster, target))
return HAM_IGNORED;
new tempid = -1;
new Float:v_Player[3];
pev(id, pev_origin, v_Player)
while((tempid = find_ent_in_sphere(tempid, v_Player, 100.0)))
{
if(tempid == 0
|| tempid > MaxClients
|| pev(tempid, pev_max_health) <= pev(tempid, pev_health)
|| pev(tempid, pev_deadflag) & DEAD_DYING
|| pev(tempid, pev_deadflag) & DEAD_DEAD
|| tempid == id)
continue;
new key[3];
num_to_str(weaponID,key,charsmax(key));
if(!TrieKeyExists(g_tcBusyHealthkits, key))
{
ExecuteHam(Ham_Weapon_SendWeaponAnim, weaponID, 3, 0, 0);
set_pev(id, pev_frame, 1.0);
set_pev(id, pev_animtime, 100.0);
set_pev(id, pev_framerate, 1.0);
if(pev(id, pev_flags) & FL_DUCKING)
set_pev(id, pev_sequence, 46);
else
set_pev(id, pev_sequence, 43);
TrieSetCell(g_tcBusyHealthkits, key, 0, true);
healgroup(id, weaponID);
set_task(1.0, "remove_from_busy_hk", TASK_NUM+weaponID);
break;
}
}
return HAM_SUPERCEDE;
}