AddMiniQuest()

FUNKTION:
    int AddMiniQuest(int stupse, string questgeber, string desc, int active,
                     string titel, string erledigt, mapping voraussetzungen,
                     string region, string *erlaubte)

DEFINIERT IN:
    /secure/questmaster

BESCHREIBUNG:
    Diese Funktion traegt eine neue Miniquest im Questmaster ein.

ARGUMENTE:

    stupse (>0)  - Anzahl Stufenpunkte, die fuer die MQ gutgeschrieben werden
    questgeber   - Ladename des Objekts, das GiveMiniQuest() aufruft
    desc         - Aufgabenbeschreibung der Miniquest
    active (0/1) - ist die Miniquest aktiv, d.h. spielbar, oder nicht?
    titel        - Titel der Miniquest, darf weder "in", noch "im" enthalten,
                   weil dann der Eintrag in der Fraternitas-Bibliothek nicht
                   gelesen werden kann.
    erledigt     - Beschreibung der Miniquest, nachdem man sie erledigt hat
                   Der Text kann in der Bibliothek der kleinen und grossen
                   Heldentaten in der Fraternitas eingesehen werden.
    voraussetzungen - Mapping im Format von P_RESTRICTIONS (s. dort), um
                   die Voraussetzungen festzulegen, die ein Spieler 
                   erfuellen muss, um die MQ ueberhaupt spielen zu koennen
                   Wird fuer die regionsbezogenen Informationspunkte/-NPCs
                   ausgewertet. 0 oder ([]) eintragen, wenn keine 
                   Voraussetzungen bestehen.
    region       - Zuordnung der Miniquest zu einer Region; wird fuer der
                   Bibliothek der Fraternitas verwendet, um die MQs der
                   einzelnen Regionen herauszufiltern.
    erlaubte     - Array mit Ladenamen von Objekten, die berechtigt sind,
                   die Daten der MQ abzufragen, um Spielern einen Hinweis
                   darauf zu geben, die sie noch nicht bestanden haben.

RUECKGABEWERTE:
     1: Hat geklappt
    -1: Parameterformat stimmt nicht (questgeber kein String oder Leerstring,
        voraussetzungen kein Mapping, region oder titel keine Strings, 
        erlaubte kein Array)
    -2: weniger als 1 Stufenpunkt einzutragen versucht
    -3: Das Array in "erlaubte" ist leer, oder zum angegebenen Questgeber
        wurde keine Datei gefunden.
    -4: Der angegebene Questgeber vergibt schon eine andere Miniquest


SIEHE AUCH:
    GiveMiniQuest(L), HasMiniQuest(L)
    P_RESTRICTIONS
    /secure/questmaster.c

