41 qboolean allowoverflow;
51void MSG_Init (msg_t *buf,
byte *data,
size_t length);
52void MSG_InitOOB( msg_t *buf,
byte *data,
size_t length );
53void MSG_Clear (msg_t *buf);
54void MSG_WriteData (msg_t *buf,
const void *data,
size_t length);
55void MSG_Bitstream(msg_t* buf);
56qboolean MSG_IsProtocolVersion15();
62void MSG_Copy(msg_t *buf,
byte *data,
int length, msg_t *src);
68void MSG_WriteBits( msg_t *msg,
int value,
int bits );
70void MSG_WriteChar (msg_t *sb,
int c);
71void MSG_WriteByte (msg_t *sb,
int c);
72void MSG_WriteShort (msg_t *sb,
int c);
74void MSG_WriteSVC( msg_t *sb,
int c );
76void MSG_WriteLong (msg_t *sb,
int c);
77void MSG_WriteFloat (msg_t *sb,
float f);
78void MSG_WriteString (msg_t *sb,
const char *s);
79void MSG_WriteBigString (msg_t *sb,
const char *s);
80void MSG_WriteScrambledString(msg_t* sb,
const char* s);
81void MSG_WriteScrambledBigString(msg_t* sb,
const char* s);
82void MSG_WriteAngle16 (msg_t *sb,
float f);
83int MSG_HashKey(
const char *
string,
int maxlen);
84void MSG_WriteEntityNum(msg_t* sb,
short number);
86void MSG_BeginReading (msg_t *sb);
87void MSG_BeginReadingOOB(msg_t *sb);
89int MSG_ReadBits( msg_t *msg,
int bits );
91int MSG_ReadChar (msg_t *sb);
92int MSG_ReadByte (msg_t *sb);
93int MSG_ReadSVC (msg_t *sb);
94int MSG_ReadShort (msg_t *sb);
95int MSG_ReadLong (msg_t *sb);
97void MSG_ReadDir( msg_t *msg, vec3_t dir );
98float MSG_ReadCoord( msg_t *msg );
99void MSG_GetNullEntityState(entityState_t *nullState);
101float MSG_ReadFloat (msg_t *sb);
102char *MSG_ReadString (msg_t *sb);
103char *MSG_ReadBigString (msg_t *sb);
104char *MSG_ReadStringLine( msg_t *sb );
105char* MSG_ReadScrambledString(msg_t* msg);
106char* MSG_ReadScrambledBigString(msg_t* msg);
107float MSG_ReadAngle8( msg_t *sb );
108float MSG_ReadAngle16 (msg_t *sb);
109void MSG_ReadData (msg_t *sb,
void *buffer,
int size);
110unsigned short MSG_ReadEntityNum(msg_t* sb);
113void MSG_WriteDeltaUsercmd( msg_t *msg,
struct usercmd_s *from,
struct usercmd_s *to );
116void MSG_WriteDeltaUsercmdKey( msg_t *msg,
int key, usercmd_t *from, usercmd_t *to );
117void MSG_ReadDeltaUsercmdKey( msg_t *msg,
int key, usercmd_t *from, usercmd_t *to );
120 , qboolean force,
float frameTime);
122void MSG_ReadSounds (msg_t *msg, server_sound_t *sounds,
int *snapshot_number_of_sounds);
123void MSG_WriteSounds (msg_t *msg, server_sound_t *sounds,
int snapshot_number_of_sounds);
125void MSG_ReadDeltaEyeInfo(msg_t *msg, usereyes_t *from, usereyes_t *to);
127void MSG_ReadDeltaEntity(msg_t* msg, entityState_t* from, entityState_t* to,
128 int number,
float frameTime);
130void MSG_WriteDeltaEyeInfo (msg_t *msg, usereyes_t *from, usereyes_t *to);
135float MSG_ReadServerFrameTime(msg_t* msg,
gameState_t* gameState);
136void MSG_WriteServerFrameTime(msg_t* msg,
float value);
138void MSG_ReportChangeVectors_f(
void );
144int MSG_PackAngle(
float angle,
int bits);
145int MSG_PackAnimTime(
float time,
int bits);
146int MSG_PackAnimWeight(
float weight,
int bits);
147int MSG_PackScale(
float scale,
int bits);
148int MSG_PackAlpha(
float alpha,
int bits);
149int MSG_PackCoord(
float coord);
150int MSG_PackCoordExtra(
float coord);
151qboolean MSG_DeltaNeeded(
const void* fromField,
const void* toField,
int fieldType,
int bits,
int size);
153void MSG_WritePackedAngle(msg_t* msg,
float value,
int bits);
154void MSG_WritePackedAnimTime(msg_t* msg,
float fromValue,
float toValue,
float frameTime,
int bits);
155void MSG_WritePackedAnimWeight(msg_t* msg,
float value,
int bits);
156void MSG_WritePackedScale(msg_t* msg,
float value,
int bits);
157void MSG_WritePackedAlpha(msg_t* msg,
float value,
int bits);
158void MSG_WritePackedCoord(msg_t* msg,
float fromValue,
float toValue,
int bits);
159void MSG_WritePackedCoordExtra(msg_t* msg,
float fromValue,
float toValue,
int bits);
160void MSG_WritePackedVelocity(msg_t* msg,
float value,
int bits);
161void MSG_WritePackedSimple(msg_t* msg,
int value,
int bits);
163float MSG_UnpackAngle(
int value,
int bits);
164float MSG_UnpackAnimTime(
int packed);
165float MSG_UnpackAnimWeight(
int result,
int bits);
166float MSG_UnpackScale(
int packed);
167float MSG_UnpackAlpha(
int packed,
int bits);
168float MSG_UnpackCoord(
int packed,
int bits);
169float MSG_UnpackCoordExtra(
int packed,
int bits);
181#define NET_ENABLEV4 0x01
182#define NET_ENABLEV6 0x02
184#define NET_PRIOV6 0x04
186#define NET_DISABLEMCAST 0x08
188#define PACKET_BACKUP 32
190#define PACKET_MASK (PACKET_BACKUP-1)
192#define MAX_PACKET_USERCMDS 32
196#define MAX_RELIABLE_COMMANDS 512
217#define NET_ADDRSTRMAXLEN 48
226 unsigned long scope_id;
229void NET_Init(
void );
230void NET_Shutdown(
void );
231void NET_Restart_f(
void );
232void NET_Config( qboolean enableNetworking );
233void NET_FlushPacketQueue(
void);
234void NET_SendPacket (netsrc_t sock,
size_t length,
const void *data,
netadr_t to);
235void QDECL NET_OutOfBandPrint( netsrc_t net_socket,
netadr_t adr,
const char *format, ...) Q_PRINTF_FUNC(3, 4);
236void QDECL NET_OutOfBandData( netsrc_t sock,
netadr_t adr,
byte *format,
int len );
241qboolean NET_IsLocalAddress (
netadr_t adr);
242const
char *NET_AdrToString (
netadr_t a);
243const
char *NET_AdrToStringwPort (
netadr_t a);
244int NET_StringToAdr ( const
char *s,
netadr_t *a, netadrtype_t family);
245qboolean NET_GetLoopPacket (netsrc_t sock,
netadr_t *net_from, msg_t *net_message);
246void NET_JoinMulticast6(
void);
247void NET_LeaveMulticast6(
void);
248void NET_Sleep(
int msec);
251#define MAX_MSGLEN 49152
254#define MAX_DOWNLOAD_WINDOW 48
256#define MAX_DOWNLOAD_BLKSIZE 1024
258#define NETCHAN_GENCHECKSUM(challenge, sequence) ((challenge) ^ ((sequence) * (challenge)))
274 int incomingSequence;
275 int outgoingSequence;
278 int fragmentSequence;
280 byte fragmentBuffer[MAX_MSGLEN];
284 qboolean unsentFragments;
285 size_t unsentFragmentStart;
287 byte unsentBuffer[MAX_MSGLEN];
293#ifdef LEGACY_PROTOCOL
302#define NETPROF_PACKET_FRAGMENTED 1
303#define NETPROF_PACKET_DROPPED 2
304#define NETPROF_PACKET_MESSAGE 4
306#define NETPROX_MAX_PACKETS 64
321 int lowestUpdateTime;
322 int highestUpdateTime;
329 int numConnectionLess;
330 int totalBytesConnectionLess;
337 int percentFragmented;
339 int percentConnectionLess;
345 qboolean initialized;
351void Netchan_Init(
int qport );
352void Netchan_Setup(netsrc_t sock,
netchan_t *chan,
netadr_t adr,
int qport,
int challenge, qboolean compat);
371#define PROTOCOL_VERSION 17
372#define PROTOCOL_LEGACY_VERSION PROTOCOL_VERSION
377extern int demo_protocols[];
381#define UPDATE_SERVER_NAME "updatemoh.2015.com"
383#ifndef MASTER_SERVER_NAME
384#define MASTER_SERVER_NAME "master.2015.com"
386#ifndef AUTHORIZE_SERVER_NAME
387#define AUTHORIZE_SERVER_NAME "authorize.2015.com"
390#define PORT_MASTER 27950
391#define PORT_UPDATE 27951
392#ifndef PORT_AUTHORIZE
393#define PORT_AUTHORIZE 27952
395#define PORT_SERVER 12203
396#define NUM_SERVER_PORTS 4
448typedef struct vm_s vm_t;
466 TRAP_PERPENDICULARVECTOR,
474typedef intptr_t (QDECL *vmMainProc)(
int callNum,
int arg0,
int arg1,
int arg2,
int arg3,
int arg4,
int arg5,
int arg6,
int arg7,
int arg8,
int arg9,
int arg10,
int arg11);
477vm_t *VM_Create(
const char *module, intptr_t (*systemCalls)(intptr_t *),
478 vmInterpret_t interpret );
481void VM_Free( vm_t *vm );
483void VM_Forced_Unload_Start(
void);
484void VM_Forced_Unload_Done(
void);
485vm_t *VM_Restart(vm_t *vm, qboolean unpure);
487intptr_t QDECL VM_Call( vm_t *vm,
int callNum, ... );
489void VM_Debug(
int level );
491void *VM_ArgPtr( intptr_t intValue );
492void *VM_ExplicitArgPtr( vm_t *vm, intptr_t intValue );
494#define VMA(x) VM_ArgPtr(args[x])
495static ID_INLINE
float _vmf(intptr_t x)
501#define VMF(x) _vmf(args[x])
522void Cbuf_Init (
void);
525void Cbuf_AddText(
const char *text );
528void Cbuf_ExecuteText(
int exec_when,
const char *text );
531void Cbuf_Execute (
int msec);
537void Cmd_WriteAliases( fileHandle_t f );
548typedef void (*xcommand_t) (void);
552void Cmd_AddCommand(
const char *cmd_name, xcommand_t function );
559void Cmd_RemoveCommand(
const char *cmd_name );
561typedef void (*completionFunc_t)(
const char *args,
int argNum );
564void Cmd_RemoveCommandSafe(
const char *cmd_name );
566void Cmd_CommandCompletion(
void(*callback)(
const char *s) );
568void Cmd_SetCommandCompletionFunc(
const char *command,
569 completionFunc_t complete );
570void Cmd_CompleteArgument(
const char *command,
char *args,
int argNum );
571void Cmd_CompleteCfgName(
const char *args,
int argNum );
572void Cmd_CommandCompletion(
void(*callback)(
const char *s) );
573const char* Cmd_CompleteCommandByNumber(
const char* partial,
int number);
577char *Cmd_Argv (
int arg);
578void Cmd_ArgvBuffer(
int arg,
char *buffer,
int bufferLength );
579char *Cmd_Args (
void);
580char *Cmd_ArgsFrom(
int arg );
581void Cmd_ArgsBuffer(
char *buffer,
int bufferLength );
583void Cmd_Args_Sanitize(
void );
588void Cmd_TokenizeString(
const char *text );
589void Cmd_TokenizeStringIgnoreQuotes(
const char *text_in );
593void Cmd_ExecuteString(
const char *text );
626void Cvar_SetDefault( cvar_t *var,
const char *var_value );
628cvar_t *Cvar_Get(
const char *var_name,
const char *value,
int flags );
634void Cvar_Register(
vmCvar_t *vmCvar,
const char *varName,
const char *defaultValue,
int flags );
637void Cvar_Update(
vmCvar_t *vmCvar );
640void Cvar_Set(
const char *var_name,
const char *value );
643cvar_t *Cvar_Set2(
const char *var_name,
const char *value, qboolean force );
647cvar_t *Cvar_Next( cvar_t *var );
650void Cvar_SetLatched(
const char *var_name,
const char *value);
653void Cvar_SetValue(
const char *var_name,
float value );
656cvar_t *Cvar_FindVar(
const char *var_name );
657float Cvar_VariableValue(
const char *var_name );
658int Cvar_VariableIntegerValue(
const char* var_name);
659float Cvar_VariableFloatValue(
const char* var_name);
662char *Cvar_VariableString(
const char *var_name );
663void Cvar_VariableStringBuffer(
const char *var_name,
char *buffer,
int bufsize );
666const char *Cvar_CompleteVariable(
const char *partial );
667const char *Cvar_CompleteVariableByNumber(
const char *partial,
int number );
670int Cvar_Flags(
const char *var_name);
673void Cvar_CommandCompletion(
void(*callback)(
const char *s) );
676void Cvar_Reset(
const char *var_name );
677void Cvar_ForceReset(
const char *var_name);
679void Cvar_SetCheatState(
void );
682qboolean Cvar_Command(
void );
687void Cvar_WriteVariables( fileHandle_t f );
691void Cvar_Init(
void );
693char *Cvar_InfoString(
int bit );
694char *Cvar_InfoString_Big(
int bit );
697void Cvar_InfoStringBuffer(
int bit,
char *buff,
int buffsize );
698void Cvar_CheckRange( cvar_t *cv,
float minVal,
float maxVal, qboolean shouldBeIntegral );
699void Cvar_SetDescription( cvar_t *var,
const char *var_description );
701void Cvar_Restart(qboolean unsetVM);
702void Cvar_Restart_f(
void );
703void Cvar_SaveGameRestart_f(
void );
705void Cvar_CompleteCvarName(
const char* args,
int argNum);
707cvar_t *Cvar_Unset(cvar_t *cv);
709extern int cvar_modifiedFlags;
710extern qboolean cvar_global_force;
729#define FS_GENERAL_REF 0x01
730#define FS_UI_REF 0x02
731#define FS_CGAME_REF 0x04
732#define FS_QAGAME_REF 0x08
736#define MAX_FILE_HANDLES 64
739# define Q3CONFIG_CFG CONFIG_PREFIX "_server.cfg"
741# define Q3CONFIG_CFG CONFIG_PREFIX ".cfg"
744qboolean FS_Initialized(
void );
746void FS_InitFilesystem(
void );
747void FS_Shutdown( qboolean closemfp );
749qboolean FS_ConditionalRestart(
int checksumFeed, qboolean disconnect );
750void FS_Restart(
int checksumFeed );
753char **FS_ListFilteredFiles(
const char *path,
const char *extension,
const char *filter, qboolean wantSubs,
int *numfiles, qboolean allowNonPureFilesOnDisk );
754char **FS_ListFiles(
const char *directory,
const char *extension, qboolean wantSubs,
int *numfiles );
759void FS_FreeFileList(
char **list );
761qboolean FS_FileExists_HomeConfig(
const char *file );
762qboolean FS_FileExists_HomeData(
const char *file );
763qboolean FS_FileExists_HomeState(
const char *file );
765void FS_CorrectCase(
char* path);
766qboolean FS_CreatePath (
const char *OSPath);
768char *FS_BaseDir_BuildOSPath(
const char *base,
const char *qpath );
769char *FS_BuildOSPath(
const char *base,
const char *game,
const char *qpath );
771int FS_LoadStack(
void );
773int FS_GetFileList(
const char *path,
const char *extension,
char *listbuf,
int bufsize );
774int FS_GetModList(
char *listbuf,
int bufsize );
776void FS_GetModDescription(
const char* modDir,
char* description,
int descriptionLen);
778fileHandle_t FS_FOpenFileWrite_HomeConfig(
const char *filename );
779fileHandle_t FS_FOpenFileWrite_HomeData(
const char *filename );
780fileHandle_t FS_FOpenFileWrite_HomeState(
const char *filename );
781fileHandle_t FS_FOpenFileAppend_HomeData(
const char *filename );
782fileHandle_t FS_FCreateOpenPipeFile(
const char *filename );
783fileHandle_t FS_FOpenTextFileWrite_HomeConfig(
const char* qpath);
784fileHandle_t FS_FOpenTextFileWrite_HomeData(
const char* qpath);
785fileHandle_t FS_FOpenTextFileWrite_HomeState(
const char* qpath);
788fileHandle_t FS_BaseDir_FOpenFileWrite_HomeConfig(
const char *filename );
789fileHandle_t FS_BaseDir_FOpenFileWrite_HomeData(
const char *filename );
790fileHandle_t FS_BaseDir_FOpenFileWrite_HomeState(
const char *filename );
791long FS_BaseDir_FOpenFileRead(
const char *filename, fileHandle_t *fp );
792void FS_BaseDir_Rename_HomeData(
const char *from,
const char *to, qboolean safe );
793void FS_CanonicalFilename(
char *filename );
795long FS_FOpenFileRead(
const char* filename, fileHandle_t* file, qboolean uniqueFILE, qboolean quiet);
802int FS_FileIsInPAK(
const char *filename,
int *pChecksum );
805size_t FS_Write(
const void *buffer,
size_t len, fileHandle_t f );
807size_t FS_Read(
void *buffer,
size_t len, fileHandle_t f );
810void FS_FCloseFile( fileHandle_t f );
813long FS_ReadFileEx(
const char* qpath,
void** buffer, qboolean quiet);
814long FS_ReadFile(
const char* qpath,
void** buffer);
815const char *FS_Gamedir(
void );
823void FS_ForceFlush( fileHandle_t f );
826void FS_FreeFile(
void *buffer );
830const char *FS_PrepFileWrite(
const char *filename );
833int FS_WriteFile(
const char *qpath,
const void *buffer,
int size );
836void FS_WriteTextFile(
const char *qpath,
const void *buffer,
int size );
839long FS_filelength(fileHandle_t f);
842int FS_FTell( fileHandle_t f );
845void FS_Flush( fileHandle_t f );
847void QDECL FS_Printf( fileHandle_t f,
const char *fmt, ... ) Q_PRINTF_FUNC(2, 3);
850int FS_FOpenFileByMode( const
char *qpath, fileHandle_t *f, fsMode_t mode );
853int FS_Seek( fileHandle_t f,
long offset,
int origin );
856qboolean FS_FilenameCompare( const
char *s1, const
char *s2 );
857qboolean FS_FileNewer( const
char *source, const
char *destination );
859const
char *FS_GamePureChecksum(
void );
862const
char *FS_LoadedPakNames(
void );
863const
char *FS_LoadedPakChecksums(
void );
864const
char *FS_LoadedPakPureChecksums(
void );
868const
char *FS_ReferencedPakNames(
void );
869const
char *FS_ReferencedPakChecksums(
void );
870const
char *FS_ReferencedPakPureChecksums(
void );
875void FS_ClearPakReferences(
int flags );
878void FS_PureServerSetReferencedPaks( const
char *pakSums, const
char *pakNames );
879void FS_PureServerSetLoadedPaks( const
char *pakSums, const
char *pakNames );
885qboolean FS_CheckDirTraversal(const
char *checkdir);
886qboolean FS_idPak(const
char *pak, const
char *base);
887qboolean FS_ComparePaks(
char *neededpaks,
int len, qboolean dlstring );
889void FS_Remove( const
char *osPath );
890void FS_Remove_HomeData( const
char *homePath );
892void FS_FilenameCompletion( const
char *dir, const
char *ext,
893 qboolean stripExt,
void(*callback)(const
char *s), qboolean allowNonPureFilesOnDisk );
895const
char* FS_GetCurrentGameDir();
896void FS_GetRelativeFilename( const
char *currentDirectory, const
char *absoluteFilename,
char *out,
size_t destlen );
898void FS_FileTime(const
char* filename,
char* date,
char* size);
900void FS_CorrectCase(
char* path);
902extern cvar_t* fs_debug;
903extern cvar_t* fs_mapdir;
913#define MAX_EDIT_LINE 256
918 char buffer[MAX_EDIT_LINE];
921void Field_Clear(
field_t *edit );
922void Field_AutoComplete(
field_t *edit );
923void Field_CompleteKeyname(
void );
924void Field_CompleteFilename(
const char *dir,
925 const char *ext, qboolean stripExt, qboolean allowNonPureFilesOnDisk );
926void Field_CompleteCommand(
char *cmd,
927 qboolean doCommands, qboolean doCvars );
928void Field_CompletePlayerName(
const char **names,
int count );
938#define CPUID_GENERIC 0
940#define CPUID_AXP 0x10
942#define CPUID_INTEL_UNSUPPORTED 0x20
943#define CPUID_INTEL_PENTIUM 0x21
944#define CPUID_INTEL_MMX 0x22
945#define CPUID_INTEL_KATMAI 0x23
947#define CPUID_AMD_3DNOW 0x30
960#define Q_vsnprintf _vsnprintf
961#define Q_snprintf _snprintf
963#define Q_vsnprintf vsnprintf
964#define Q_snprintf snprintf
969extern char cl_cdkey[34];
978 CF_3DNOW_EXT = 1 << 4,
985#define MAXPRINTMSG 4096
988#define MAX_RENDER_STRINGS 8
989#define MAX_RENDER_STRING_LENGTH 32
991char *CopyString(
const char *in );
992void Info_Print(
const char *s );
994void Com_BeginRedirect (
char *buffer,
int buffersize,
void (*flush)(
char *));
995void Com_EndRedirect(
void );
996void QDECL Com_Printf(
const char *fmt, ... ) Q_PRINTF_FUNC(1, 2);
997void QDECL Com_DPrintf( const
char *fmt, ... ) Q_PRINTF_FUNC(1, 2);
998void QDECL Com_Error(
int code, const
char *fmt, ... ) Q_NO_RETURN Q_PRINTF_FUNC(2, 3);
999void Com_Quit_f(
void ) Q_NO_RETURN;
1000void Com_GameRestart(
int checksumFeed, qboolean disconnect);
1002int Com_Milliseconds(
void );
1003unsigned Com_BlockChecksum( const
void *buffer,
int length );
1004char *Com_MD5File(const
char *filename,
int length, const
char *prefix,
int prefix_len);
1005int Com_HashKey(
char *
string,
int maxlen);
1006int Com_Filter(const
char *filter, const
char *name,
int casesensitive);
1007int Com_FilterPath(const
char *filter, const
char *name,
int casesensitive);
1008int Com_RealTime(qtime_t *qtime);
1009qboolean Com_SafeMode(
void );
1010void Com_RunAndTimeServerPacket(
netadr_t *evFrom, msg_t *buf);
1012qboolean Com_IsVoipTarget(uint8_t *voipTargets,
int voipTargetsSize,
int clientNum);
1014void Com_StartupVariable( const
char *match );
1018qboolean Com_PlayerNameToFieldString(
char *str,
int length, const
char *name );
1019qboolean Com_FieldStringToPlayerName(
char *name,
int length, const
char *rawname );
1020int QDECL Com_strCompare( const
void *a, const
void *b );
1023extern
float currentfps;
1024extern cvar_t *paused;
1025extern cvar_t *config;
1027extern cvar_t *fps_location;
1028extern cvar_t *developer;
1029extern cvar_t *com_dedicated;
1030extern cvar_t *com_speeds;
1031extern cvar_t *com_timescale;
1032extern cvar_t *com_sv_running;
1033extern cvar_t *com_cl_running;
1034extern cvar_t *com_viewlog;
1035extern cvar_t *com_shortversion;
1036extern cvar_t *com_version;
1037extern cvar_t *autopaused;
1038extern cvar_t *deathmatch;
1039extern cvar_t *com_blood;
1040extern cvar_t *com_buildScript;
1041extern cvar_t *com_radar_range;
1042extern cvar_t *console_spam_filter;
1043extern cvar_t *com_journal;
1044extern cvar_t *com_cameraMode;
1045extern cvar_t *com_ansiColor;
1046extern cvar_t *com_unfocused;
1047extern cvar_t *com_maxfpsUnfocused;
1048extern cvar_t *com_minimized;
1049extern cvar_t *com_maxfpsMinimized;
1050extern cvar_t *com_altivec;
1051extern cvar_t *com_standalone;
1052extern cvar_t *com_gamename;
1053extern cvar_t *com_basegame;
1054extern cvar_t *com_homepath;
1055extern cvar_t *com_altivec;
1058extern cvar_t *cl_paused;
1059extern cvar_t *sv_paused;
1061extern cvar_t *cl_packetdelay;
1062extern cvar_t *sv_packetdelay;
1064extern cvar_t* com_protocol;
1065#ifdef LEGACY_PROTOCOL
1066extern cvar_t* com_legacyprotocol;
1069extern cvar_t* con_autochat;
1071extern cvar_t* com_target_game;
1072extern cvar_t* com_target_shortversion;
1073extern cvar_t* com_target_version;
1074extern cvar_t* com_target_extension;
1075extern cvar_t* com_target_demo;
1077extern cvar_t* com_updatecheck_enabled;
1078extern cvar_t* com_updatecheck_interval;
1080extern int protocol_version_demo;
1081extern int protocol_version_full;
1084extern int time_game;
1085extern int time_frontend;
1086extern int time_backend;
1088extern int com_frameTime;
1089extern int com_frameMsec;
1091extern qboolean com_errorEntered;
1092extern qboolean com_fullyInitialized;
1093extern qboolean com_gotOriginalConfig;
1094extern qboolean com_firstConfig;
1096extern fileHandle_t com_journalFile;
1097extern fileHandle_t com_journalDataFile;
1109 TAG_STRINGS_AND_COMMANDS,
1112 TAG_STATIC_RENDERER,
1138#if defined(_DEBUG) && !defined(BSPC)
1143#define Z_TagMalloc(size, tag) Z_TagMallocDebug(size, tag, #size, __FILE__, __LINE__)
1144#define Z_Malloc(size) Z_MallocDebug(size, #size, __FILE__, __LINE__)
1145#define S_Malloc(size) S_MallocDebug(size, #size, __FILE__, __LINE__)
1146void *Z_TagMallocDebug(
int size,
int tag,
const char *label,
const char *file,
int line );
1147void *Z_MallocDebug(
int size,
const char *label,
const char *file,
int line );
1148void *S_MallocDebug(
int size,
const char *label,
const char *file,
int line );
1150void *Z_TagMalloc(
int size,
int tag );
1151void *Z_Malloc(
int size );
1152void *S_Malloc(
int size );
1154void Z_Free(
void *ptr );
1155void Z_FreeTags(
int tag );
1156int Z_AvailableMemory(
void );
1157void Z_LogHeap(
void );
1159void Hunk_Clear(
void );
1160void Hunk_ClearToMark(
void );
1161void Hunk_SetMark(
void );
1162qboolean Hunk_CheckMark(
void );
1163void Hunk_ClearTempMemory(
void );
1164void *Hunk_AllocateTempMemory(
int size );
1165void Hunk_FreeTempMemory(
void *buf );
1166int Hunk_MemoryRemaining(
void );
1167void Hunk_Log(
void);
1169void Com_TouchMemory(
void );
1171const char* Z_EmptyStringPointer(
void);
1172const char* Z_NumberStringPointer(
int iNum);
1175void Com_Init(
char *commandLine );
1176void Com_Frame(
void );
1177void Com_Shutdown(
void );
1179qboolean Com_SanitizeName(
const char *pszOldName,
char *pszNewName,
size_t bufferSize );
1180const char *Com_GetArchiveFileName(
const char *filename,
const char *extension );
1181const char *Com_GetArchiveFolder();
1182void Com_WipeSavegame(
const char *savename );
1183qboolean Com_ShiftedStrStr(
const char* shifted,
const char* name,
int offset);
1184qboolean COM_IsMapValid(
const char* name);
1185void Com_SwapSaveStruct(savegamestruct_t* save);
1199void CL_InitKeyCommands(
void );
1203void CL_Init(
void );
1204void CL_Disconnect();
1205void CL_AbnormalDisconnect();
1206void CL_Shutdown(
const char *finalmsg, qboolean disconnect, qboolean quit);
1207qboolean CL_FinishedIntro(
void);
1208void CL_FinishedStartStage(
void);
1209void CL_SetFrameNumber(
int frameNumber);
1210void CL_Frame(
int msec );
1211qboolean CL_GameCommand(
void );
1212void CL_KeyEvent (
int key, qboolean down,
unsigned time);
1214void CL_Key_ForceCommand(
int key,
unsigned int time);
1216void CL_CharEvent(
int key );
1219void CL_GetMouseState(
int *x,
int *y,
unsigned int *buttons );
1221void CL_SetMousePos(
int x,
int y );
1223void CL_MouseEvent(
int dx,
int dy,
int time );
1225void CL_ClearButtons(
void );
1227void CL_JoystickEvent(
int axis,
int value,
int time );
1229void CL_PacketEvent(
netadr_t from, msg_t *msg );
1231void CL_MapLoading( qboolean flush,
const char *pszMapName );
1237void CL_ForwardCommandToServer(
const char *
string );
1242qboolean CL_UseLargeLightmap(
const char* mapName);
1245void CL_CDDialog(
void );
1248void CL_FlushMemory(
void );
1251void CL_ShutdownAll(qboolean shutdownRef);
1254void CL_InitRef(
void);
1257void CL_StartHunkUsers( qboolean rendererOnly );
1260void CL_Snd_Shutdown(
void);
1263void Key_KeynameCompletion(
void(*callback)(
const char *s) );
1266void Key_WriteBindings( fileHandle_t f );
1269void S_ClearSoundBuffer(
void );
1272float *get_camera_offset( qboolean *lookactive, qboolean *resetview );
1275#define AVI_LINE_PADDING 4
1280void SV_ServerLoaded(
void );
1281void SV_Init(
void );
1282void SV_Shutdown(
const char *finalmsg );
1283void SV_SetFrameNumber(
int frameNumber);
1284void SV_Frame(
int msec );
1285void SV_PacketEvent(
netadr_t from, msg_t *msg );
1286int SV_FrameMsec(
void);
1287void SV_CheckSaveGame(
void);
1288qboolean SV_GameCommand(
void);
1289int SV_SendQueuedPackets(
void);
1294void IN_Init(
void *windowData);
1296void IN_Shutdown(
void);
1297void IN_Restart(
void);
1298void IN_GetMousePosition(
int *x,
int *y);
1300typedef void (*pCursorFree)(
byte *pic);
1301qboolean IN_SetCursorFromImage(
const byte *pic,
int width,
int height, pCursorFree cursorFreeFn);
1302void IN_FreeCursor();
1303qboolean IN_IsCursorActive();
1307void Com_FakePause();
1308void Com_FakeUnpause();
1310void SV_SoundCallback(
int entnum,
int channel_number,
const char *name );
1312int R_CountTextureMemory();
1344 sysEventType_t evType;
1345 int evValue, evValue2;
1352void Com_QueueEvent(
int time, sysEventType_t type,
int value,
int value2,
size_t ptrLength,
void *ptr );
1353int Com_EventLoop(
void );
1356void Sys_Init (
void);
1359void Sys_UnloadDll(
void *dllHandle );
1361qboolean Sys_DllExtension(
const char* name);
1363void Sys_UnloadGame(
void );
1364void *Sys_GetGameAPI(
void *parms );
1366void Sys_UnloadCGame(
void );
1367void *Sys_GetCGameAPI(
void *parms );
1369void Sys_UnloadUI(
void );
1370void *Sys_GetUIAPI(
void );
1373void Sys_UnloadBotLib(
void );
1374void *Sys_GetBotLibAPI(
void *parms );
1376char *Sys_GetCurrentUser(
void );
1378void QDECL Sys_Error(
const char *error, ...) Q_NO_RETURN Q_PRINTF_FUNC(1, 2);
1379void Sys_Quit (
void) Q_NO_RETURN;
1380char *Sys_GetClipboardData(
void );
1382void Sys_Print( const
char *msg );
1386int Sys_Milliseconds (
void);
1388qboolean Sys_RandomBytes(
byte *
string,
int len );
1391void Sys_DisplaySystemConsole( qboolean show );
1393cpuFeatures_t Sys_GetProcessorFeatures(
void );
1395void Sys_SetErrorText( const
char *text );
1397void Sys_SendPacket(
int length, const
void *data,
netadr_t to );
1399qboolean Sys_StringToAdr( const
char *s,
netadr_t *a, netadrtype_t family );
1400qboolean Sys_GetPacket(
netadr_t *net_from, msg_t *net_message );
1404qboolean Sys_IsLANAddress (
netadr_t adr);
1405void Sys_ShowIP(
void);
1407FILE *Sys_FOpen( const
char *ospath, const
char *mode );
1408qboolean Sys_Mkdir( const
char *path );
1409FILE *Sys_Mkfifo( const
char *ospath );
1410char *Sys_Cwd(
void );
1411void Sys_SetDefaultInstallPath(const
char *path);
1412char *Sys_DefaultInstallPath(
void);
1413char *Sys_SteamPath(
void);
1414char *Sys_GogPath(
void);
1415char *Sys_MicrosoftStorePath(
void);
1418char *Sys_DefaultAppPath(
void);
1421char *Sys_DefaultHomeConfigPath(
void);
1422char *Sys_DefaultHomeDataPath(
void);
1423char *Sys_DefaultHomeStatePath(
void);
1424const char *Sys_Dirname(
char *path );
1425const char *Sys_Basename(
char *path );
1426char *Sys_ConsoleInput(
void );
1428void SetProgramPath(
const char *path );
1429char *Sys_DefaultBasePath(
void );
1430char *Sys_DefaultUserPath(
void );
1431char *Sys_DefaultOutputPath(
void );
1433char **Sys_ListFiles(
const char *directory,
const char *extension,
const char *filter,
int *numfiles, qboolean wantsubs );
1434void Sys_FreeFileList(
char **list );
1435void Sys_Sleep(
int msec);
1437void Sys_InitStreamThread(
void);
1438void Sys_ShutdownStreamThread(
void);
1439void Sys_BeginStreamedFile(fileHandle_t f,
int readAhead);
1440void Sys_EndStreamedFile(fileHandle_t f);
1441int Sys_StreamedRead(
void* buffer,
int size,
int count, fileHandle_t f);
1442void Sys_StreamSeek(fileHandle_t f,
int offset,
int origin);
1444qboolean Sys_LowPhysicalMemory(
void);
1446void Sys_SetEnv(
const char* name,
const char* value);
1448void SetNormalThreadPriority(
void );
1449void SetBelowNormalThreadPriority(
void );
1451void RecoverLostAutodialData(
void );
1453void Sys_CloseMutex(
void );
1454void Sys_ShowConsole(
int visLevel, qboolean quitOnClose );
1455void Sys_DebugPrint(
const char* message);
1456void Sys_PumpMessageLoop(
void );
1458qboolean SaveRegistryInfo( qboolean user,
const char *pszName,
void *pvBuf,
long lSize );
1459qboolean LoadRegistryInfo( qboolean user,
const char *pszName,
void *pvBuf,
long *plSize );
1461qboolean IsFirstRun(
void );
1462qboolean IsNewConfig(
void );
1463qboolean IsSafeMode(
void );
1464void ClearNewConfigFlag(
void );
1465const char *Sys_GetWholeClipboard(
void );
1466void Sys_SetClipboard(
const char *contents );
1485dialogResult_t Sys_Dialog( dialogType_t type,
const char *message,
const char *title );
1486qboolean Sys_OpenFolderInFileManager(
const char *path, qboolean create );
1488void Sys_RemovePIDFile(
const char *gamedir );
1489void Sys_InitPIDFile(
const char *gamedir );
1491void Sys_ProcessBackgroundTasks();
1498#define INTERNAL_NODE (HMAX+1)
1501 struct nodetype *left, *right, *parent;
1517 node_t* loc[HMAX+1];
1520 node_t nodeList[768];
1521 node_t* nodePtrs[768];
1529void Huff_Compress(msg_t *buf,
int offset);
1530void Huff_Decompress(msg_t *buf,
int offset);
1532void Huff_addRef(
huff_t* huff,
byte ch);
1533int Huff_Receive (node_t *node,
int *ch,
byte *fin);
1534void Huff_transmit (
huff_t *huff,
int ch,
byte *fout,
int maxoffset);
1535void Huff_offsetReceive (node_t *node,
int *ch,
byte *fin,
int *offset,
int maxoffset);
1536void Huff_offsetTransmit (
huff_t *huff,
int ch,
byte *fout,
int *offset,
int maxoffset);
1537void Huff_putBit(
int bit,
byte *fout,
int *offset);
1538int Huff_getBit(
byte *fout,
int *offset);
1542#define SV_ENCODE_START 4
1543#define SV_DECODE_START 12
1544#define CL_ENCODE_START 12
1545#define CL_DECODE_START 4
1549#define DLF_NO_REDIRECT 2
1551#define DLF_NO_DISCONNECT 8
Definition q_shared.h:2014
Definition q_shared.h:1694
Definition qcommon.h:1510
Definition qcommon.h:1524
Definition qcommon.h:1500
Definition q_shared.h:1745
Definition qcommon.h:1342
Definition q_shared.h:1876
Definition q_shared.h:1364
Definition q_shared.h:208