/** * Read all incoming data from the server */ int CL_ReadFromServer(void) { int ret; cl.oldtime = cl.time; cl.time += host_frametime; do { ret = CL_GetMessage(); if (ret == -1) Host_Error("CL_ReadFromServer: lost server connection"); if (!ret) break; cl.last_received_message = realtime; CL_ParseServerMessage(); } while (ret && cls.state == ca_connected); if (cl_shownet.getBool()) Con_Printf("\n"); CL_RelinkEntities(); CL_UpdateTEnts(); // bring the links up to date return 0; }
/* =============== CL_EmitEntities Builds the visedicts array for cl.time Made up of: clients, packet_entities, nails, and tents =============== */ void CL_EmitEntities (void) { if (cls.state != ca_active) return; if (!cl.validsequence) return; cl_oldnumvisedicts = cl_numvisedicts; cl_oldvisedicts = cl_visedicts_list[(cls.netchan.incoming_sequence-1)&1]; cl_visedicts = cl_visedicts_list[cls.netchan.incoming_sequence&1]; cl_numvisedicts = 0; CL_LinkPlayers (); CL_LinkPacketEntities (); CL_LinkProjectiles (); CL_UpdateTEnts (); }
/* =============== CL_EmitEntities Builds the visedicts array for cl.time Made up of: clients, packet_entities, nails, and tents =============== */ void CL_EmitEntities(physent_stack_t *pestack) { int i; if (cls.state != ca_active) return; if (!cl.validsequence) return; for (i = 0; i < cl_numvisedicts; i++) { saved_visedicts[i].keynum = cl_visedicts[i].keynum; VectorCopy(cl_visedicts[i].origin, saved_visedicts[i].origin); } num_saved_visedicts = cl_numvisedicts; cl_numvisedicts = 0; CL_LinkPlayers(pestack); CL_LinkPacketEntities(); CL_LinkProjectiles(); CL_UpdateTEnts(); }