buffer_hp() =========== 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() #define BS(x) break_string(x, 78) int heilung=1; protected void create() { ::create(); SetProp(P_NAME,"Heilpflanze"); ... AddCmd("iss&@ID", "eat", "WAS willst Du essen?"); } int eat(string str) { if ( TP->eat_food(25) ) { TP->buffer_hp(20,5); TP->buffer_sp(80,10); heilung--; tell_object(this_player(), BS("Du fuehlst langsam, wie Deine Kraefte " "zurueckkehren.")); } // Wenn der Spieler nichts mehr essen kann, wird die Meldung von // eat_food() erzeugt. return 1; } void 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-KP-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