blob: 181751cc2a51684d8f6421e9cc8ffbd000212cf7 [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001
2buffer_hp()
3***********
4
5
6FUNKTION
7========
8
9 int buffer_hp( int val, int rate );
10
11
12DEFINIERT IN
13============
14
15 /std/living/life.c
16
17
18ARGUMENTE
19=========
20
21 val: Gesamte Heilung.
22 rate: LP-Rate.
23
24
25BESCHREIBUNG
26============
27
28 Erhoeht die LP eines Spielers automatisch insgesamt um den Wert "val".
29 Pro heart_beat() wird ihm dabei der Wert "rate" zugefuehrt.
30 Sollen neben P_HP noch weitere Props manipuliert werden - bspw. zur
31 P_FOOD - bietet sich die Funktion consume() an.
32
33
34RUECKGABEWERTE
35==============
36
37 Der getankte Wert pro heart_beat().
38
39
40BEMERKUNG
41=========
42
43 Sollte von jeder tragbaren Heilung genutzt werden, welche den Spieler
44 darauf schliessen lassen kann, auf natuerlichem und nichtmagischem Weg
45 (Essen, Trinken) geheilt worden zu sein.
46
47
48BEISPIEL
49========
50
51 #define TP this_player()
52 ...
53
54 int heilung=1;
55 ...
56
57 create()
58 {
59 ::create();
60 SetProp(P_NAME,"Heilpflanze");
61 ...
62
63 AddCmd("iss","eat");
64 }
65
66 int eat(string str)
67 {
68 notify_fail("WAS willst Du essen?\n");
69 if ( !str || !id(str) )
70 return 0;
71 ...
72
73 if ( !TP->eat_food(25) )
74 return 1;
75
76 TP->buffer_hp(20,5);
77 TP->buffer_sp(80,10);
78 heilung--;
79 write(BS("Du fuehlst langsam, wie Deine Kraefte zurueckkehren."));
80
81 return 1;
82 }
83
84 reset()
85 {
86 heilung=1;
87 ::reset();
88 }
89
90 Es wird durch eat_food getestet, ob der Spieler noch genuegend essen kann.
91 Wenn ja, kriegt unser Held die 25 automatisch oben drauf und ausserdem
92 20 LP in 5-LP-Schritten und 80 KP in 10-LP-Schritten gutgeschrieben.
93
94
95SIEHE AUCH
96==========
97
98 Aehnlich: heal_self, restore_spell_points, restore_hit_points,
99 buffer_sp
100 Tanken: consume, drink_alcohol, drink_soft, eat_food
101 Props: P_SP, P_HP,
102 Konzepte: heilung
103
1049. August 2015 Gloinson