blob: 6e69c7fdd38314693c5447c2b8497e72bd708f45 [file] [log] [blame]
Bugfix852b5a12022-10-05 14:37:18 +02001H_HOOK_DEFEND
2=============
3
4HOOK
5----
6
7 H_HOOK_DEFEND
8
9DEFINIERT IN
10------------
11
12 /sys/hook.h
13
14GERUFEN VON
15-----------
16
17 /std/living/combat.c
18
19BESCHREIBUNG
20------------
21
22 Wird im Defend() eines Lebewesens ausgeloest. Es ist moeglich das Defend()
23 abzubrechen oder die Daten zu veraendern.
24 Dieser Hook kommt nach der Auswertung von P_TMP_DEFEND_HOOK zum Zuge, kann
25 also auch die durch diesen modifizierten Daten aendern.
26 Die Daten des Legacy-Hooks stehen, sofern vorhanden, in
27 spell[EINFO_DEFEND][DEFEND_HOOK].
28
29 Insb. wird dieser Hook aber auch erst nach Abfrage der Defender
30 ausgefuehrt. Von diesen sind evtl. bereits Meldungen ausgegeben worden,
31 auch wenn das Defend() an dieser Stelle vom Hook abgebrochen wird.
32
33 Parierwaffen, Ruestungen und Skills kommen erst nach dem Hook zum Zug.
34
35HOOK-DATEN
36----------
37
38 Es wird ein array uebergeben.
39 ({int dam, string* dam_type, mapping spell, object enemy})
40 Die Werte sind bereits normalisiert D.h., eine Ueberpruefung auf korrekte
41 Datentypen ist hier ueberfluessig.
42
43RUECKGABEWERTE
44--------------
45
46 ({ <status>, <daten> })
47 <status> : H_NO_MOD, H_CANCELLED, H_ALTERED
48 <daten> : wie uebergebenes Datenarray
49
50SIEHE AUCH
51----------
52
53 HRegisterToHook(), HUnregisterFromHook(), HookFlow(), Defend()
54
55Letzte Aenderung: 06.10.2022, Bugfix