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