blob: 626fd645b6643de6b74f08793e297a6e57e8481f [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001WearFunc()
2
3FUNKTION:
4 int WearFunc(object ruest, int silent, object user);
5
6DEFINIERT IN:
7 eigenen Objekten (fuer /std/clothing/wear)
8
9ARGUMENTE:
10 ruest (object)
11 Die Ruestung/Kleidung, die angezogen werden soll.
12 silent (int)
13 Ob dabei eine Meldung ausgegeben wird.
14 user (object)
15 Das Lebewesen, welches die Ruestung/Kleidung anziehen will.
16
17BESCHREIBUNG:
18 Mit dieser Funktion kann man pruefen, ob sich das Kleidungsstueck bzw.
19 Ruestung <ruest> von this_player() anziehen laesst oder nicht.
20 Kann die Ruestung angezogen werden, so muss ein Wert ungleich 0
21 zurueckgegeben werden.
22
23RUeCKGABEWERT:
24 0, wenn sich die Ruestung nicht anziehen laesst, ansonsten ungleich 0.
25
26BEMERKUNGEN:
27 Bitte nicht darauf verlassen, dass der Spieler das Objekt auch wirklich
28 anzieht, wenn man hier 1 zurueckgibt.
29 Speziell bei Schilden kann das Anziehen trotz eines Rueckgabewertes
30 != 0 immer noch schief gehen, wenn der Spieler keine Hand mehr frei hat.
31 Wenn ihr sicher sein wollt, dass der Spieler ein Objekt angezogen hat,
32 benutzt bitte InformWear().
33 Bitte nicht drauf verlassen, dass this_player() das ausziehende Lebewesen
34 ist.
35 Die Reihenfolge der Argumente ist etwas unschoen, aber leider wurde <user>
36 erheblich spaeter hinzugefuegt und es war unmoeglich, einige hundert
37 Objekte zu aendern.
38
39BEISPIELE:
40 Ein Helm, der nur von Elfen getragen werden kann:
41
42 inherit "std/armour.c";
43
44 #include <properties.h>
45
46 create()
47 {
48 ::create();
49
50 SetProp(P_ARMOUR_TYPE, AT_HELMET);
51 /* zig weitere SetProp's, um den Helm zu konfigurieren */
52
53 /* WearFunc() ist im Helm selbst zu finden */
54 SetProp(P_WEAR_FUNC, this_object());
55 }
56
57 int WearFunc(object me, int silent, object user)
58 {
59 if (user->QueryProp(P_RACE) == "Elf")
60 return 1; /* Elfen duerfen den Helm tragen */
61
62 /* Die anderen Rassen sollten zumindest erfahren koennen, wieso
63 sie den Helm nicht tragen koennen... */
64 if (!silent)
65 write( "Der Helm rutscht Dir immer ueber Deine runden "
66 +"Ohren.\n" );
67 return 0;
68 }
69
70 Gibt jetzt ein Nicht-Elf "trage helm" ein, so bekommt er die Meldung
71 "Der Helm rutscht Dir immer ueber Deine runden Ohren.", Elfen dagegen
72 passt das Teil wie angegossen.
73
74SIEHE AUCH:
75 P_WEAR_MSG, P_UNWEAR_MSG, P_WIELD_MSG, P_UNWIELD_MSG
76 DoWear(), DoUnwear(), InformUnwear(), InformWear()
77 /std/clothing/wear.c
78
79----------------------------------------------------------------------------
8002.02.2009, Zesstra