blob: 3b17d2bd192ec902098111ea3203c3b102b3b30e [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001QueryOpenMiniQuestsForPlayer()
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 mapping QueryOpenMiniQuestsForPlayer(object player)
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 /secure/questmaster
MG Mud User88f12472016-06-24 23:31:02 +020015
MG Mud User88f12472016-06-24 23:31:02 +020016
Zesstra953f9972017-02-18 15:37:36 +010017BESCHREIBUNG
18============
MG Mud User88f12472016-06-24 23:31:02 +020019
Zesstra953f9972017-02-18 15:37:36 +010020 Diese Funktion gibt die Liste der offenen Miniquests des Spielers als
21 Mapping zurueck.
22
23
24ARGUMENTE
25=========
26
27 player - das interessierende Spielerobjekt
28
29
30RUECKGABEWERTE
31==============
32
33 Mapping mit der Liste der Miniquests, fuer die das abfragende Objekt
34 zustaendig ist, oder leeres Mapping, wenn der Spieler keine MQs mehr
35 offen hat.
36
37 Die Liste enthaelt die Miniquestnummer als Key. Diesem sind zwei Werte
38 zugeordnet: zum einen ein Miniquest-Aufgabentext, und zum anderen -
39 falls der Spieler eine der Vorbedingungen fuer die Miniquest nicht
40 erfuellt - ein Hinweistext, der Auskunft gibt, welche Bedingung noch
41 zu erfuellen ist ("Seherstatus fehlt"). Diese Hinweistexte entsprechen
42 denen aus check_restrictions() in /std/restriction_checker.c. Der
43 jeweils andere Text wird auf 0 gesetzt.
44
45 Die Struktur des Mappings ist daher folgende:
46 ([ MQ-Nummer : <Aufgabenstellung> ; <Hinderungsgrund> ])
47
48
49
50 Beispiel: ein Spieler hat die Miniquests 18 und 49 noch nicht geloest,
51 erfuellt aber nur fuer Miniquest 49 die Anforderungen. Miniquest 18
52 erfordert den Seherstatus. Dann saehe das Mapping so aus:
53 ([ 18 : 0 ; "Dazu musst Du erst Seher werden.\n",
54 49 : "Aufgabentext_zu_49" ; 0 ])
55
56 Jedes abfragende Objekt muss daher dieses Mapping zunaecht geeignet
57 auf seinen Inhalt pruefen, um zu ermitteln, welche Meldung jeweils
58 auszugeben ist.
59
60
61BEMERKUNGEN
62===========
63
64 Das abfragende Objekt muss von einem Erzmagier oder Gott (z.B. dem
65 zustaendigen Quest-EM) im Questmaster als zugriffsberechtigt bei den-
66 jenigen Miniquests eingetragen sein, fuer die es die entsprechenden
67 Miniquest-Hinweise ausgeben darf. Diese Berechtigung ist mit dem
68 Quest-EM abzustimmen. Anderen Objekten wird ein leeres Mapping zurueck-
69 gegeben.
70
71
72SIEHE AUCH
73==========
74
75 AddMiniQuest(L), ChangeMiniQuest(L)
76 P_RESTRICTIONS
77 erzmagier
78
MG Mud User88f12472016-06-24 23:31:02 +020079Last modified: 6. Juni 2014, Arathorn.