if (erf >= 0) wird immer ausgeführt da erf immer >= 0 ist. Somit setzt das clamp (leben,0,100) dein leben immer auf 100 zurück.

ersetze die if Abfrage durch folgendes:
if (erf >= 0 && erf < 500)
Somit wird alles in dieser if Abfrage nur ausgeführt, wenn erf zwischen 0 und 500 ist