blob: 0d7cc2a777db3c6a096542e2c6c018cd81a8a574 [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001CheckSpellFatigue
2
3FUNKTION:
4 public varargs int CheckSpellFatigue(string key)
5
6DEFINIERT IN:
7 /std/living/skills.c
8 /std/player/skills.c
9 /sys/living/skills.h
10
11ARGUMENTE:
12 string key : Eindeutiger Name des Spruches, einer Gruppe von Spruechen
13 oder 0 fuer die globale Spruchermuedung.
14
15BESCHREIBUNG:
16 Diese Funktion dient zum Pruefen von individuellen Spruchermuedungen
17 (Spellfatigue, Spruchsperren).
18 Hiermit lassen sich unabhaengige Ermuedungen/Sperren fuer einzelne
19 Sprueche oder Gruppen von Spruechen gestalten.
20
21 Wird <key> nicht angegeben oder ist 0, wird die globale Spruchsperre
22 geprueft (identisch zu der Property P_NEXT_SPELL_TIME), anderenfalls
23 die unter <key> gespeicherte Spruchermuedung.
24 Prueft man einen Eintrag ohne Angabe von <key> ist das Ergebnis dieser
25 Funktion identisch zur Abfrage von P_NEXT_SPELL_TIME.
26
27RUeCKGABEWERT:
28 0 Spruchermuedung existiert nicht oder ist abgelaufen.
29
30 >0 Spruchermuedung ist noch nicht abgelaufen, Rueckgabewert ist die
31 Zeit, bei der dieser Eintrag ablaeuft. Der Spruch darf _nicht_
32 ausgefuehrt werden.
33
34BEISPIELE:
35 Ein Spell gehoert zu einer Gruppe von Spells mit dem Namen 'extrasuess'.
36 Er darf nur ausgefuehrt werden, wenn seit 5s kein anderer Spruch aus der
37 Gruppe ausgefuehrt wurde.
38 if (ob->CheckSpellFatigue("extrasuess") {
39 // alte Sperre noch nicht abgelaufen.
40 tell_object(ob, "Deine unendliche Schokotorte ist noch nicht wieder "
41 "nachgewachsen.\n");
42 return ... ;
43 }
44
45BEMERKUNGEN:
46 Die genauen Zeitdauern koennen von Spielern beeinflusst werden, sie
47 unterliegen der jeweiligen Einstellung von 'spruchermuedung', d.h. koennen
48 auf volle 2s aufgerundet werden.
49 Auch wenn diese Funktion zum Verwalten von beliebigen Zeitsperren genutzt
50 werden koennen, beschraenkt euch bitte auf Spruchermuedungen und benutzt
51 ansonsten check_and_update_timed_key(). Falls ihr diesbzgl. weitere/andere
52 Wuensche habt, sprecht den/die Mudlib-EM an.
53
54SIEHE AUCH:
55 SetSpellFatigue(L), DeleteSpellFatigue(L)
56 P_NEXT_SPELL_TIME
57 spruchermuedung
58
59----------------------------------------------------------------------------
6027.03.2010, Zesstra
61