blob: 85d576d71fee18960bb0da7bb8de57fb9a2d4e75 [file] [log] [blame]
Zesstra18626972017-01-31 10:38:27 +01001pick()
2======
3
4FUNKTION
5--------
6::
7
8 public varargs int pick(object o, mixed msg);
9
10DEFINIERT IN
11------------
12::
13
14 /std/living/put_and_get.c
15
16ARGUMENTE
17---------
18::
19
20 object o
21 Das Objekt, das aufgehoben werden soll.
22 mixed msg
23 Eine optionale Meldung, die anstelle von P_PICK_MSG oder der
24 Standardmeldung verwendet wird, oder -1, um die Meldung zu
25 unterdruecken.
26
27BESCHREIBUNG
28------------
29::
30
31 Der Spieler oder NPC nimmt das Objekt auf. Gibt o->move() keinen positiven
32 Wert zurueck, beispielsweise weil das Objekt zu schwer ist oder nicht
33 genommen werden darf, bekommt er eine entsprechende Fehlermeldung.
34
35RUECKGABEWERT
36-------------
37::
38
39 Wenn das Aufnehmen geklappt hat, 1, ansonsten 0.
40
41BEMERKUNG
42---------
43::
44
45 Diese Funktion ist dann sinnvoll, wenn man den Spieler ein Objekt
46 aufnehmen lassen und sich nicht selbst um die Fehlerbehandlung kuemmern
47 moechte - und da unzaehlige verschiedene Dinge schiefgehen koennen und
48 manche Objekte eigene Fehlermeldungen definieren, eigentlich immer.
49
50 Die Funktion prueft nicht, ob sich das Objekt ueberhaupt in der Reichweite
51 des Spielers/NPC befindet, das muss man ggf. selbst ermitteln.
52
53BEISPIEL
54--------
55::
56
57 ob = clone_object(WEINGUMMI);
58
59 if (this_player()->pick(ob, ({ "Du nimmst @WENU2 aus dem Regal.",
60 "@WER1 nimmt @WENU2 aus dem Regal." })))
61 weingummi--;
62 else
63 ob->remove();
64
65SIEHE AUCH
66----------
67::
68
69 move(L), P_PICK_MSG, pick_objects(L), P_NOINSERT_MSG, P_NOLEAVE_MSG,
70 P_TOO_MANY_MSG, P_TOO_HEAVY_MSG, P_ENV_TOO_HEAVY_MSG, P_NOGET
71
72
73Last modified: Thu Aug 28 22:21:41 2008 by Amynthor
74