FUNKTION:
private static varargs void AddMaterial(string mat, int gender,
mixed names, mixed groups, mixed dif)
DEFINIERT IN:
/global/service/materialdb.c
BESCHREIBUNG:
Fuegt ein neues Material zur Datenbank hinzu. Das Material muss zuvor
in /sys/thing/material.h bekannt gemacht werden.
ACHTUNG!
Nur zum Gebrauch innerhalb der Materialdatenbank!
ARGUMENTE:
mat - string
- Definition des Materials (aus material.h)
- zBsp: MAT_STRAW
gender - int
- Geschlecht des Materialnamens
- zBsp: NEUTER
names - string oder array aus string
- Name des Materials, oder die Faelle des Materials
- sind im array nicht alle 4 Faelle eingetragen, werden die fehlende
Faelle auf den WER-Wert gesetzt
- zBsp: Stroh oder ({"Blitz","Blitzes"})
groups - string oder array aus string oder mapping
- Auflistung der Materialgruppen, zu den(en) das Material gehoert
- zBsp: MAT_SOLID, ({MATGROUP_FLUID, MATGROUP_INFLAMMABLE}),
([MATGROUP_SOLID:0, MATGROUP_MAGIC:100]))
- Hinweis: Eigenschaften werden spaeter erweitert, dh. wird zBsp
MATGROUP_JUWEL gesetzt, sind auch folgende Gruppenzugehoerigkeiten
automatisch gesetzt, ein Juewel gehoert zu den Minerialen,
Minerialen gehoeren wiederum zu den Steinen
- Ist nicht angegeben, ob ein Material fest, fluessig oder gasfoermig
ist, wird automatisch fest gesetzt
- durch das Setzen als einen mapping ist es moeglich automatisch
angenommene Eigenschaften wieder zu loeschen - zBsp MATGROUP_SOLID
dif - int oder array - OPTIONAL
- hier wird die genauere/ungenauere Erkennung des Materials gesetzt
- je groesser der Wert, um so schwerer faellt es das Material
korrekt zu erkennen.
- fuer die meisten Materialgruppen wird ein Spieler den Defaultwert
von 0 besitzen
- wird kein Wert gesetzt, wird das Material immer erkannt
* wird nur ein int-Wert gesetzt, dann muss das erste Element der
Liste von Materialgruppen in groups ein zugehoerige MISC-Material
haben
Bsp: AddMaterial(MAT_SULFUR,MALE,"Schwefel",MATGROUP_MINERAL,-25)
hier ist der Wert -25, das zugehoerige MISC-Material zu
MATGROUP_MINERAL ist MAT_MISC_MINERAL, besitzt ein Spieler
einen geringeren Erkennungsgrad als -25 fuer die Gruppe der
Mineralien erkennt dieser nicht Schwefel, sondern nur das
es sich um ein Mineral handelt
* wird ein array gesetzt, so hat dieser folgenden Aufbau
({ungenaue_beschreibung,erkennungswert,genaue_beschreibung})
Bsp: AddMaterial(MAT_AMBER, MALE, "Bernstein",
({MATGROUP_JEWEL,MATGROUP_DEAD}),
({MAT_MISC_JEWEL,-10,MAT_AMBER})
als MISC-Material ist hier expliziet MAT_MISC_JEWEL angegeben
hat der Spieler einen Erkennungsgrad von <-10 erkennt er, das
es sich um einen Edelstein handelt, aber nicht das es sich
um Bernstein handelt, in diesem Bsp haette der Wert -10
statt dem Array ausgereicht, da in groups MATGROUP_JEWEL
als erstes steht
SIEHE AUCH:
material(WL), materialgruppen(WL), materialerkennung(WL),
materialliste(WL), QueryMaterial(L), QueryMaterialGroup(L),
MaterialList(L), P_MATERIAL, P_MATERIAL_KNOWLEDGE
|