Start Info Community Spielen
 
 

Morgengrauner Dokumentation

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

Sensitive Objekte

Man kann ein Objekt mit der Property P_SENSITIVE dazu veranlassen, auf
gewisse Dinge zu reagieren. Wenn diese Property benutzt wird, sollte sie ein
Array von Arrays enthalten, das so aussieht:

({ ({ ereignis1, key1, grenzwert1 (,Optionen1) }),
   ({ ereignis2, key2, grenzwert2 (,Optionen2) }),
   ...
   ({ ereignisN, keyN, grenzwertN (,OptionenN) }) })

Folgende moegliche Ereignisse sind in  definiert:

SENSITIVE_ATTACK - reagiert auf Angriff.
     In diesem Fall ist der Key der Schadenstyp und der Grenzwert der
     Schaden, ab dem die Funktion trigger_sensitive_attack() in dem Objekt
     aufgerufen wird. Diese Funktion bekommt uebergeben:
       1. Den Feind
       2. Den Key (nicht ALLE Schadenstypen)
       3. Den Schaden
       4. Das Argument spell von Defend()
       5. Die Optionen, und zwar alles nach dem Grenzwert als Array.

     Bemerkungen:
        o Der Schaden nach Abzug durch Ruestungen und vor Beruecksichtigung
          von Resistenz und Koerperschutz ist ausschlaggebend.
        o Ein Ereignis kann mit verschiedenen Keys mehrfach angegeben
          werden.
SENSITIVE_INVENTORY - reagiert auf bestimmte Objekte im Inventory.
     Ein solches Objekt reagiert auf andere Objekte empfindlich, die
     sensitiv sind und SENSITIVE_INVENTORY_TRIGGER mit dem gleichen Key und
     einem hoeheren Grenzwert ausloesen.

     Es ist dabei egal, welches der beiden Objekte zuerst da war. In einem
     solchen Objekt wird dann die Funktion trigger_sensitive_inv()
     aufgerufen, und zwar mit folgenden Argumenten:
       1. Das ausloesende Objekt (Das mit Ereignis
          SENSITIVE_INVENTORY_TRIGGER)
       2. Der Key
       3. Der Grenzwert des ausloesenden Objekts
       4. Die Optionen des ausloesenden Objekts
       5. Die Optionen des reagierenden Objekts
SENSITIVE_INVENTORY_TRIGGER - siehe oben
     Mit diesem Objekt selber geschieht nichts, es loest nur Funktionen in
     anderen Objekten aus (siehe oben).

In Planung ist noch:

SENSITIVE_ENVIRONMENT_CHANGE (falls im Inventory von Lebewesen)

Die Einsatzmoeglichkeiten sensitiver Objekte sind vielfaeltig:

   * Dynamit koennte jetzt SENSITIVE_ATTACK mit DT_FIRE und z.B. Grenzwert
     150 haben, die Funktion trigger_sensitive_attack() sollte dann z.B. die
     Zuendschnur anzuenden...
   * Bei Nitroglycerin entsprechend mit DT_BLUDGEON, einem sehr kleinen
     Grenzwert und einer trigger_sensitive_attack()-Funktion, die BUMM
     macht...
   * Es soll auch Dinge geben, die man besser NICHT gleichzeitig am gleichen
     Ort aufbewahren sollte... Fuer solche Dinge sind SENSITIVE_INVENTORY
     und SENSITIVE_INVENTORY_TRIGGER da.
   * SENSITIVE_ENVIRONMENT_CHANGE ist dafuer vorgesehen, dass Objekte im
     Inventory empfindlich auf Tauchen oder Aufenthalt an heissen Orten usw.
     reagieren, dies ist jedoch noch in Planung.

----------------------------------------------------------------------------
Last modified: Wed May 8 10:00:28 1996 by Wargon


zurück zur Übersicht

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