Morgengrauner Dokumentation
Dateipfad: /home/mud/mudlib/doc//lfun/MaterialListMaterialList()
**************
MaterialList(L)
===============
FUNKTION
========
varargs string MaterialList(int casus, mixed idinf)
DEFINIERT IN
============
/std/thing/description.c
ARGUMENTE
=========
int casus - der Fall, in dem die Materialien dekliniert werden sollen
mixed idinf - Dinge, welche die Faehigkeiten des Erkennens beeinflussen:
Einzelne Werte:
* x: allgemeine Erkennung -100 ... 100
* who: der Spieler - P_MATERIAL_KNOWLEDGE wird abgefragt
* fun: wird evaluiert
* what, kann folgendes enthalten:
- Eintrag fuer Materialien ([MAT_XXX:-100...100])
- Eintrag fuer Materialiengruppen (dito)
- ([MATERIAL_SYMMETRIC_RECOGNIZABILITY: mixed mg])
* mg ein Array:
({MATGROUP_X1,int z1, MATGROUP_X2, int z2, ...})
wobei bei Zugehoerigkeit von string mat zu Gruppe
z auf die Faehigkeit addiert, andernfalls davon
subtrahiert wird
Array mit obigen Werten:
- alle Parameter des Arrays sind optional und additiv
- ({int x, object who, mapping what, closure fun})
BESCHREIBUNG
============
Listet die Materialien auf, aus denen ein Objekt besteht.
Dabei haengt die Genauigkeit der Materialerkennung von idinf ab. D.h.
je nach den Faehigkeiten/der angegebenen Faehigkeit wird zB Wolfram
als "Wolfram" oder nur als "Metall" erkannt.
Wenn ein Spieler etwas identifiziert, sollte auch TP uebergeben werden,
bei NPCs koennte das anders aussehen.
RUECKGABEWERT
=============
String mit Liste der Materialien.
BEMERKUNGEN
===========
- es werden nur die Materialien angegeben, nicht die Menge.
- ruft ConvMaterialList() an der MATERIALDB
BEISPIELE
=========
// simpel
write("Der Gegenstand besteht aus"+ob->MaterialList(WEM,TP)+".\n")
// -> "Der Gegenstand besteht aus Gold, Silber und Rubin.\n"
// komplexer
ob->SetProp(P_MATERIAL, ([P_NITROGLYCERINE:90,P_GUNPOWDER:10]));
write("Das enthaelt "+ob->MaterialList(WER,TP)+".\n");
// -> "Das enthaelt Schwarzpulver und Nitroglycerin."
SIEHE AUCH
==========
Konzepte: material, materialerkennung
Grundlegend: P_MATERIAL, /sys/thing/material.h
Methoden: QueryMaterial(), QueryMaterialGroup()
Listen: AllMaterials(), AllGroups(), Dump()
materialliste, materialgruppen
Master: AddMaterial(), ConvMaterialList(), MaterialGroup(),
GroupName(), MaterialName(),
GetGroupMembers(), GetMatMembership()
Sonstiges: P_MATERIAL_KNOWLEDGE
7. Mai 2004 Gloinson
zurück zur Übersicht