]> git.rm.cloudns.org Git - xonotic/darkplaces.git/commit
Initial commit of protocol redesign
authorCloudwalk <cloudwalk009@gmail.com>
Tue, 22 Sep 2020 02:34:48 +0000 (22:34 -0400)
committerCloudwalk <cloudwalk009@gmail.com>
Tue, 22 Sep 2020 02:34:48 +0000 (22:34 -0400)
commitb47c683dbb0d68853ae23581df5e132c2eb689ba
treeaef3e731adc9eee8ad3d229431014087136e15ac
parent990b038c1e59e173b230550a5fc419e3c5212664
Initial commit of protocol redesign

The Quake protocol family is now implemented on a per-struct basis
using the new protocol_t struct. It's a container for protocol info such
as name, number, and soon max edicts, max models, max frames, max
sounds, etc. For now, it also contains function pointers to MSG_
functions.

The MSG_ functions (specifically the Read and WriteCoord, Angle, Vector
functions have been made generic, and these function pointers point to
them instead of using protocol-based branching.

The protocol net messages themselves are now a jump table, not unlike
the QC builtins interface. This will make things cleaner and scalable
for implementing Quake protocols that might be dramatically different
from NQ and QW.
44 files changed:
cl_cmd.c
cl_demo.c
cl_ents.c
cl_ents5.c
cl_ents_nq.c
cl_ents_qw.c
cl_input.c
cl_main.c
cl_parse.c
cl_parse.h [new file with mode: 0644]
cl_particles.c
cl_protocol_basenq.h [new file with mode: 0644]
cl_protocol_baseqw.h [new file with mode: 0644]
cl_protocol_dpp7.c [new file with mode: 0644]
cl_protocol_ext.h [new file with mode: 0644]
cl_protocol_nq.c [new file with mode: 0644]
cl_protocol_qw.c [new file with mode: 0644]
cl_screen.c
client.h
clvm_cmds.c
com_msg.c
common.h
csprogs.c
gl_rmain.c
makefile.inc
mvm_cmds.c
netconn.c
netconn.h
protocol.c
protocol.h
sbar.c
server.h
snd_main.c
sv_ccmds.c
sv_ents.c
sv_ents5.c
sv_ents_nq.c
sv_main.c
sv_protocol.c [new file with mode: 0644]
sv_protocol_base.h [new file with mode: 0644]
sv_user.c
sv_user.h [new file with mode: 0644]
svvm_cmds.c
view.c