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