Start Info Community Spielen
 
 

Morgengrauner Dokumentation

Dateipfad: /home/mud/mudlib/doc//wiz/seil

Dokumentation fuer das Std-Seil: /items/seil.c

Abhaengigkeiten: /sys/thing/seil.h

Das Standard-Seil ermoeglichst das Festbinden und Loesen eines Seiles an
Objekten und Raeumen. Es kann im ganzen Morgengrauen verwendet werden.

In den Objekten, die festgebunden werden, wird die Property P_TIED gesetzt.
Sie enthaelt ein Mappng der Form:

([

 objektid: ([ "player" : playerid, "time" : timestamp ])

])

Wenn ein Objekt festgebunden wird, so wird die Funktion tie() in dem Objekt
aufgerufen. Die Funktion muss in dem Objekt vorhanden sein. Liefert die
Funktion 1 zurueck, darf man ein Seil daran binden.

Aus der Funktion heraus kann im Seil in der Property P_TIE_USER ausgelesen
werden, welcher User die Aktion ausgeloest hat.
(Diese Daten werden aus Kompatibilitaetsgruenden nicht an die Fkt. direkt
uebergeben.)

Wird ein Seil wieder losgebunden, so wird die Funktion
untie()
in dem Objekt aufgerufen.

Damit ein Seil in einem Raum festgebunden werden kann, muss der Raum eine
id() bekommen - wie ein normales Objekt.

In den Funktionen tie() und untie() kann jeweils ueberprueft werden, ob ein
Spieler ein Seil benutzen darf oder nicht. Liefern die Funktionen 0 zurueck,
so wird die Benutzung des Seiles verweigert. Die Funktion tie() muss string
oder int zurueckgeben.

Die Funktion seil->query_tied_to_ob() liefert das Objekt zurueck, an welches
ein Seil gebunden ist oder 0;

Bei der Benutzung eines Seiles im Raum wird zur Beschreibung die Funktion
name() aufgerufen. Es kann also P_NAME gesetzt werden oder direkt name() im
Raum ueberschrieben werden.

Seile koennen ueber NPCs, Raeume und Zauber gesteuert werden:

varargs int binde_seil(string ziel, string msg)

        Ziel beschreibt das Objekt oder Raum, wo es festgebunden werden soll
        msg ist die Ausgabe. Wird msg nicht gesetzt, so wird eine
            Standard-Ausgabe ausgegeben.

varargs int loese_seil(string msg)
        Das Seil wird geloest - es wird dabei die msg in den Raum
        ausgegeben. Ist msg nicht definiert, wird eine Standardausgabe
        erzeugt.


Beide Funktionen werden wir von einem Spieler behandelt - es werden tie() und
untie() in den festgebundenen Objekten ausgewertet.

Eine weitere Property ist P_TIE_AUTO.
Dieser Wert steht per Default auf 1 und erlaubt damit eine automatische
Benutzung des Seiles ueber die Funktionen binde_seil() und loese_seil().
Ist diese Property auf 0, so koennen nur Spieler das Seil benutzen.


Letzte Aenderung: 2019-12-26, Arathorn


zurück zur Übersicht

YOUTUBE | FACEBOOK | TWITTER | DISCORD | FEEDBACK | IMPRESSUM | DATENSCHUTZ 1992–2023 © MorgenGrauen.