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 *developer;
1028extern cvar_t *com_dedicated;
1029extern cvar_t *com_speeds;
1030extern cvar_t *com_timescale;
1031extern cvar_t *com_sv_running;
1032extern cvar_t *com_cl_running;
1033extern cvar_t *com_viewlog;
1034extern cvar_t *com_shortversion;
1035extern cvar_t *com_version;
1036extern cvar_t *autopaused;
1037extern cvar_t *deathmatch;
1038extern cvar_t *com_blood;
1039extern cvar_t *com_buildScript;
1040extern cvar_t *com_radar_range;
1041extern cvar_t *console_spam_filter;
1042extern cvar_t *com_journal;
1043extern cvar_t *com_cameraMode;
1044extern cvar_t *com_ansiColor;
1045extern cvar_t *com_unfocused;
1046extern cvar_t *com_maxfpsUnfocused;
1047extern cvar_t *com_minimized;
1048extern cvar_t *com_maxfpsMinimized;
1049extern cvar_t *com_altivec;
1050extern cvar_t *com_standalone;
1051extern cvar_t *com_gamename;
1052extern cvar_t *com_basegame;
1053extern cvar_t *com_homepath;
1054extern cvar_t *com_altivec;
1057extern cvar_t *cl_paused;
1058extern cvar_t *sv_paused;
1060extern cvar_t *cl_packetdelay;
1061extern cvar_t *sv_packetdelay;
1063extern cvar_t* com_protocol;
1064#ifdef LEGACY_PROTOCOL
1065extern cvar_t* com_legacyprotocol;
1068extern cvar_t* con_autochat;
1070extern cvar_t* com_target_game;
1071extern cvar_t* com_target_shortversion;
1072extern cvar_t* com_target_version;
1073extern cvar_t* com_target_extension;
1074extern cvar_t* com_target_demo;
1076extern cvar_t* com_updatecheck_enabled;
1077extern cvar_t* com_updatecheck_interval;
1079extern int protocol_version_demo;
1080extern int protocol_version_full;
1083extern int time_game;
1084extern int time_frontend;
1085extern int time_backend;
1087extern int com_frameTime;
1088extern int com_frameMsec;
1090extern qboolean com_errorEntered;
1091extern qboolean com_fullyInitialized;
1092extern qboolean com_gotOriginalConfig;
1093extern qboolean com_firstConfig;
1095extern fileHandle_t com_journalFile;
1096extern fileHandle_t com_journalDataFile;
1108 TAG_STRINGS_AND_COMMANDS,
1111 TAG_STATIC_RENDERER,
1137#if defined(_DEBUG) && !defined(BSPC)
1142#define Z_TagMalloc(size, tag) Z_TagMallocDebug(size, tag, #size, __FILE__, __LINE__)
1143#define Z_Malloc(size) Z_MallocDebug(size, #size, __FILE__, __LINE__)
1144#define S_Malloc(size) S_MallocDebug(size, #size, __FILE__, __LINE__)
1145void *Z_TagMallocDebug(
int size,
int tag,
const char *label,
const char *file,
int line );
1146void *Z_MallocDebug(
int size,
const char *label,
const char *file,
int line );
1147void *S_MallocDebug(
int size,
const char *label,
const char *file,
int line );
1149void *Z_TagMalloc(
int size,
int tag );
1150void *Z_Malloc(
int size );
1151void *S_Malloc(
int size );
1153void Z_Free(
void *ptr );
1154void Z_FreeTags(
int tag );
1155int Z_AvailableMemory(
void );
1156void Z_LogHeap(
void );
1158void Hunk_Clear(
void );
1159void Hunk_ClearToMark(
void );
1160void Hunk_SetMark(
void );
1161qboolean Hunk_CheckMark(
void );
1162void Hunk_ClearTempMemory(
void );
1163void *Hunk_AllocateTempMemory(
int size );
1164void Hunk_FreeTempMemory(
void *buf );
1165int Hunk_MemoryRemaining(
void );
1166void Hunk_Log(
void);
1168void Com_TouchMemory(
void );
1170const char* Z_EmptyStringPointer(
void);
1171const char* Z_NumberStringPointer(
int iNum);
1174void Com_Init(
char *commandLine );
1175void Com_Frame(
void );
1176void Com_Shutdown(
void );
1178qboolean Com_SanitizeName(
const char *pszOldName,
char *pszNewName,
size_t bufferSize );
1179const char *Com_GetArchiveFileName(
const char *filename,
const char *extension );
1180const char *Com_GetArchiveFolder();
1181void Com_WipeSavegame(
const char *savename );
1182qboolean Com_ShiftedStrStr(
const char* shifted,
const char* name,
int offset);
1183qboolean COM_IsMapValid(
const char* name);
1184void Com_SwapSaveStruct(savegamestruct_t* save);
1198void CL_InitKeyCommands(
void );
1202void CL_Init(
void );
1203void CL_Disconnect();
1204void CL_AbnormalDisconnect();
1205void CL_Shutdown(
const char *finalmsg, qboolean disconnect, qboolean quit);
1206qboolean CL_FinishedIntro(
void);
1207void CL_FinishedStartStage(
void);
1208void CL_SetFrameNumber(
int frameNumber);
1209void CL_Frame(
int msec );
1210qboolean CL_GameCommand(
void );
1211void CL_KeyEvent (
int key, qboolean down,
unsigned time);
1213void CL_Key_ForceCommand(
int key,
unsigned int time);
1215void CL_CharEvent(
int key );
1218void CL_GetMouseState(
int *x,
int *y,
unsigned int *buttons );
1220void CL_SetMousePos(
int x,
int y );
1222void CL_MouseEvent(
int dx,
int dy,
int time );
1224void CL_ClearButtons(
void );
1226void CL_JoystickEvent(
int axis,
int value,
int time );
1228void CL_PacketEvent(
netadr_t from, msg_t *msg );
1230void CL_MapLoading( qboolean flush,
const char *pszMapName );
1236void CL_ForwardCommandToServer(
const char *
string );
1241qboolean CL_UseLargeLightmap(
const char* mapName);
1244void CL_CDDialog(
void );
1247void CL_FlushMemory(
void );
1250void CL_ShutdownAll(qboolean shutdownRef);
1253void CL_InitRef(
void);
1256void CL_StartHunkUsers( qboolean rendererOnly );
1259void CL_Snd_Shutdown(
void);
1262void Key_KeynameCompletion(
void(*callback)(
const char *s) );
1265void Key_WriteBindings( fileHandle_t f );
1268void S_ClearSoundBuffer(
void );
1271float *get_camera_offset( qboolean *lookactive, qboolean *resetview );
1274#define AVI_LINE_PADDING 4
1279void SV_ServerLoaded(
void );
1280void SV_Init(
void );
1281void SV_Shutdown(
const char *finalmsg );
1282void SV_SetFrameNumber(
int frameNumber);
1283void SV_Frame(
int msec );
1284void SV_PacketEvent(
netadr_t from, msg_t *msg );
1285int SV_FrameMsec(
void);
1286void SV_CheckSaveGame(
void);
1287qboolean SV_GameCommand(
void);
1288int SV_SendQueuedPackets(
void);
1293void IN_Init(
void *windowData);
1295void IN_Shutdown(
void);
1296void IN_Restart(
void);
1297void IN_GetMousePosition(
int *x,
int *y);
1299typedef void (*pCursorFree)(
byte *pic);
1300qboolean IN_SetCursorFromImage(
const byte *pic,
int width,
int height, pCursorFree cursorFreeFn);
1301void IN_FreeCursor();
1302qboolean IN_IsCursorActive();
1306void Com_FakePause();
1307void Com_FakeUnpause();
1309void SV_SoundCallback(
int entnum,
int channel_number,
const char *name );
1311int R_CountTextureMemory();
1343 sysEventType_t evType;
1344 int evValue, evValue2;
1351void Com_QueueEvent(
int time, sysEventType_t type,
int value,
int value2,
size_t ptrLength,
void *ptr );
1352int Com_EventLoop(
void );
1355void Sys_Init (
void);
1358void Sys_UnloadDll(
void *dllHandle );
1360qboolean Sys_DllExtension(
const char* name);
1362void Sys_UnloadGame(
void );
1363void *Sys_GetGameAPI(
void *parms );
1365void Sys_UnloadCGame(
void );
1366void *Sys_GetCGameAPI(
void *parms );
1368void Sys_UnloadUI(
void );
1369void *Sys_GetUIAPI(
void );
1372void Sys_UnloadBotLib(
void );
1373void *Sys_GetBotLibAPI(
void *parms );
1375char *Sys_GetCurrentUser(
void );
1377void QDECL Sys_Error(
const char *error, ...) Q_NO_RETURN Q_PRINTF_FUNC(1, 2);
1378void Sys_Quit (
void) Q_NO_RETURN;
1379char *Sys_GetClipboardData(
void );
1381void Sys_Print( const
char *msg );
1385int Sys_Milliseconds (
void);
1387qboolean Sys_RandomBytes(
byte *
string,
int len );
1390void Sys_DisplaySystemConsole( qboolean show );
1392cpuFeatures_t Sys_GetProcessorFeatures(
void );
1394void Sys_SetErrorText( const
char *text );
1396void Sys_SendPacket(
int length, const
void *data,
netadr_t to );
1398qboolean Sys_StringToAdr( const
char *s,
netadr_t *a, netadrtype_t family );
1399qboolean Sys_GetPacket(
netadr_t *net_from, msg_t *net_message );
1403qboolean Sys_IsLANAddress (
netadr_t adr);
1404void Sys_ShowIP(
void);
1406FILE *Sys_FOpen( const
char *ospath, const
char *mode );
1407qboolean Sys_Mkdir( const
char *path );
1408FILE *Sys_Mkfifo( const
char *ospath );
1409char *Sys_Cwd(
void );
1410void Sys_SetDefaultInstallPath(const
char *path);
1411char *Sys_DefaultInstallPath(
void);
1412char *Sys_SteamPath(
void);
1413char *Sys_GogPath(
void);
1414char *Sys_MicrosoftStorePath(
void);
1417char *Sys_DefaultAppPath(
void);
1420char *Sys_DefaultHomeConfigPath(
void);
1421char *Sys_DefaultHomeDataPath(
void);
1422char *Sys_DefaultHomeStatePath(
void);
1423const char *Sys_Dirname(
char *path );
1424const char *Sys_Basename(
char *path );
1425char *Sys_ConsoleInput(
void );
1427void SetProgramPath(
const char *path );
1428char *Sys_DefaultBasePath(
void );
1429char *Sys_DefaultUserPath(
void );
1430char *Sys_DefaultOutputPath(
void );
1432char **Sys_ListFiles(
const char *directory,
const char *extension,
const char *filter,
int *numfiles, qboolean wantsubs );
1433void Sys_FreeFileList(
char **list );
1434void Sys_Sleep(
int msec);
1436void Sys_InitStreamThread(
void);
1437void Sys_ShutdownStreamThread(
void);
1438void Sys_BeginStreamedFile(fileHandle_t f,
int readAhead);
1439void Sys_EndStreamedFile(fileHandle_t f);
1440int Sys_StreamedRead(
void* buffer,
int size,
int count, fileHandle_t f);
1441void Sys_StreamSeek(fileHandle_t f,
int offset,
int origin);
1443qboolean Sys_LowPhysicalMemory(
void);
1445void Sys_SetEnv(
const char* name,
const char* value);
1447void SetNormalThreadPriority(
void );
1448void SetBelowNormalThreadPriority(
void );
1450void RecoverLostAutodialData(
void );
1452void Sys_CloseMutex(
void );
1453void Sys_ShowConsole(
int visLevel, qboolean quitOnClose );
1454void Sys_DebugPrint(
const char* message);
1455void Sys_PumpMessageLoop(
void );
1457qboolean SaveRegistryInfo( qboolean user,
const char *pszName,
void *pvBuf,
long lSize );
1458qboolean LoadRegistryInfo( qboolean user,
const char *pszName,
void *pvBuf,
long *plSize );
1460qboolean IsFirstRun(
void );
1461qboolean IsNewConfig(
void );
1462qboolean IsSafeMode(
void );
1463void ClearNewConfigFlag(
void );
1464const char *Sys_GetWholeClipboard(
void );
1465void Sys_SetClipboard(
const char *contents );
1484dialogResult_t Sys_Dialog( dialogType_t type,
const char *message,
const char *title );
1485qboolean Sys_OpenFolderInFileManager(
const char *path, qboolean create );
1487void Sys_RemovePIDFile(
const char *gamedir );
1488void Sys_InitPIDFile(
const char *gamedir );
1490void Sys_ProcessBackgroundTasks();
1497#define INTERNAL_NODE (HMAX+1)
1500 struct nodetype *left, *right, *parent;
1516 node_t* loc[HMAX+1];
1519 node_t nodeList[768];
1520 node_t* nodePtrs[768];
1528void Huff_Compress(msg_t *buf,
int offset);
1529void Huff_Decompress(msg_t *buf,
int offset);
1531void Huff_addRef(
huff_t* huff,
byte ch);
1532int Huff_Receive (node_t *node,
int *ch,
byte *fin);
1533void Huff_transmit (
huff_t *huff,
int ch,
byte *fout,
int maxoffset);
1534void Huff_offsetReceive (node_t *node,
int *ch,
byte *fin,
int *offset,
int maxoffset);
1535void Huff_offsetTransmit (
huff_t *huff,
int ch,
byte *fout,
int *offset,
int maxoffset);
1536void Huff_putBit(
int bit,
byte *fout,
int *offset);
1537int Huff_getBit(
byte *fout,
int *offset);
1541#define SV_ENCODE_START 4
1542#define SV_DECODE_START 12
1543#define CL_ENCODE_START 12
1544#define CL_DECODE_START 4
1548#define DLF_NO_REDIRECT 2
1550#define DLF_NO_DISCONNECT 8
Definition q_shared.h:2013
Definition q_shared.h:1693
Definition qcommon.h:1509
Definition qcommon.h:1523
Definition qcommon.h:1499
Definition q_shared.h:1744
Definition qcommon.h:1341
Definition q_shared.h:1875
Definition q_shared.h:1363
Definition q_shared.h:207