blob: 033963e7838c512d4e7117b4825aefd7226920a8 [file] [log] [blame]
Zesstra18626972017-01-31 10:38:27 +01001P_DISABLE_ATTACK
2================
3
4NAME
5----
6::
7
8 P_DISABLE_ATTACK "disable_attack"
9
10DEFINIERT IN
11------------
12::
13
14 /sys/properties.h
15
16BESCHREIBUNG
17------------
18::
19
20 Das Lebewesen kann nicht angreifen. Beim Setzen der Property ist es
21 wichtig, SetProp() zu benutzen und die Anzahl der Kampfrunden anzugeben,
22 die das Lebewesen paralysiert sein soll.
23
24 Ein negativer Wert ist nicht gueltig. Bei mehr als 30 Kampfrunden wird
25 die Paralyse auf 30 Kampfrunden gekappt.
26
27 Fuer jede Paralyse bekommt ein Living eine ebenso lange Schutzzeit nach
28 der Paralyse gewaehrt. Versucht man, vor Ablauf der Paralyse
29 P_DISABLE_ATTACK hoeher zu setzen (oder setzt man innerhalb der folgenden
30 Schutzzeit P_DISABLE_ATTACK auf > 0), wird DISABLE_TOO_EARLY von SetProp
31 zurueck gegeben.
32 Eine Reduktion von einem P_DISABLE_ATTACK ist moeglich, allerdings
33 reduziert dies _nicht_ eine einmal gesetzte Schutzzeit.
34
35 Einen Gegner,der nie paralysiert werden koennen soll, kann man einfach
36 per
37
38 Set(P_DISABLE_ATTACK, function int () {return 0;}, F_SET_METHOD);
39
40 erstellen, da bei diesem der Wert von P_DISABLE_ATTACK nicht mehr mit
41 einem normalen SetProp()-Aufruf geaendert werden kann.
42
43BEISPIELE
44---------
45::
46
47 // Gegner 17 Runden lang paralysieren, ohne Ruecksicht auf fruehere P.
48 // (in diesem Moment ist das Living bis time() + 4 * 17 vor laengerer
49 // oder erneuter Paralyse geschuetzt)
50 en->SetProp(P_DISABLE_ATTACK, 17);
51 // Der Gegner kann jetzt fuer 34 Kampfrunden nicht erneut paralysiert
52 // werden.
53 // Paralyse reduzieren auf 10 Kampfrunden
54 en->SetProp(P_DISABLE_ATTACK, 10);
55 // Die Schutzzeit ist immer noch bei 34 Kampfrunden, nicht bei 20.
56
57SIEHE AUCH
58----------
59::
60
61 P_NEXT_DISABLE_ATTACK
62
6319.08.2014, Zesstra
64