blob: 3c62c13438a3d135f7eb462beb949a110893c1e5 [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001/*
2Beispiel fuer ein tragbares Getraenk in einer Flasche.
3*/
4
5#include <food.h>
6
7inherit "/std/food";
8
9string _query_long() {
10 string m = "Du siehst eine Glasflasche,";
11 if (is_not_empty()) {
12 m += " in der sich Wasser befindet.";
13 if (!is_bad())
14 m += " Es ist glasklar und sieht irgendwie verlockend aus.";
15 else
16 m += " Es ist truebe und sieht nicht gerade verlockend aus.";
17
18 m += " Die Flasche ist ";
19 switch (to_int((QueryProp(P_PORTIONS)-1)/2.5)) {
20 case 0:
21 m += "fast leer.";
22 break;
23 case 1:
24 m += "halb voll.";
25 break;
26 case 2:
27 m += "fast voll.";
28 break;
29 case 3:
30 m += "voll.";
31 break;
32 default:
33 m += "nicht leer.";
34 }
35 } else {
36 m += " in der frueher mal Wasser war.";
37 }
38 return break_string(m);
39}
40
41void create() {
42 if (!clonep(this_object())) {
43 set_next_reset(-1);
44 return;
45 }
46 ::create();
47
48 SetProp(P_SHORT,"Eine Flasche mit Wasser");
49 SetProp(P_NAME, "Wasserflasche");
50 SetProp(P_GENDER,FEMALE);
51 SetProp(P_VALUE,5); // pro Portion (ohne Flasche)
52 SetProp(P_WEIGHT,50); // pro Portion (ohne Flasche)
53 SetProp(P_PORTIONS,10);
54 SetProp(P_DESTROY_BAD,0); // verdorbenes Wasser wird nicht zerstoert
55 SetProp(P_CONSUME_MSG,
56 "@WER2 trinkt aus einer Flasche. Wasser laeuft ueber @WENQPPNS2 Kinn.");
57 SetProp(P_EATER_MSG,
58 "Du trinkst Wasser aus der Flasche. Etwas laeuft Dir ueber das Kinn.");
59 SetProp(P_BAD_MSG,
60 "Das Wasser in der Flasche wird truebe.");
61
62 SetProp(P_MATERIAL,([MAT_GLASS:15, MAT_WATER:85]));
63
64 SetProp(P_EMPTY_PROPS, ([
65 P_SHORT:"Eine leere Flasche",
66 P_NAME:"Flasche",
67 P_EMPTY_IDS:({"flasche"}),
68 P_EMPTY_ADJ:({"leere","leeren"}),
69 P_MATERIAL:([MAT_GLASS:100]),
70 P_VALUE:5, // Wert der Flasche ohne Wasser
71 P_WEIGHT:20 // Gewicht der Flasche ohne Wasser
72 ]));
73
74 SetProp(P_RESET_LIFETIME,3); // 3 Resets, ehe das Wasser truebe wird
75 SetProp(P_DRINK,50); // Fuellgrad pro Schluck
76 SetProp(P_DISTRIBUTION,10); // Punkte Heilung pro Heartbeat
77 SetProp(P_HP,30); // pro Schluck
78 SetProp(P_SP,30); // pro Schluck
79
80 AddId(({"flasche","wasserflasche","wasser"}));
81 AddAdjective(({"volle","vollen"}));
82
83}
84
85// parent methode immer aufrufen und pruefen!!
86void make_bad() {
87 if (!::make_bad() && is_not_empty()) {
88 // die Trinkmeldung aendern wir mal
89 SetProp(P_EATER_MSG,"Du trinkst truebes Wasser aus der Flasche. "
90 "Das war wohl nicht so gut. Dir wird ganz uebel!");
91 }
92}