sys_record(STRING* name,var mode)
sys_replay(STRING* name)
Zeichnet die Usereingabe in einer Datei im savedir-Ordner
auf oder gibt sie von dort wieder. Dies lässt sich zum Aufnehmen oder
zur Wiedergabe eines
Demos verwenden.
Parameter:
name |
Name der aufzunehmenden bzw. wiederzugebenden Datei oder NULL,
um Aufnahme oder Wiedergabe zu stoppen. |
mode |
0 - nimmt nur Keys und Mausknöpfe auf
(Dateigröße ca. 1 kb/sec).
1 -
nimmt Keys und Mausbewegungen sowie Knöpfe auf (ca.
3 kb/sec).
3 - nimmt Keys, Maus- und Joystikbewegungen sowie Knöpfe
auf (ca.
10 kb/sec).
|
Rückgabewerte:
>
0
- Operation erfolgreich, <=
0
- Operation fehlgeschlagen.
Geschwindigkeit:
Mittel
Bemerkungen:
- Beim
Aufzeichnen einer Demo mit sys_record() und sys_replay() zur
Laufzeit, führen Sie bitte vor dem Starten der Demo eine game_save() / game_load() Anweisung
durch, damit die Demo auch von derselben Position im Level aus startet.
- [Ctrl-Alt-Esc] stoppt Aufnahme und Wiedergabe
(nur Entwicklerversion)
- Die Kommandozeilenoptionen -rec und -rpl sorgen
für eine automatische Aufzeichnung respektive Wiedergabe sämtlicher Tastatur-
und Mauseingaben vom Anfang der Datei tape.rec an(nur Entwicklerversion).
Joystickbewegungen und Knöpfe werden nicht aufgenommen. Dies lässt sich zu
Debuggingzwecken zum Reproduzieren einer bestimmten Bewegungssequenz verwenden.
- Während der Wiedergabe wird die Anwendung immer noch auf Tasten- oder Mausknopfdruck
reagieren, nicht jedoch auf Maus- oder Joystickbewegungen.
- Zur präzisen Reproduktion von Bewegungen werden auch die Variablen time_step und time_frame aufgezeichnet.
Beispiel:
// Record a demo from the current position
game_save("record",0,SV_ALL-SV_INFO);
wait(1);
sys_record("record.rec",1);
...
game_load("record",0);
wait(1);
sys_replay("record.rec");
Siehe auch:
game_save, game_load, savedir, record_mode
► Aktuelle Version Online