blob: 729ef2b49f536bfc4b6edc1133c1c1140f3ace1b [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001CheckSpellFatigue()
2*******************
MG Mud User88f12472016-06-24 23:31:02 +02003
MG Mud User88f12472016-06-24 23:31:02 +02004
Zesstra953f9972017-02-18 15:37:36 +01005FUNKTION
6========
MG Mud User88f12472016-06-24 23:31:02 +02007
Zesstra953f9972017-02-18 15:37:36 +01008 public varargs int CheckSpellFatigue(string key)
MG Mud User88f12472016-06-24 23:31:02 +02009
MG Mud User88f12472016-06-24 23:31:02 +020010
Zesstra953f9972017-02-18 15:37:36 +010011DEFINIERT IN
12============
MG Mud User88f12472016-06-24 23:31:02 +020013
Zesstra953f9972017-02-18 15:37:36 +010014 /std/living/skills.c
15 /std/player/skills.c
16 /sys/living/skills.h
MG Mud User88f12472016-06-24 23:31:02 +020017
MG Mud User88f12472016-06-24 23:31:02 +020018
Zesstra953f9972017-02-18 15:37:36 +010019ARGUMENTE
20=========
MG Mud User88f12472016-06-24 23:31:02 +020021
Zesstra953f9972017-02-18 15:37:36 +010022 string key : Eindeutiger Name des Spruches, einer Gruppe von Spruechen
23 oder 0 fuer die globale Spruchermuedung.
MG Mud User88f12472016-06-24 23:31:02 +020024
Zesstra953f9972017-02-18 15:37:36 +010025
26BESCHREIBUNG
27============
28
29 Diese Funktion dient zum Pruefen von individuellen Spruchermuedungen
30 (Spellfatigue, Spruchsperren).
31 Hiermit lassen sich unabhaengige Ermuedungen/Sperren fuer einzelne
32 Sprueche oder Gruppen von Spruechen gestalten.
33
34 Wird <key> nicht angegeben oder ist 0, wird die globale Spruchsperre
35 geprueft (identisch zu der Property P_NEXT_SPELL_TIME), anderenfalls
36 die unter <key> gespeicherte Spruchermuedung.
37 Prueft man einen Eintrag ohne Angabe von <key> ist das Ergebnis dieser
38 Funktion identisch zur Abfrage von P_NEXT_SPELL_TIME.
39
40
41RUeCKGABEWERT
42=============
43
44 0 Spruchermuedung existiert nicht oder ist abgelaufen.
45
46 >0 Spruchermuedung ist noch nicht abgelaufen, Rueckgabewert ist die
47 Zeit, bei der dieser Eintrag ablaeuft. Der Spruch darf _nicht_
48 ausgefuehrt werden.
49
50
51BEISPIELE
52=========
53
54 Ein Spell gehoert zu einer Gruppe von Spells mit dem Namen 'extrasuess'.
55 Er darf nur ausgefuehrt werden, wenn seit 5s kein anderer Spruch aus der
56 Gruppe ausgefuehrt wurde.
57 if (ob->CheckSpellFatigue("extrasuess") {
58 // alte Sperre noch nicht abgelaufen.
59 tell_object(ob, "Deine unendliche Schokotorte ist noch nicht wieder "
60 "nachgewachsen.\n");
61 return ... ;
62 }
63
64
65BEMERKUNGEN
66===========
67
68 Die genauen Zeitdauern koennen von Spielern beeinflusst werden, sie
69 unterliegen der jeweiligen Einstellung von 'spruchermuedung', d.h. koennen
70 auf volle 2s aufgerundet werden.
71 Auch wenn diese Funktion zum Verwalten von beliebigen Zeitsperren genutzt
72 werden koennen, beschraenkt euch bitte auf Spruchermuedungen und benutzt
73 ansonsten check_and_update_timed_key(). Falls ihr diesbzgl. weitere/andere
74 Wuensche habt, sprecht den/die Mudlib-EM an.
75
76
77SIEHE AUCH
78==========
79
80 SetSpellFatigue(L), DeleteSpellFatigue(L)
81 P_NEXT_SPELL_TIME
82 spruchermuedung
83
MG Mud User88f12472016-06-24 23:31:02 +02008427.03.2010, Zesstra