No, v GetPlayerHealth zjistíš hodnotu HP a tu nastavíš, takže se ta hodnota nezmění, výše píšeš toto:
"// nastavíme mu zpět přesný počet zdraví, který měl před ztrátou zdraví." což je blbost
Mělo by to být tak, jak jsi psal pak pár řádků pod tím:
SetPlayerHealth(playerid, hp + amount);