blob: c3e7b1bd9d43e264a0aca829ff1326b91077297a [file] [log] [blame]
FUNKTION:
int buffer_hp( int val, int rate );
DEFINIERT IN:
/std/living/life.c
ARGUMENTE:
val: Gesamte Heilung.
rate: LP-Rate.
BESCHREIBUNG:
Erhoeht die LP eines Spielers automatisch insgesamt um den Wert "val".
Pro heart_beat() wird ihm dabei der Wert "rate" zugefuehrt.
Sollen neben P_HP noch weitere Props manipuliert werden - bspw. zur
P_FOOD - bietet sich die Funktion consume() an.
RUECKGABEWERTE:
Der getankte Wert pro heart_beat().
BEMERKUNG:
Sollte von jeder tragbaren Heilung genutzt werden, welche den Spieler
darauf schliessen lassen kann, auf natuerlichem und nichtmagischem Weg
(Essen, Trinken) geheilt worden zu sein.
BEISPIEL:
#define TP this_player()
...
int heilung=1;
...
create()
{
::create();
SetProp(P_NAME,"Heilpflanze");
...
AddCmd("iss","eat");
}
int eat(string str)
{
notify_fail("WAS willst Du essen?\n");
if ( !str || !id(str) )
return 0;
...
if ( !TP->eat_food(25) )
return 1;
TP->buffer_hp(20,5);
TP->buffer_sp(80,10);
heilung--;
write(BS("Du fuehlst langsam, wie Deine Kraefte zurueckkehren."));
return 1;
}
reset()
{
heilung=1;
::reset();
}
Es wird durch eat_food getestet, ob der Spieler noch genuegend essen kann.
Wenn ja, kriegt unser Held die 25 automatisch oben drauf und ausserdem
20 LP in 5-LP-Schritten und 80 KP in 10-LP-Schritten gutgeschrieben.
SIEHE AUCH:
Aehnlich: heal_self, restore_spell_points, restore_hit_points,
buffer_sp
Tanken: consume, drink_alcohol, drink_soft, eat_food
Props: P_SP, P_HP,
Konzepte: heilung
9. August 2015 Gloinson