Start Info Community Spielen
 
 

Morgengrauner Dokumentation

Dateipfad: /home/mud/mudlib/doc//lfun/AddSpecialDetail

AddSpecialDetail()
******************


VERALTET AddSpecialDetail()
===========================


FUNKTION
========

   void AddSpecialDetail(string|string* keys, string func);


DEFINIERT IN
============

   /std/thing/description.c


ARGUMENTE
=========

   keys
     String oder Array von Strings mit den Namen der Details.
   func
     String mit dem Namen der Funktion, die zur Auswertung aufgerufen
     wird.


BESCHREIBUNG
============

   Es wird ein Detail hinzugefuegt, dessen Inhalt nicht von vornherein
   feststeht, sondern von aeusseren Bedingungen abhaengt. Zu diesem
   Zweck wird immer, wenn dieses Detail untersucht wird, die Funktion
   func aufgerufen, um den aktuellen Zustand des Details zu bestimmen.
   Der Funktion wird als Parameter das Schluesselwort uebergeben, mit
   dem das Detail untersucht wurde.

   VERALTET: Bitte AddDetail mit Closure benutzen.


BEISPIELE
=========

   Ein zustandsabhaengiges Detail:

     int hebel_betaetigt;
     string hebel(string key);
     ...
     // ALT: AddSpecialDetail( ({ "hebel", "schalter" }), "hebel" );
     AddDetail(({ "hebel", "schalter" }), #'hebel );
     ...
     string hebel(string key)
     { if(hebel_betaetigt)
         return "Der "+capitalize(key)+" steht auf EIN.\n";
       else
         return "Der "+capitalize(key)+" steht auf AUS.\n";
     }

   Man erhaelt verschiedene Ergebnisse beim Untersuchen, je nachdem
   ob das Flag hebel_betaetigt gesetzt ist oder nicht.


BEMERKUNG
=========

   Intern werden Details und SpecialDetails im selben Mapping
   verwaltet.
   Man kann statt dieser Funktion deshalb auch AddDetail mit Closures
   nutzen.


SIEHE AUCH
==========


Setzen : AddDetail(), AddReadDetail(), AddSmells(), AddSounds(), AddTouchDetail() Loeschen: RemoveDetail(), RemoveReadDetail(), RemoveSmells(), RemoveSounds(), RemoveTouchDetail() Daten: P_DETAILS, P_READ_DETAILS, P_SMELLS, P_SOUNDS, P_TOUCH_DETAILS Veraltet: RemoveSpecialDetail(), P_READ_MSG Sonstiges: GetDetail(), break_string()

20.01.2015, Zesstra


zurück zur Übersicht

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