Skip to content

Instantly share code, notes, and snippets.

View larsfu's full-sized avatar

Lars Funke larsfu

  • Technische Universität Dortmund
  • Dortmund
View GitHub Profile
$ bam all
[ 1/115] #1 network_header > src/game/generated/protocol.h
bam: 'src/game/generated/protocol.h' error 65280
bam: 'src/game/generated/protocol.h' removed because job updated it even it failed.
[ 2/115] #1 server_content_header > src/game/generated/server_data.h
bam: 'src/game/generated/server_data.h' error 65280
bam: 'src/game/generated/server_data.h' removed because job updated it even it failed.
[ 3/115] #1 client_content_header > src/game/generated/client_data.h
bam: 'src/game/generated/client_data.h' error 65280
bam: 'src/game/generated/client_data.h' removed because job updated it even it failed.
const char *CClient::DemoRecorder_Start(const char *pFilename)
{
if(State() != IClient::STATE_ONLINE)
dbg_msg("demorec/record", "client is not online");
else
{
char aFilename[512];
str_format(aFilename, sizeof(aFilename), "demos/%s.demo", pFilename);
m_DemoRecorder.Start(Storage(), aFilename, GameClient()->NetVersion(), m_aCurrentMap, m_CurrentMapCrc, "client");
}
if(!DemoRecorder()->IsRecording())
{
MainView.VSplitLeft(100.0f, &Button, &MainView);
MainView.VSplitLeft(150.0f, &Button, &MainView);
if(DoButton_Menu(&s_DemoButton, Localize("Record demo"), 0, &Button))
{
// find filename
char aFilename[128];
time_t Time;
void CClient::OnDemoPlayerSnapshot(void *pData, int Size)
{
// update ticks, they could have changed
const CDemoPlayer::CPlaybackInfo *pInfo = m_DemoPlayer.Info();
CSnapshotStorage::CHolder *pTemp;
m_CurGameTick = pInfo->m_Info.m_CurrentTick;
m_PrevGameTick = pInfo->m_PreviousTick;
// handle snapshots
pTemp = m_aSnapshots[SNAP_PREV];
(gdb) bt
#0 __memcpy_ssse3 () at ../sysdeps/i386/i686/multiarch/memcpy-ssse3.S:1281
#1 0x08087c15 in CClient::OnDemoPlayerSnapshot(void*, int) ()
#2 0x080548da in CMenus::RenderGame(CUIRect) ()
#3 0x0806e5ac in CMenus::Render() ()
#4 0x0806ebdd in CMenus::OnRender() ()
#5 0x080508d7 in CGameClient::OnRender() ()
#6 0x08089527 in CClient::Render() ()
#7 0x0808ba9d in CClient::Run() ()
#8 0x0808bf7e in main ()
if(!DemoRecorder()->IsRecording())
{
MainView.VSplitLeft(100.0f, &Button, &MainView);
MainView.VSplitLeft(150.0f, &Button, &MainView);
if(DoButton_Menu(&s_DemoButton, Localize("Record demo"), 0, &Button))
{
// find filename
char aFilename[128];
time_t Time;
$ bam all
[ 1/16] #1 c++ src/engine/shared/demorec.cpp
src/engine/demo.h: In constructor »CDemoRecorder::CDemoRecorder(CSnapshotDelta*)«:
src/engine/demo.h:32: Fehler: »IDemoRecorder::~IDemoRecorder()« ist privat
src/engine/shared/demorec.cpp:13: Fehler: in diesem Zusammenhang
In file included from src/engine/shared/demorec.cpp:5:
src/engine/demo.h: In destructor »virtual CDemoRecorder::~CDemoRecorder()«:
src/engine/demo.h:32: Fehler: »IDemoRecorder::~IDemoRecorder()« ist privat
src/engine/shared/demorec.h:17: Fehler: in diesem Zusammenhang
src/engine/shared/demorec.cpp: At global scope:
#ifndef ENGINE_SHARED_DEMOREC_H
#define ENGINE_SHARED_DEMOREC_H
#include <engine/demo.h>
#include "snapshot.h"
struct CDemoHeader
{
char m_aMarker[8];
char m_aNetversion[64];
#ifndef ENGINE_DEMO_H
#define ENGINE_DEMO_H
#include "kernel.h"
class IDemoPlayer : public IInterface
{
MACRO_INTERFACE("demoplayer", 0)
public:
class CInfo
diff --git a/src/game/client/component.h b/src/game/client/component.h
index 410be62..6e4b371 100755
--- a/src/game/client/component.h
+++ b/src/game/client/component.h
@@ -23,6 +23,7 @@ protected:
class CRenderTools *RenderTools() const { return m_pClient->RenderTools(); }
class IConsole *Console() const { return m_pClient->Console(); }
class IDemoPlayer *DemoPlayer() const { return m_pClient->DemoPlayer(); }
+ class IDemoRecorder *DemoRecorder() const { return m_pClient->DemoRecorder(); }
class IServerBrowser *ServerBrowser() const { return m_pClient->ServerBrowser(); }