blob: e70fa47a7aa458440a1dabba06a632e8cc31bcb1 [file] [log] [blame]
Zesstrafaebc152021-07-06 22:21:47 +02001SubFromProp()
2=========
3
4FUNKTION
5--------
6
7public varargs int SubFromProp(string propname, <int|float|string|mixed*|mapping|bytes> subtrahend)
8
9DEFINIERT IN
10------------
11
12 /std/thing/properties.c
13 /sys/thing/properties.h (Prototyp)
14
15ARGUMENTE
16---------
17
18 - propname: Die Property, die veraendert wird
19 - subtrahend: Was auf den aktuellen Wert "substrahiert" werden soll
20
21BESCHREIBUNG
22------------
23
24 Die Funktion ruft den aktuellen Wert der Property mittels QueryProp() ab, "subtrahiert" <subtrahend> davon und setzt den neuen Wert mit SetProp() wieder. Damit ist sie einfach eine Abkuerzung fuer SetProp(pname, QueryProp(pname) - subtrahend).
25
26 Erlaubte Typen fuer <subtrahend> sind nur solche, mit denen +- etwas anfangen kann und welche zum aktuellen Wert der Property passen. Alles andere loest ggf. einen (Laufzeit-)Fehler auf.
27
28RUeCKGABEWERT
29-------------
30
31 Der Wert der Property nach der Aenderung.
32
33BEISPIELE
34---------
35
36 // einen Int subtrahieren
37 SubFromProp(P_WC, 42);
38 // alle entsprechenden Elemente aus einem Array in der Property loeschen
39 // Achtung: erzeugt ein neues Array!
40 SubFromProp(P_WAITFOR, ({"zesstra"}));
41 // Ein Mappingkey aus einem Mapping in einer Property loeschen
42 SubFromProp(P_M_HEALTH_MOD, ([P_HP]))
43
44SIEHE AUCH
45----------
46
47 :doc:`QueryProp`, :doc:`AddProp`
48 Konzept: properties, /std/thing/properties.c
49
5019.06.2025, Zesstra