mol#4 this should be the entirety of #4. I suspect #3 too.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2655 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
Spoike 2007-09-10 19:27:39 +00:00
parent 3555ba42ce
commit 0c6e751778
2 changed files with 13 additions and 9 deletions

View File

@ -188,6 +188,10 @@ static void ParseServerData(sv_t *tv, netmsg_t *m, int to, unsigned int playerma
}
else
ConnectionData(tv, (void*)((char*)m->data+m->startpos), m->readpos - m->startpos, to, dem_read, QW);
if (tv->controller)
QW_ClearViewerState(tv->controller);
strcpy(tv->status, "Receiving soundlist\n");
}
@ -1086,7 +1090,7 @@ static void ParseUpdateUserinfo(sv_t *tv, netmsg_t *m, int to, unsigned int mask
}
}
Multicast(tv, (char*)m->data+m->startpos, m->readpos - m->startpos, to, mask, QW);
ConnectionData(tv, (char*)m->data+m->startpos, m->readpos - m->startpos, to, mask, QW);
}
static void ParsePacketloss(sv_t *tv, netmsg_t *m, int to, unsigned int mask)
@ -1118,7 +1122,7 @@ static void ParseUpdateEnterTime(sv_t *tv, netmsg_t *m, int to, unsigned int mas
else
Sys_Printf(tv->cluster, "svc_updateentertime: invalid player number\n");
Multicast(tv, (char*)m->data+m->startpos, m->readpos - m->startpos, to, mask, QW);
ConnectionData(tv, (char*)m->data+m->startpos, m->readpos - m->startpos, to, mask, QW);
}
static void ParseSound(sv_t *tv, netmsg_t *m, int to, unsigned int mask)

View File

@ -284,12 +284,6 @@ void BuildServerData(sv_t *tv, netmsg_t *msg, int servercount, viewer_t *viewer)
WriteString2(msg, tv->serverinfo);
WriteString(msg, "\"\n");
}
if (viewer)
{
//the quakeworld client will have flushed most of the information that it knows about things
//this is as good a place to flush our cache as any other
memset(viewer->currentstats, 0, sizeof(viewer->currentstats));
}
}
void BuildNQServerData(sv_t *tv, netmsg_t *msg, qboolean mvd, int playernum)
{
@ -362,6 +356,12 @@ void BuildNQServerData(sv_t *tv, netmsg_t *msg, qboolean mvd, int playernum)
}
}
void QW_ClearViewerState(viewer_t *viewer)
{
memset(viewer->currentstats, 0, sizeof(viewer->currentstats));
}
void SendServerData(sv_t *tv, viewer_t *viewer)
{
netmsg_t msg;
@ -387,7 +387,7 @@ void SendServerData(sv_t *tv, viewer_t *viewer)
if (tv && (tv->controller == viewer))
viewer->thinksitsconnected = true;
memset(viewer->currentstats, 0, sizeof(viewer->currentstats));
QW_ClearViewerState(viewer);
}
void SendNQSpawnInfoToViewer(cluster_t *cluster, viewer_t *viewer, netmsg_t *msg)