X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=sv_demo.c;h=cc94a2c05aa5d1e6d41b04031651060d41bdc77e;hb=5f6013df0acabebeb17602e8824f4e450d010d9f;hp=8f299395ff8a9152a7e1a8e1d8c7b2b0d46609a7;hpb=9e0b57e36ca8bb835c2f49901b4493b1f3b5625a;p=xonotic%2Fdarkplaces.git diff --git a/sv_demo.c b/sv_demo.c index 8f299395..cc94a2c0 100644 --- a/sv_demo.c +++ b/sv_demo.c @@ -5,6 +5,7 @@ extern cvar_t sv_autodemo_perclient_discardable; void SV_StartDemoRecording(client_t *client, const char *filename, int forcetrack) { + prvm_prog_t *prog = SVVM_prog; char name[MAX_QPATH]; if(client->sv_demo_file != NULL) @@ -16,7 +17,7 @@ void SV_StartDemoRecording(client_t *client, const char *filename, int forcetrac Con_Printf("Recording demo for # %d (%s) to %s\n", PRVM_NUM_FOR_EDICT(client->edict), client->netaddress, name); // Reset discardable flag for every new demo. - PRVM_EDICTFIELDFLOAT(client->edict, prog->fieldoffsets.discardabledemo) = 0; + PRVM_serveredictfloat(client->edict, discardabledemo) = 0; client->sv_demo_file = FS_OpenRealFile(name, "wb", false); if(!client->sv_demo_file) @@ -30,6 +31,7 @@ void SV_StartDemoRecording(client_t *client, const char *filename, int forcetrac void SV_WriteDemoMessage(client_t *client, sizebuf_t *sendbuffer, qboolean clienttoserver) { + prvm_prog_t *prog = SVVM_prog; int len, i; float f; int temp; @@ -44,7 +46,7 @@ void SV_WriteDemoMessage(client_t *client, sizebuf_t *sendbuffer, qboolean clien FS_Write(client->sv_demo_file, &len, 4); for(i = 0; i < 3; ++i) { - f = LittleFloat(client->edict->fields.server->v_angle[i]); + f = LittleFloat(PRVM_serveredictvector(client->edict, v_angle)[i]); FS_Write(client->sv_demo_file, &f, 4); } FS_Write(client->sv_demo_file, sendbuffer->data, sendbuffer->cursize); @@ -52,6 +54,7 @@ void SV_WriteDemoMessage(client_t *client, sizebuf_t *sendbuffer, qboolean clien void SV_StopDemoRecording(client_t *client) { + prvm_prog_t *prog = SVVM_prog; sizebuf_t buf; unsigned char bufdata[64]; @@ -64,7 +67,7 @@ void SV_StopDemoRecording(client_t *client) MSG_WriteByte(&buf, svc_disconnect); SV_WriteDemoMessage(client, &buf, false); - if (sv_autodemo_perclient_discardable.integer && PRVM_EDICTFIELDFLOAT(client->edict, prog->fieldoffsets.discardabledemo)) + if (sv_autodemo_perclient_discardable.integer && PRVM_serveredictfloat(client->edict, discardabledemo)) { FS_RemoveOnClose(client->sv_demo_file); Con_Printf("Stopped recording discardable demo for # %d (%s)\n", PRVM_NUM_FOR_EDICT(client->edict), client->netaddress);