Zugegeben, bei diesem Handler steht in der Dokumentation auch etwas Verwirrendes. Zum einen werden als Parameter der Schaden und Angreifer angegeben, andererseits steht in der Beschreibung, dass man den geschädigtem Actor mit "object" addressiert, also als dritten Parameter. Kann natürlich sein, dass ich da was falsch verstanden habe.
Habe jetzt aber mal in den Quellcode dieser Funktion reingesehen und da stehen als Parameter ein Float- und ein Ref-Wert. Also hat das mit dem "object" in der Bemerkung wohl doch eine andere Bedeutung...
Auf jeden Fall registrierst du den Handler an der selben Stelle, an der du auch den ersten registiert hast. Das dürfte so aussehen:
Dann erstellst du wie beim ersten Mal das Handler-Script:
Habe jetzt aber mal in den Quellcode dieser Funktion reingesehen und da stehen als Parameter ein Float- und ein Ref-Wert. Also hat das mit dem "object" in der Bemerkung wohl doch eine andere Bedeutung...
Auf jeden Fall registrierst du den Handler an der selben Stelle, an der du auch den ersten registiert hast. Das dürfte so aussehen:
Code:
setEventHandler "OnHealthDamage" ZweitesHandlerSCRIPT
Dann erstellst du wie beim ersten Mal das Handler-Script:
Code:
scn ZweitesHandlerSCRIPT
float damage
ref attacker
Begin Function { damage , attacker }
if getIsReference playerRef == 0
return
elseif isBlocking == 0
return
endif
if getAV health <= damage
;wenn der Spieler sterben würde, werden vorher genug HP wiederhergestellt
;andernfalls erst nach dem Schlag -> im anderen Handler-Script die Variable <Quest>.rest überprüfen
set <Quest>.rest to 1
modAV2 health damage
endif
end