Тоже самое же будет, у него бесконечный цикл, пока attacker не умрет.
SDKHooks_TakeDamage снова и снова вызывает player_hurt.
Код
new Handle:hTakeDmgTimer[MAXPLAYERS + 1] = {INVALID_HANDLE, ...};
new attacker;
public Event_PlayerHurt(Handle:event, const String:name[], bool:dontBroadcast)
{
if ((attacker = GetClientOfUserId(GetEventInt(event, "attacker"))) > 0
&& hTakeDmgTimer[attacker] == INVALID_HANDLE
&& IsPlayerAlive(attacker))
{
hTakeDmgTimer[attacker] = CreateTimer(0.1, GOOFY, attacker);
SDKHooks_TakeDamage(attacker, 0,
GetClientOfUserId(GetEventInt(event, "userid")),
10.0, DMG_BULLET, -1, NULL_VECTOR, NULL_VECTOR);
}
}
public Action:GOOFY(Handle:timer, any:client)
{
hTakeDmgTimer[client] = INVALID_HANDLE;
return Plugin_Stop;
}