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