about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlfred Eriksson <somerunce@gmail.com>2008-11-17 16:13:12 +0000
committerAlfred Eriksson <somerunce@gmail.com>2008-11-17 16:13:12 +0000
commit2e63ef3299b72111dfa3baebe0480c2e2d3066cf (patch)
tree6e7f641020017e28d3a6f078a6420c8196355d22
parent4b053322f3e40a5fbc2f73938b75a4a91c3469fa (diff)
downloadzcatch-2e63ef3299b72111dfa3baebe0480c2e2d3066cf.tar.gz
zcatch-2e63ef3299b72111dfa3baebe0480c2e2d3066cf.zip
stops recording when client switches state
-rw-r--r--src/engine/e_demorec.h12
-rw-r--r--src/game/client/gameclient.cpp4
2 files changed, 16 insertions, 0 deletions
diff --git a/src/engine/e_demorec.h b/src/engine/e_demorec.h
index bc54dddd..d73a5a3d 100644
--- a/src/engine/e_demorec.h
+++ b/src/engine/e_demorec.h
@@ -1,3 +1,10 @@
+/* copyright (c) 2007 magnus auvinen, see licence.txt for more info */
+#ifndef _DEMOREC_H
+#define _DEMOREC_H
+
+#ifdef __cplusplus
+extern "C"{
+#endif
 
 typedef struct DEMOREC_HEADER
 {
@@ -63,3 +70,8 @@ const DEMOREC_PLAYBACKINFO *demorec_playback_info();
 int demorec_isplaying();
 int demorec_playback_stop();
 
+#ifdef __cplusplus
+}
+#endif
+
+#endif
\ No newline at end of file
diff --git a/src/game/client/gameclient.cpp b/src/game/client/gameclient.cpp
index 74b949d7..11b26053 100644
--- a/src/game/client/gameclient.cpp
+++ b/src/game/client/gameclient.cpp
@@ -1,4 +1,5 @@
 #include <engine/e_client_interface.h>
+#include <engine/e_demorec.h>
 
 #include <game/generated/g_protocol.hpp>
 #include <game/generated/gc_data.hpp>
@@ -427,6 +428,9 @@ void GAMECLIENT::on_message(int msgtype)
 
 void GAMECLIENT::on_statechange(int new_state, int old_state)
 {
+	if(demorec_isrecording())
+		demorec_record_stop();
+
 	// reset everything
 	on_reset();