blob: e440ae1ddf0252f0b0b86687d985d3ed15162bc3 [file] [log] [blame]
Zesstra18626972017-01-31 10:38:27 +01001heart_beat()
2============
3
4FUNKTION
5--------
6::
7
8 protected void heart_beat();
9
10DEFINIERT IN
11------------
12::
13
14 /std/living/life.c
15 /std/living/combat.c
16 und anderen...
17 kann auch in beliebigen Objekten selbst definiert werden.
18
19BESCHREIBUNG
20------------
21::
22
23 Diese Funktion wird alle zwei Sekunden vom GameDriver aufgerufen. Sie
24 regelt in der MG-MudLib das Heilen von Spielern und Monstern, den
25 Ablauf von Kampfrunden, die Verdauung etc.
26
27 Da heart_beat() ziemlich viele Ressourcen des GameDrivers verbraet,
28 sollte man Objekte mit heart_beat() nur so selten wie moeglich
29 benutzen! Und selbst dann sollte der heart_beat() nicht die ganze Zeit
30 ueber laufen, sondern sich so bald wie moeglich abschalten.
31
32 Das Ein- und Ausschalten des heart_beat()s erfolgt mit
33 set_heart_beat().
34
35BEMERKUNGEN
36-----------
37::
38
39 1. Teuer, teuer, teuer!
40 2. Soll euer Viech pro "echtem" Heartbeat mehrere Kampfrunden haben,
41 benutzt dafuer SA_SPEED und ruft auf gar keinen Fall mehrfach
42 ::heart_beat() auf. Also _NICHT_
43 void heart_beat() {
44 ::heart_beat();
45 ::heart_beat(); }
46 sondern:
47 SetProp(P_SKILL_ATTRIBUTE_OFFSETS, ([SA_SPEED: 200]) );
48
49SIEHE AUCH
50----------
51::
52
53 Efuns: set_heart_beat(), absolute_hb_count(), set_next_reset()
54 Fehler: make_immortal(L)
55
56
5722.3.2008, Zesstra
58