Actually this is wrong because you used OnPlayerGiveDamage. I mean if you hit opponent's skin (not lead shoot) you will hear sound but you wont hit him (if ping is high). So you have to use OnPlayerTakeDamage only and remove OnGivePlayerDamage.
pawn Код:
forward OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid);
public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
{
new s[20];
//The one who got damaged
format(s, 20, "-Damage %.0f", amount);
TextDrawSetString(TakeDamage[playerid], s);
TextDrawShowForPlayer(playerid, TakeDamage[playerid]);
SetTimerEx("DestruirTextoDraw", 1000, false, "i", playerid);
//The one who damaged it
format(s, 20, "+Damage %.0f", amount);
TextDrawSetString(GiveDamage[issuerid], s);
TextDrawShowForPlayer(issuerid, GiveDamage[issuerid]);
PlayerPlaySound(issuerid,17802,0.0,0.0,0.0);
SetTimerEx("DestruirTextoDraw", 1000, false, "i", issuerid);
return 1;
}