blob: 7c607e448bd10cf9f0521724d0aba6ba4308d2b6 [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001
MG Mud User88f12472016-06-24 23:31:02 +02002WieldFunc()
Zesstra953f9972017-02-18 15:37:36 +01003***********
MG Mud User88f12472016-06-24 23:31:02 +02004
MG Mud User88f12472016-06-24 23:31:02 +02005
Zesstra953f9972017-02-18 15:37:36 +01006FUNKTION
7========
MG Mud User88f12472016-06-24 23:31:02 +02008
Zesstra953f9972017-02-18 15:37:36 +01009 int WieldFunc(object weapon, int silent, object user);
MG Mud User88f12472016-06-24 23:31:02 +020010
MG Mud User88f12472016-06-24 23:31:02 +020011
Zesstra953f9972017-02-18 15:37:36 +010012DEFINIERT IN
13============
MG Mud User88f12472016-06-24 23:31:02 +020014
Zesstra953f9972017-02-18 15:37:36 +010015 eigenen Objekten (fuer /std/weapon/combat)
MG Mud User88f12472016-06-24 23:31:02 +020016
MG Mud User88f12472016-06-24 23:31:02 +020017
Zesstra953f9972017-02-18 15:37:36 +010018ARGUMENTE
19=========
MG Mud User88f12472016-06-24 23:31:02 +020020
Zesstra953f9972017-02-18 15:37:36 +010021 weapon (object)
22 Die Waffe, die gezueckt werden soll.
23 silent (int)
24 Ob dabei eine Meldung ausgegeben werden soll.
25 user (object)
26 Das Lebewesen, welches die Waffe zuecken will.
MG Mud User88f12472016-06-24 23:31:02 +020027
MG Mud User88f12472016-06-24 23:31:02 +020028
Zesstra953f9972017-02-18 15:37:36 +010029BESCHREIBUNG
30============
MG Mud User88f12472016-06-24 23:31:02 +020031
Zesstra953f9972017-02-18 15:37:36 +010032 In dieser Funktion kann man zusaetzliche Abfragen vornehmen, ob sich
33 die Waffe <weapon> von <user> zuecken laesst oder nicht.
MG Mud User88f12472016-06-24 23:31:02 +020034
MG Mud User88f12472016-06-24 23:31:02 +020035
Zesstra953f9972017-02-18 15:37:36 +010036RUeCKGABEWERT
37=============
MG Mud User88f12472016-06-24 23:31:02 +020038
Zesstra953f9972017-02-18 15:37:36 +010039 0, wenn die Waffe nicht gezueckt werden kann, sonst ungleich 0.
MG Mud User88f12472016-06-24 23:31:02 +020040
MG Mud User88f12472016-06-24 23:31:02 +020041
Zesstra953f9972017-02-18 15:37:36 +010042BEMERKUNGEN
43===========
44
45 Selbst wenn man einen Wert ungleich Null zurueckgibt, ist das noch
46 keine Garantie, dass sich die Waffe auch wirklich zuecken laesst! Der
47 Spieler koennte zum Beispiel noch eine Waffe gezueckt haben, die sich
48 nicht wegstecken laesst, etc.
49 Wenn ihr sicher sein wollt, dass der Spieler ein Objekt gezueckt hat,
50 benutzt bitte InformWield().
51 Bitte nicht drauf verlassen, dass this_player() das Lebewesen ist,
52 welches die Waffe zuecke will.
53 Die Reihenfolge der Argumente ist etwas unschoen, aber leider wurde <user>
54 erheblich spaeter hinzugefuegt und es war unmoeglich, einige hundert
55 Objekte zu aendern.
56
57
58BEISPIELE
59=========
60
61 Eine Waffe, die sich nicht von Zwergen zuecken laesst:
62
63 inherit "std/weapon";
64
65 #include <properties.h>
66 #include <combat.h>
67
68 create()
69 {
70 ::create();
71
72 ... /* zig SetProp's, um die Waffe zu konfigurieren */
73
74 /* WieldFunc() ist in der Waffe selbst zu finden */
75 SetProp(P_WIELD_FUNC, this_object());
76 }
77
78 int WieldFunc(object weapon, int silent, object user)
79 {
80 /* Nicht-Zwerge duerfen die Waffe zuecken */
81 if (user->QueryProp(P_RACE) != "Zwerg")
82 return 1;
83
84 /* Ansonsten sagen wir evtl., warum das Zuecken nicht klappt... */
85 if (!silent)
86 write( "Deine kleinen Haendchen koennen den Griff nicht "+
87 "umklammern.\n");
88
89 /* ...und brechen das Zuecken ab. */
90 return 0;
91 }
92
93
94SIEHE AUCH
95==========
96
97 P_WIELD_MSG, P_UNWIELD_MSG, P_WEAR_MSG, P_UNWEAR_MSG
98 DoWield(), DoUnwield(), InformUnwield(), InformWield()
99 UnwieldFunc, WieldFunc
100 /std/weapon/combat.c
101
MG Mud User88f12472016-06-24 23:31:02 +020010202.02.2009, Zesstra