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