Add code, unknown original date
This commit is contained in:
15
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.consign
Executable file
15
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.consign
Executable file
@@ -0,0 +1,15 @@
|
||||
q_shared.asm:1080791476 da1295a6f1f7665066d43a5f893816b9
|
||||
bg_misc.c:1080784657 - 15cad759bd24f27a49c7bdd8e32f07e4
|
||||
bg_lib.h:1080784657 - c586b36f6d481d7762a2a02751e9f9e6
|
||||
q_shared.h:1080784656 - 4be4ffd42eea1486298861768d1d0b6a
|
||||
bg_lib.c:1080784657 - 11d995dd18822a37c2e924128bcdf943
|
||||
bg_misc.o:1080791445 31184c880b646e12f2cefbc7c23c4e8a
|
||||
q_math.asm:1080791476 8568e927b21aa7b5a59f79cc952710a4
|
||||
bg_public.h:1080784657 - 0054a3e1232d31b8f2f6694c2684ade8
|
||||
q_math.o:1080791445 5e47fc7e44caabc6bebe90c72c1e7edf
|
||||
q_shared.c:1080784656 - 572b179b26244b05f57789667fbab7f3
|
||||
q_shared.o:1080791445 668f41b3c5dc01f43af50effed8b3ca9
|
||||
q_math.c:1080784656 - 1fa363a99ed67e62343af49287b6c02a
|
||||
bg_lib.asm:1080791477 4e9ec244593019af1f312bdd8acfbdae
|
||||
surfaceflags.h:1080784656 - b8d4b9d273c6f27cc15cbe3801ea5b48
|
||||
bg_misc.asm:1080791476 1e91ca318fda64d2940fca9cfad21426
|
||||
83
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/all-wcprops
Executable file
83
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/all-wcprops
Executable file
@@ -0,0 +1,83 @@
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 76
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game
|
||||
END
|
||||
bg_lib.c
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 85
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_lib.c
|
||||
END
|
||||
bg_misc.asm
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 88
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_misc.asm
|
||||
END
|
||||
bg_lib.h
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 85
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_lib.h
|
||||
END
|
||||
bg_misc.c
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 86
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_misc.c
|
||||
END
|
||||
q_shared.asm
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 89
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_shared.asm
|
||||
END
|
||||
q_shared.c
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 87
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_shared.c
|
||||
END
|
||||
q_math.asm
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 87
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_math.asm
|
||||
END
|
||||
q_math.c
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 85
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_math.c
|
||||
END
|
||||
surfaceflags.h
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 91
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/surfaceflags.h
|
||||
END
|
||||
bg_public.h
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 88
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_public.h
|
||||
END
|
||||
q_shared.h
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 87
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_shared.h
|
||||
END
|
||||
bg_lib.asm
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 87
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_lib.asm
|
||||
END
|
||||
.consign
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 85
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/.consign
|
||||
END
|
||||
473
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/entries
Executable file
473
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/entries
Executable file
@@ -0,0 +1,473 @@
|
||||
10
|
||||
|
||||
dir
|
||||
44
|
||||
https://127.0.0.1/svn/aklabs/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game
|
||||
https://127.0.0.1/svn/aklabs
|
||||
|
||||
|
||||
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
eb184899-6090-47d4-a65b-558f62f6ea1c
|
||||
|
||||
bg_lib.c
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.338873Z
|
||||
11d995dd18822a37c2e924128bcdf943
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
has-props
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
39267
|
||||
|
||||
bg_misc.asm
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.354498Z
|
||||
990d7d57fc25591661547eb0f763696a
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
has-props
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
138919
|
||||
|
||||
bg_lib.h
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.354498Z
|
||||
c586b36f6d481d7762a2a02751e9f9e6
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
has-props
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
2696
|
||||
|
||||
bg_misc.c
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.385748Z
|
||||
15cad759bd24f27a49c7bdd8e32f07e4
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
has-props
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
35151
|
||||
|
||||
q_shared.asm
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.385748Z
|
||||
44f9201b500da5d56db4c41989c5684d
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
has-props
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
81497
|
||||
|
||||
q_shared.c
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.416998Z
|
||||
572b179b26244b05f57789667fbab7f3
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
has-props
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
21628
|
||||
|
||||
q_math.asm
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.416998Z
|
||||
7e193daffea4ba6429309af822fb9b58
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
has-props
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
106021
|
||||
|
||||
q_math.c
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.432623Z
|
||||
1fa363a99ed67e62343af49287b6c02a
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
has-props
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
29200
|
||||
|
||||
CVS
|
||||
dir
|
||||
|
||||
surfaceflags.h
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.432623Z
|
||||
b8d4b9d273c6f27cc15cbe3801ea5b48
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
has-props
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
2640
|
||||
|
||||
bg_public.h
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.495123Z
|
||||
0054a3e1232d31b8f2f6694c2684ade8
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
has-props
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
18141
|
||||
|
||||
q_shared.h
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.495123Z
|
||||
4be4ffd42eea1486298861768d1d0b6a
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
has-props
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
39391
|
||||
|
||||
bg_lib.asm
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.510748Z
|
||||
77259208eb980e971e27719c5d7fb54d
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
has-props
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
89289
|
||||
|
||||
.consign
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.510748Z
|
||||
0afcb2b6fbc93efbfab49445a67b0590
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
has-props
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
839
|
||||
|
||||
5
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/prop-base/.consign.svn-base
Executable file
5
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/prop-base/.consign.svn-base
Executable file
@@ -0,0 +1,5 @@
|
||||
K 14
|
||||
svn:executable
|
||||
V 0
|
||||
|
||||
END
|
||||
@@ -0,0 +1,5 @@
|
||||
K 14
|
||||
svn:executable
|
||||
V 0
|
||||
|
||||
END
|
||||
5
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/prop-base/bg_lib.c.svn-base
Executable file
5
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/prop-base/bg_lib.c.svn-base
Executable file
@@ -0,0 +1,5 @@
|
||||
K 14
|
||||
svn:executable
|
||||
V 0
|
||||
|
||||
END
|
||||
5
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/prop-base/bg_lib.h.svn-base
Executable file
5
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/prop-base/bg_lib.h.svn-base
Executable file
@@ -0,0 +1,5 @@
|
||||
K 14
|
||||
svn:executable
|
||||
V 0
|
||||
|
||||
END
|
||||
@@ -0,0 +1,5 @@
|
||||
K 14
|
||||
svn:executable
|
||||
V 0
|
||||
|
||||
END
|
||||
5
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/prop-base/bg_misc.c.svn-base
Executable file
5
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/prop-base/bg_misc.c.svn-base
Executable file
@@ -0,0 +1,5 @@
|
||||
K 14
|
||||
svn:executable
|
||||
V 0
|
||||
|
||||
END
|
||||
@@ -0,0 +1,5 @@
|
||||
K 14
|
||||
svn:executable
|
||||
V 0
|
||||
|
||||
END
|
||||
@@ -0,0 +1,5 @@
|
||||
K 14
|
||||
svn:executable
|
||||
V 0
|
||||
|
||||
END
|
||||
5
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/prop-base/q_math.c.svn-base
Executable file
5
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/prop-base/q_math.c.svn-base
Executable file
@@ -0,0 +1,5 @@
|
||||
K 14
|
||||
svn:executable
|
||||
V 0
|
||||
|
||||
END
|
||||
@@ -0,0 +1,5 @@
|
||||
K 14
|
||||
svn:executable
|
||||
V 0
|
||||
|
||||
END
|
||||
@@ -0,0 +1,5 @@
|
||||
K 14
|
||||
svn:executable
|
||||
V 0
|
||||
|
||||
END
|
||||
@@ -0,0 +1,5 @@
|
||||
K 14
|
||||
svn:executable
|
||||
V 0
|
||||
|
||||
END
|
||||
@@ -0,0 +1,5 @@
|
||||
K 14
|
||||
svn:executable
|
||||
V 0
|
||||
|
||||
END
|
||||
15
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/.consign.svn-base
Executable file
15
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/.consign.svn-base
Executable file
@@ -0,0 +1,15 @@
|
||||
q_shared.asm:1080791476 da1295a6f1f7665066d43a5f893816b9
|
||||
bg_misc.c:1080784657 - 15cad759bd24f27a49c7bdd8e32f07e4
|
||||
bg_lib.h:1080784657 - c586b36f6d481d7762a2a02751e9f9e6
|
||||
q_shared.h:1080784656 - 4be4ffd42eea1486298861768d1d0b6a
|
||||
bg_lib.c:1080784657 - 11d995dd18822a37c2e924128bcdf943
|
||||
bg_misc.o:1080791445 31184c880b646e12f2cefbc7c23c4e8a
|
||||
q_math.asm:1080791476 8568e927b21aa7b5a59f79cc952710a4
|
||||
bg_public.h:1080784657 - 0054a3e1232d31b8f2f6694c2684ade8
|
||||
q_math.o:1080791445 5e47fc7e44caabc6bebe90c72c1e7edf
|
||||
q_shared.c:1080784656 - 572b179b26244b05f57789667fbab7f3
|
||||
q_shared.o:1080791445 668f41b3c5dc01f43af50effed8b3ca9
|
||||
q_math.c:1080784656 - 1fa363a99ed67e62343af49287b6c02a
|
||||
bg_lib.asm:1080791477 4e9ec244593019af1f312bdd8acfbdae
|
||||
surfaceflags.h:1080784656 - b8d4b9d273c6f27cc15cbe3801ea5b48
|
||||
bg_misc.asm:1080791476 1e91ca318fda64d2940fca9cfad21426
|
||||
5873
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/bg_lib.asm.svn-base
Executable file
5873
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/bg_lib.asm.svn-base
Executable file
File diff suppressed because it is too large
Load Diff
1326
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/bg_lib.c.svn-base
Executable file
1326
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/bg_lib.c.svn-base
Executable file
File diff suppressed because it is too large
Load Diff
70
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/bg_lib.h.svn-base
Executable file
70
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/bg_lib.h.svn-base
Executable file
@@ -0,0 +1,70 @@
|
||||
// bg_lib.h -- standard C library replacement routines used by code
|
||||
// compiled for the virtual machine
|
||||
|
||||
// This file is NOT included on native builds
|
||||
|
||||
typedef int size_t;
|
||||
|
||||
typedef char * va_list;
|
||||
#define _INTSIZEOF(n) ( (sizeof(n) + sizeof(int) - 1) & ~(sizeof(int) - 1) )
|
||||
#define va_start(ap,v) ( ap = (va_list)&v + _INTSIZEOF(v) )
|
||||
#define va_arg(ap,t) ( *(t *)((ap += _INTSIZEOF(t)) - _INTSIZEOF(t)) )
|
||||
#define va_end(ap) ( ap = (va_list)0 )
|
||||
|
||||
#define CHAR_BIT 8 /* number of bits in a char */
|
||||
#define SCHAR_MIN (-128) /* minimum signed char value */
|
||||
#define SCHAR_MAX 127 /* maximum signed char value */
|
||||
#define UCHAR_MAX 0xff /* maximum unsigned char value */
|
||||
|
||||
#define SHRT_MIN (-32768) /* minimum (signed) short value */
|
||||
#define SHRT_MAX 32767 /* maximum (signed) short value */
|
||||
#define USHRT_MAX 0xffff /* maximum unsigned short value */
|
||||
#define INT_MIN (-2147483647 - 1) /* minimum (signed) int value */
|
||||
#define INT_MAX 2147483647 /* maximum (signed) int value */
|
||||
#define UINT_MAX 0xffffffff /* maximum unsigned int value */
|
||||
#define LONG_MIN (-2147483647L - 1) /* minimum (signed) long value */
|
||||
#define LONG_MAX 2147483647L /* maximum (signed) long value */
|
||||
#define ULONG_MAX 0xffffffffUL /* maximum unsigned long value */
|
||||
|
||||
// Misc functions
|
||||
typedef int cmp_t(const void *, const void *);
|
||||
void qsort(void *a, size_t n, size_t es, cmp_t *cmp);
|
||||
void srand( unsigned seed );
|
||||
int rand( void );
|
||||
|
||||
// String functions
|
||||
size_t strlen( const char *string );
|
||||
char *strcat( char *strDestination, const char *strSource );
|
||||
char *strcpy( char *strDestination, const char *strSource );
|
||||
int strcmp( const char *string1, const char *string2 );
|
||||
char *strchr( const char *string, int c );
|
||||
char *strstr( const char *string, const char *strCharSet );
|
||||
char *strncpy( char *strDest, const char *strSource, size_t count );
|
||||
int tolower( int c );
|
||||
int toupper( int c );
|
||||
|
||||
double atof( const char *string );
|
||||
double _atof( const char **stringPtr );
|
||||
int atoi( const char *string );
|
||||
int _atoi( const char **stringPtr );
|
||||
|
||||
int vsprintf( char *buffer, const char *fmt, va_list argptr );
|
||||
int sscanf( const char *buffer, const char *fmt, ... );
|
||||
|
||||
// Memory functions
|
||||
void *memmove( void *dest, const void *src, size_t count );
|
||||
void *memset( void *dest, int c, size_t count );
|
||||
void *memcpy( void *dest, const void *src, size_t count );
|
||||
|
||||
// Math functions
|
||||
double ceil( double x );
|
||||
double floor( double x );
|
||||
double sqrt( double x );
|
||||
double sin( double x );
|
||||
double cos( double x );
|
||||
double atan2( double y, double x );
|
||||
double tan( double x );
|
||||
int abs( int n );
|
||||
double fabs( double x );
|
||||
double acos( double x );
|
||||
|
||||
10871
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/bg_misc.asm.svn-base
Executable file
10871
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/bg_misc.asm.svn-base
Executable file
File diff suppressed because it is too large
Load Diff
1584
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/bg_misc.c.svn-base
Executable file
1584
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/bg_misc.c.svn-base
Executable file
File diff suppressed because it is too large
Load Diff
718
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/bg_public.h.svn-base
Executable file
718
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/bg_public.h.svn-base
Executable file
@@ -0,0 +1,718 @@
|
||||
// Copyright (C) 1999-2000 Id Software, Inc.
|
||||
//
|
||||
// bg_public.h -- definitions shared by both the server game and client game modules
|
||||
|
||||
// because games can change separately from the main system version, we need a
|
||||
// second version that must match between game and cgame
|
||||
|
||||
#define GAME_VERSION "baseq3-1"
|
||||
|
||||
#define DEFAULT_GRAVITY 800
|
||||
#define GIB_HEALTH -40
|
||||
#define ARMOR_PROTECTION 0.66
|
||||
|
||||
#define MAX_ITEMS 256
|
||||
|
||||
#define RANK_TIED_FLAG 0x4000
|
||||
|
||||
#define DEFAULT_SHOTGUN_SPREAD 700
|
||||
#define DEFAULT_SHOTGUN_COUNT 11
|
||||
|
||||
#define ITEM_RADIUS 15 // item sizes are needed for client side pickup detection
|
||||
|
||||
#define LIGHTNING_RANGE 768
|
||||
|
||||
#define SCORE_NOT_PRESENT -9999 // for the CS_SCORES[12] when only one player is present
|
||||
|
||||
#define VOTE_TIME 30000 // 30 seconds before vote times out
|
||||
|
||||
#define MINS_Z -24
|
||||
#define DEFAULT_VIEWHEIGHT 26
|
||||
#define CROUCH_VIEWHEIGHT 12
|
||||
#define DEAD_VIEWHEIGHT -16
|
||||
|
||||
//
|
||||
// config strings are a general means of communicating variable length strings
|
||||
// from the server to all connected clients.
|
||||
//
|
||||
|
||||
// CS_SERVERINFO and CS_SYSTEMINFO are defined in q_shared.h
|
||||
#define CS_MUSIC 2
|
||||
#define CS_MESSAGE 3 // from the map worldspawn's message field
|
||||
#define CS_MOTD 4 // g_motd string for server message of the day
|
||||
#define CS_WARMUP 5 // server time when the match will be restarted
|
||||
#define CS_SCORES1 6
|
||||
#define CS_SCORES2 7
|
||||
#define CS_VOTE_TIME 8
|
||||
#define CS_VOTE_STRING 9
|
||||
#define CS_VOTE_YES 10
|
||||
#define CS_VOTE_NO 11
|
||||
|
||||
#define CS_TEAMVOTE_TIME 12
|
||||
#define CS_TEAMVOTE_STRING 14
|
||||
#define CS_TEAMVOTE_YES 16
|
||||
#define CS_TEAMVOTE_NO 18
|
||||
|
||||
#define CS_GAME_VERSION 20
|
||||
#define CS_LEVEL_START_TIME 21 // so the timer only shows the current level
|
||||
#define CS_INTERMISSION 22 // when 1, fraglimit/timelimit has been hit and intermission will start in a second or two
|
||||
#define CS_FLAGSTATUS 23 // string indicating flag status in CTF
|
||||
#define CS_SHADERSTATE 24
|
||||
#define CS_BOTINFO 25
|
||||
|
||||
#define CS_ITEMS 27 // string of 0's and 1's that tell which items are present
|
||||
|
||||
#define CS_MODELS 32
|
||||
#define CS_SOUNDS (CS_MODELS+MAX_MODELS)
|
||||
#define CS_PLAYERS (CS_SOUNDS+MAX_SOUNDS)
|
||||
#define CS_LOCATIONS (CS_PLAYERS+MAX_CLIENTS)
|
||||
#define CS_PARTICLES (CS_LOCATIONS+MAX_LOCATIONS)
|
||||
|
||||
#define CS_MAX (CS_PARTICLES+MAX_LOCATIONS)
|
||||
|
||||
#if (CS_MAX) > MAX_CONFIGSTRINGS
|
||||
#error overflow: (CS_MAX) > MAX_CONFIGSTRINGS
|
||||
#endif
|
||||
|
||||
typedef enum {
|
||||
GT_FFA, // free for all
|
||||
GT_TOURNAMENT, // one on one tournament
|
||||
GT_SINGLE_PLAYER, // single player ffa
|
||||
|
||||
//-- team games go after this --
|
||||
|
||||
GT_TEAM, // team deathmatch
|
||||
GT_CTF, // capture the flag
|
||||
GT_1FCTF,
|
||||
GT_OBELISK,
|
||||
GT_HARVESTER,
|
||||
GT_MAX_GAME_TYPE
|
||||
} gametype_t;
|
||||
|
||||
typedef enum { GENDER_MALE, GENDER_FEMALE, GENDER_NEUTER } gender_t;
|
||||
|
||||
/*
|
||||
===================================================================================
|
||||
|
||||
PMOVE MODULE
|
||||
|
||||
The pmove code takes a player_state_t and a usercmd_t and generates a new player_state_t
|
||||
and some other output data. Used for local prediction on the client game and true
|
||||
movement on the server game.
|
||||
===================================================================================
|
||||
*/
|
||||
|
||||
typedef enum {
|
||||
PM_NORMAL, // can accelerate and turn
|
||||
PM_NOCLIP, // noclip movement
|
||||
PM_SPECTATOR, // still run into walls
|
||||
PM_DEAD, // no acceleration or turning, but free falling
|
||||
PM_FREEZE, // stuck in place with no control
|
||||
PM_INTERMISSION, // no movement or status bar
|
||||
PM_SPINTERMISSION // no movement or status bar
|
||||
} pmtype_t;
|
||||
|
||||
typedef enum {
|
||||
WEAPON_READY,
|
||||
WEAPON_RAISING,
|
||||
WEAPON_DROPPING,
|
||||
WEAPON_FIRING
|
||||
} weaponstate_t;
|
||||
|
||||
// pmove->pm_flags
|
||||
#define PMF_DUCKED 1
|
||||
#define PMF_JUMP_HELD 2
|
||||
#define PMF_BACKWARDS_JUMP 8 // go into backwards land
|
||||
#define PMF_BACKWARDS_RUN 16 // coast down to backwards run
|
||||
#define PMF_TIME_LAND 32 // pm_time is time before rejump
|
||||
#define PMF_TIME_KNOCKBACK 64 // pm_time is an air-accelerate only time
|
||||
#define PMF_TIME_WATERJUMP 256 // pm_time is waterjump
|
||||
#define PMF_RESPAWNED 512 // clear after attack and jump buttons come up
|
||||
#define PMF_USE_ITEM_HELD 1024
|
||||
#define PMF_GRAPPLE_PULL 2048 // pull towards grapple location
|
||||
#define PMF_FOLLOW 4096 // spectate following another player
|
||||
#define PMF_SCOREBOARD 8192 // spectate as a scoreboard
|
||||
#define PMF_INVULEXPAND 16384 // invulnerability sphere set to full size
|
||||
|
||||
#define PMF_ALL_TIMES (PMF_TIME_WATERJUMP|PMF_TIME_LAND|PMF_TIME_KNOCKBACK)
|
||||
|
||||
#define MAXTOUCH 32
|
||||
typedef struct {
|
||||
// state (in / out)
|
||||
playerState_t *ps;
|
||||
|
||||
// command (in)
|
||||
usercmd_t cmd;
|
||||
int tracemask; // collide against these types of surfaces
|
||||
int debugLevel; // if set, diagnostic output will be printed
|
||||
qboolean noFootsteps; // if the game is setup for no footsteps by the server
|
||||
qboolean gauntletHit; // true if a gauntlet attack would actually hit something
|
||||
|
||||
int framecount;
|
||||
|
||||
// results (out)
|
||||
int numtouch;
|
||||
int touchents[MAXTOUCH];
|
||||
|
||||
vec3_t mins, maxs; // bounding box size
|
||||
|
||||
int watertype;
|
||||
int waterlevel;
|
||||
|
||||
float xyspeed;
|
||||
|
||||
// for fixed msec Pmove
|
||||
int pmove_fixed;
|
||||
int pmove_msec;
|
||||
|
||||
// callbacks to test the world
|
||||
// these will be different functions during game and cgame
|
||||
void (*trace)( trace_t *results, const vec3_t start, const vec3_t mins, const vec3_t maxs, const vec3_t end, int passEntityNum, int contentMask );
|
||||
int (*pointcontents)( const vec3_t point, int passEntityNum );
|
||||
} pmove_t;
|
||||
|
||||
// if a full pmove isn't done on the client, you can just update the angles
|
||||
void PM_UpdateViewAngles( playerState_t *ps, const usercmd_t *cmd );
|
||||
void Pmove (pmove_t *pmove);
|
||||
|
||||
//===================================================================================
|
||||
|
||||
|
||||
// player_state->stats[] indexes
|
||||
// NOTE: may not have more than 16
|
||||
typedef enum {
|
||||
STAT_HEALTH,
|
||||
STAT_HOLDABLE_ITEM,
|
||||
#ifdef MISSIONPACK
|
||||
STAT_PERSISTANT_POWERUP,
|
||||
#endif
|
||||
STAT_WEAPONS, // 16 bit fields
|
||||
STAT_ARMOR,
|
||||
STAT_DEAD_YAW, // look this direction when dead (FIXME: get rid of?)
|
||||
STAT_CLIENTS_READY, // bit mask of clients wishing to exit the intermission (FIXME: configstring?)
|
||||
STAT_MAX_HEALTH // health / armor limit, changable by handicap
|
||||
} statIndex_t;
|
||||
|
||||
|
||||
// player_state->persistant[] indexes
|
||||
// these fields are the only part of player_state that isn't
|
||||
// cleared on respawn
|
||||
// NOTE: may not have more than 16
|
||||
typedef enum {
|
||||
PERS_SCORE, // !!! MUST NOT CHANGE, SERVER AND GAME BOTH REFERENCE !!!
|
||||
PERS_HITS, // total points damage inflicted so damage beeps can sound on change
|
||||
PERS_RANK, // player rank or team rank
|
||||
PERS_TEAM, // player team
|
||||
PERS_SPAWN_COUNT, // incremented every respawn
|
||||
PERS_PLAYEREVENTS, // 16 bits that can be flipped for events
|
||||
PERS_ATTACKER, // clientnum of last damage inflicter
|
||||
PERS_ATTACKEE_ARMOR, // health/armor of last person we attacked
|
||||
PERS_KILLED, // count of the number of times you died
|
||||
// player awards tracking
|
||||
PERS_IMPRESSIVE_COUNT, // two railgun hits in a row
|
||||
PERS_EXCELLENT_COUNT, // two successive kills in a short amount of time
|
||||
PERS_DEFEND_COUNT, // defend awards
|
||||
PERS_ASSIST_COUNT, // assist awards
|
||||
PERS_GAUNTLET_FRAG_COUNT, // kills with the guantlet
|
||||
PERS_CAPTURES // captures
|
||||
} persEnum_t;
|
||||
|
||||
|
||||
// entityState_t->eFlags
|
||||
#define EF_DEAD 0x00000001 // don't draw a foe marker over players with EF_DEAD
|
||||
#ifdef MISSIONPACK
|
||||
#define EF_TICKING 0x00000002 // used to make players play the prox mine ticking sound
|
||||
#endif
|
||||
#define EF_TELEPORT_BIT 0x00000004 // toggled every time the origin abruptly changes
|
||||
#define EF_AWARD_EXCELLENT 0x00000008 // draw an excellent sprite
|
||||
#define EF_PLAYER_EVENT 0x00000010
|
||||
#define EF_BOUNCE 0x00000010 // for missiles
|
||||
#define EF_BOUNCE_HALF 0x00000020 // for missiles
|
||||
#define EF_AWARD_GAUNTLET 0x00000040 // draw a gauntlet sprite
|
||||
#define EF_NODRAW 0x00000080 // may have an event, but no model (unspawned items)
|
||||
#define EF_FIRING 0x00000100 // for lightning gun
|
||||
#define EF_KAMIKAZE 0x00000200
|
||||
#define EF_MOVER_STOP 0x00000400 // will push otherwise
|
||||
#define EF_AWARD_CAP 0x00000800 // draw the capture sprite
|
||||
#define EF_TALK 0x00001000 // draw a talk balloon
|
||||
#define EF_CONNECTION 0x00002000 // draw a connection trouble sprite
|
||||
#define EF_VOTED 0x00004000 // already cast a vote
|
||||
#define EF_AWARD_IMPRESSIVE 0x00008000 // draw an impressive sprite
|
||||
#define EF_AWARD_DEFEND 0x00010000 // draw a defend sprite
|
||||
#define EF_AWARD_ASSIST 0x00020000 // draw a assist sprite
|
||||
#define EF_AWARD_DENIED 0x00040000 // denied
|
||||
#define EF_TEAMVOTED 0x00080000 // already cast a team vote
|
||||
|
||||
// NOTE: may not have more than 16
|
||||
typedef enum {
|
||||
PW_NONE,
|
||||
|
||||
PW_QUAD,
|
||||
PW_BATTLESUIT,
|
||||
PW_HASTE,
|
||||
PW_INVIS,
|
||||
PW_REGEN,
|
||||
PW_FLIGHT,
|
||||
|
||||
PW_REDFLAG,
|
||||
PW_BLUEFLAG,
|
||||
PW_NEUTRALFLAG,
|
||||
|
||||
PW_SCOUT,
|
||||
PW_GUARD,
|
||||
PW_DOUBLER,
|
||||
PW_AMMOREGEN,
|
||||
PW_INVULNERABILITY,
|
||||
|
||||
PW_NUM_POWERUPS
|
||||
|
||||
} powerup_t;
|
||||
|
||||
typedef enum {
|
||||
HI_NONE,
|
||||
|
||||
HI_TELEPORTER,
|
||||
HI_MEDKIT,
|
||||
HI_KAMIKAZE,
|
||||
HI_PORTAL,
|
||||
HI_INVULNERABILITY,
|
||||
|
||||
HI_NUM_HOLDABLE
|
||||
} holdable_t;
|
||||
|
||||
|
||||
typedef enum {
|
||||
WP_NONE,
|
||||
|
||||
WP_GAUNTLET,
|
||||
WP_MACHINEGUN,
|
||||
WP_SHOTGUN,
|
||||
WP_GRENADE_LAUNCHER,
|
||||
WP_ROCKET_LAUNCHER,
|
||||
WP_LIGHTNING,
|
||||
WP_RAILGUN,
|
||||
WP_PLASMAGUN,
|
||||
WP_BFG,
|
||||
WP_GRAPPLING_HOOK,
|
||||
#ifdef MISSIONPACK
|
||||
WP_NAILGUN,
|
||||
WP_PROX_LAUNCHER,
|
||||
WP_CHAINGUN,
|
||||
#endif
|
||||
|
||||
WP_NUM_WEAPONS
|
||||
} weapon_t;
|
||||
|
||||
|
||||
// reward sounds (stored in ps->persistant[PERS_PLAYEREVENTS])
|
||||
#define PLAYEREVENT_DENIEDREWARD 0x0001
|
||||
#define PLAYEREVENT_GAUNTLETREWARD 0x0002
|
||||
#define PLAYEREVENT_HOLYSHIT 0x0004
|
||||
|
||||
// entityState_t->event values
|
||||
// entity events are for effects that take place reletive
|
||||
// to an existing entities origin. Very network efficient.
|
||||
|
||||
// two bits at the top of the entityState->event field
|
||||
// will be incremented with each change in the event so
|
||||
// that an identical event started twice in a row can
|
||||
// be distinguished. And off the value with ~EV_EVENT_BITS
|
||||
// to retrieve the actual event number
|
||||
#define EV_EVENT_BIT1 0x00000100
|
||||
#define EV_EVENT_BIT2 0x00000200
|
||||
#define EV_EVENT_BITS (EV_EVENT_BIT1|EV_EVENT_BIT2)
|
||||
|
||||
#define EVENT_VALID_MSEC 300
|
||||
|
||||
typedef enum {
|
||||
EV_NONE,
|
||||
|
||||
EV_FOOTSTEP,
|
||||
EV_FOOTSTEP_METAL,
|
||||
EV_FOOTSPLASH,
|
||||
EV_FOOTWADE,
|
||||
EV_SWIM,
|
||||
|
||||
EV_STEP_4,
|
||||
EV_STEP_8,
|
||||
EV_STEP_12,
|
||||
EV_STEP_16,
|
||||
|
||||
EV_FALL_SHORT,
|
||||
EV_FALL_MEDIUM,
|
||||
EV_FALL_FAR,
|
||||
|
||||
EV_JUMP_PAD, // boing sound at origin, jump sound on player
|
||||
|
||||
EV_JUMP,
|
||||
EV_WATER_TOUCH, // foot touches
|
||||
EV_WATER_LEAVE, // foot leaves
|
||||
EV_WATER_UNDER, // head touches
|
||||
EV_WATER_CLEAR, // head leaves
|
||||
|
||||
EV_ITEM_PICKUP, // normal item pickups are predictable
|
||||
EV_GLOBAL_ITEM_PICKUP, // powerup / team sounds are broadcast to everyone
|
||||
|
||||
EV_NOAMMO,
|
||||
EV_CHANGE_WEAPON,
|
||||
EV_FIRE_WEAPON,
|
||||
|
||||
EV_USE_ITEM0,
|
||||
EV_USE_ITEM1,
|
||||
EV_USE_ITEM2,
|
||||
EV_USE_ITEM3,
|
||||
EV_USE_ITEM4,
|
||||
EV_USE_ITEM5,
|
||||
EV_USE_ITEM6,
|
||||
EV_USE_ITEM7,
|
||||
EV_USE_ITEM8,
|
||||
EV_USE_ITEM9,
|
||||
EV_USE_ITEM10,
|
||||
EV_USE_ITEM11,
|
||||
EV_USE_ITEM12,
|
||||
EV_USE_ITEM13,
|
||||
EV_USE_ITEM14,
|
||||
EV_USE_ITEM15,
|
||||
|
||||
EV_ITEM_RESPAWN,
|
||||
EV_ITEM_POP,
|
||||
EV_PLAYER_TELEPORT_IN,
|
||||
EV_PLAYER_TELEPORT_OUT,
|
||||
|
||||
EV_GRENADE_BOUNCE, // eventParm will be the soundindex
|
||||
|
||||
EV_GENERAL_SOUND,
|
||||
EV_GLOBAL_SOUND, // no attenuation
|
||||
EV_GLOBAL_TEAM_SOUND,
|
||||
|
||||
EV_BULLET_HIT_FLESH,
|
||||
EV_BULLET_HIT_WALL,
|
||||
|
||||
EV_MISSILE_HIT,
|
||||
EV_MISSILE_MISS,
|
||||
EV_MISSILE_MISS_METAL,
|
||||
EV_RAILTRAIL,
|
||||
EV_SHOTGUN,
|
||||
EV_BULLET, // otherEntity is the shooter
|
||||
|
||||
EV_PAIN,
|
||||
EV_DEATH1,
|
||||
EV_DEATH2,
|
||||
EV_DEATH3,
|
||||
EV_OBITUARY,
|
||||
|
||||
EV_POWERUP_QUAD,
|
||||
EV_POWERUP_BATTLESUIT,
|
||||
EV_POWERUP_REGEN,
|
||||
|
||||
EV_GIB_PLAYER, // gib a previously living player
|
||||
EV_SCOREPLUM, // score plum
|
||||
|
||||
//#ifdef MISSIONPACK
|
||||
EV_PROXIMITY_MINE_STICK,
|
||||
EV_PROXIMITY_MINE_TRIGGER,
|
||||
EV_KAMIKAZE, // kamikaze explodes
|
||||
EV_OBELISKEXPLODE, // obelisk explodes
|
||||
EV_OBELISKPAIN, // obelisk is in pain
|
||||
EV_INVUL_IMPACT, // invulnerability sphere impact
|
||||
EV_JUICED, // invulnerability juiced effect
|
||||
EV_LIGHTNINGBOLT, // lightning bolt bounced of invulnerability sphere
|
||||
//#endif
|
||||
|
||||
EV_DEBUG_LINE,
|
||||
EV_STOPLOOPINGSOUND,
|
||||
EV_TAUNT,
|
||||
EV_TAUNT_YES,
|
||||
EV_TAUNT_NO,
|
||||
EV_TAUNT_FOLLOWME,
|
||||
EV_TAUNT_GETFLAG,
|
||||
EV_TAUNT_GUARDBASE,
|
||||
EV_TAUNT_PATROL
|
||||
|
||||
} entity_event_t;
|
||||
|
||||
|
||||
typedef enum {
|
||||
GTS_RED_CAPTURE,
|
||||
GTS_BLUE_CAPTURE,
|
||||
GTS_RED_RETURN,
|
||||
GTS_BLUE_RETURN,
|
||||
GTS_RED_TAKEN,
|
||||
GTS_BLUE_TAKEN,
|
||||
GTS_REDOBELISK_ATTACKED,
|
||||
GTS_BLUEOBELISK_ATTACKED,
|
||||
GTS_REDTEAM_SCORED,
|
||||
GTS_BLUETEAM_SCORED,
|
||||
GTS_REDTEAM_TOOK_LEAD,
|
||||
GTS_BLUETEAM_TOOK_LEAD,
|
||||
GTS_TEAMS_ARE_TIED,
|
||||
GTS_KAMIKAZE
|
||||
} global_team_sound_t;
|
||||
|
||||
// animations
|
||||
typedef enum {
|
||||
BOTH_DEATH1,
|
||||
BOTH_DEAD1,
|
||||
BOTH_DEATH2,
|
||||
BOTH_DEAD2,
|
||||
BOTH_DEATH3,
|
||||
BOTH_DEAD3,
|
||||
|
||||
TORSO_GESTURE,
|
||||
|
||||
TORSO_ATTACK,
|
||||
TORSO_ATTACK2,
|
||||
|
||||
TORSO_DROP,
|
||||
TORSO_RAISE,
|
||||
|
||||
TORSO_STAND,
|
||||
TORSO_STAND2,
|
||||
|
||||
LEGS_WALKCR,
|
||||
LEGS_WALK,
|
||||
LEGS_RUN,
|
||||
LEGS_BACK,
|
||||
LEGS_SWIM,
|
||||
|
||||
LEGS_JUMP,
|
||||
LEGS_LAND,
|
||||
|
||||
LEGS_JUMPB,
|
||||
LEGS_LANDB,
|
||||
|
||||
LEGS_IDLE,
|
||||
LEGS_IDLECR,
|
||||
|
||||
LEGS_TURN,
|
||||
|
||||
TORSO_GETFLAG,
|
||||
TORSO_GUARDBASE,
|
||||
TORSO_PATROL,
|
||||
TORSO_FOLLOWME,
|
||||
TORSO_AFFIRMATIVE,
|
||||
TORSO_NEGATIVE,
|
||||
|
||||
MAX_ANIMATIONS,
|
||||
|
||||
LEGS_BACKCR,
|
||||
LEGS_BACKWALK,
|
||||
FLAG_RUN,
|
||||
FLAG_STAND,
|
||||
FLAG_STAND2RUN,
|
||||
|
||||
MAX_TOTALANIMATIONS
|
||||
} animNumber_t;
|
||||
|
||||
|
||||
typedef struct animation_s {
|
||||
int firstFrame;
|
||||
int numFrames;
|
||||
int loopFrames; // 0 to numFrames
|
||||
int frameLerp; // msec between frames
|
||||
int initialLerp; // msec to get to first frame
|
||||
int reversed; // true if animation is reversed
|
||||
int flipflop; // true if animation should flipflop back to base
|
||||
} animation_t;
|
||||
|
||||
|
||||
// flip the togglebit every time an animation
|
||||
// changes so a restart of the same anim can be detected
|
||||
#define ANIM_TOGGLEBIT 128
|
||||
|
||||
|
||||
typedef enum {
|
||||
TEAM_FREE,
|
||||
TEAM_RED,
|
||||
TEAM_BLUE,
|
||||
TEAM_SPECTATOR,
|
||||
|
||||
TEAM_NUM_TEAMS
|
||||
} team_t;
|
||||
|
||||
// Time between location updates
|
||||
#define TEAM_LOCATION_UPDATE_TIME 1000
|
||||
|
||||
// How many players on the overlay
|
||||
#define TEAM_MAXOVERLAY 32
|
||||
|
||||
//team task
|
||||
typedef enum {
|
||||
TEAMTASK_NONE,
|
||||
TEAMTASK_OFFENSE,
|
||||
TEAMTASK_DEFENSE,
|
||||
TEAMTASK_PATROL,
|
||||
TEAMTASK_FOLLOW,
|
||||
TEAMTASK_RETRIEVE,
|
||||
TEAMTASK_ESCORT,
|
||||
TEAMTASK_CAMP
|
||||
} teamtask_t;
|
||||
|
||||
// means of death
|
||||
typedef enum {
|
||||
MOD_UNKNOWN,
|
||||
MOD_SHOTGUN,
|
||||
MOD_GAUNTLET,
|
||||
MOD_MACHINEGUN,
|
||||
MOD_GRENADE,
|
||||
MOD_GRENADE_SPLASH,
|
||||
MOD_ROCKET,
|
||||
MOD_ROCKET_SPLASH,
|
||||
MOD_PLASMA,
|
||||
MOD_PLASMA_SPLASH,
|
||||
MOD_RAILGUN,
|
||||
MOD_LIGHTNING,
|
||||
MOD_BFG,
|
||||
MOD_BFG_SPLASH,
|
||||
MOD_WATER,
|
||||
MOD_SLIME,
|
||||
MOD_LAVA,
|
||||
MOD_CRUSH,
|
||||
MOD_TELEFRAG,
|
||||
MOD_FALLING,
|
||||
MOD_SUICIDE,
|
||||
MOD_TARGET_LASER,
|
||||
MOD_TRIGGER_HURT,
|
||||
#ifdef MISSIONPACK
|
||||
MOD_NAIL,
|
||||
MOD_CHAINGUN,
|
||||
MOD_PROXIMITY_MINE,
|
||||
MOD_KAMIKAZE,
|
||||
MOD_JUICED,
|
||||
#endif
|
||||
MOD_GRAPPLE
|
||||
} meansOfDeath_t;
|
||||
|
||||
|
||||
//---------------------------------------------------------
|
||||
|
||||
// gitem_t->type
|
||||
typedef enum {
|
||||
IT_BAD,
|
||||
IT_WEAPON, // EFX: rotate + upscale + minlight
|
||||
IT_AMMO, // EFX: rotate
|
||||
IT_ARMOR, // EFX: rotate + minlight
|
||||
IT_HEALTH, // EFX: static external sphere + rotating internal
|
||||
IT_POWERUP, // instant on, timer based
|
||||
// EFX: rotate + external ring that rotates
|
||||
IT_HOLDABLE, // single use, holdable item
|
||||
// EFX: rotate + bob
|
||||
IT_PERSISTANT_POWERUP,
|
||||
IT_TEAM
|
||||
} itemType_t;
|
||||
|
||||
#define MAX_ITEM_MODELS 4
|
||||
|
||||
typedef struct gitem_s {
|
||||
char *classname; // spawning name
|
||||
char *pickup_sound;
|
||||
char *world_model[MAX_ITEM_MODELS];
|
||||
|
||||
char *icon;
|
||||
char *pickup_name; // for printing on pickup
|
||||
|
||||
int quantity; // for ammo how much, or duration of powerup
|
||||
itemType_t giType; // IT_* flags
|
||||
|
||||
int giTag;
|
||||
|
||||
char *precaches; // string of all models and images this item will use
|
||||
char *sounds; // string of all sounds this item will use
|
||||
} gitem_t;
|
||||
|
||||
// included in both the game dll and the client
|
||||
extern gitem_t bg_itemlist[];
|
||||
extern int bg_numItems;
|
||||
|
||||
gitem_t *BG_FindItem( const char *pickupName );
|
||||
gitem_t *BG_FindItemForWeapon( weapon_t weapon );
|
||||
gitem_t *BG_FindItemForPowerup( powerup_t pw );
|
||||
gitem_t *BG_FindItemForHoldable( holdable_t pw );
|
||||
#define ITEM_INDEX(x) ((x)-bg_itemlist)
|
||||
|
||||
qboolean BG_CanItemBeGrabbed( int gametype, const entityState_t *ent, const playerState_t *ps );
|
||||
|
||||
|
||||
// g_dmflags->integer flags
|
||||
#define DF_NO_FALLING 8
|
||||
#define DF_FIXED_FOV 16
|
||||
#define DF_NO_FOOTSTEPS 32
|
||||
|
||||
// content masks
|
||||
#define MASK_ALL (-1)
|
||||
#define MASK_SOLID (CONTENTS_SOLID)
|
||||
#define MASK_PLAYERSOLID (CONTENTS_SOLID|CONTENTS_PLAYERCLIP|CONTENTS_BODY)
|
||||
#define MASK_DEADSOLID (CONTENTS_SOLID|CONTENTS_PLAYERCLIP)
|
||||
#define MASK_WATER (CONTENTS_WATER|CONTENTS_LAVA|CONTENTS_SLIME)
|
||||
#define MASK_OPAQUE (CONTENTS_SOLID|CONTENTS_SLIME|CONTENTS_LAVA)
|
||||
#define MASK_SHOT (CONTENTS_SOLID|CONTENTS_BODY|CONTENTS_CORPSE)
|
||||
|
||||
|
||||
//
|
||||
// entityState_t->eType
|
||||
//
|
||||
typedef enum {
|
||||
ET_GENERAL,
|
||||
ET_PLAYER,
|
||||
ET_ITEM,
|
||||
ET_MISSILE,
|
||||
ET_MOVER,
|
||||
ET_BEAM,
|
||||
ET_PORTAL,
|
||||
ET_SPEAKER,
|
||||
ET_PUSH_TRIGGER,
|
||||
ET_TELEPORT_TRIGGER,
|
||||
ET_INVISIBLE,
|
||||
ET_GRAPPLE, // grapple hooked on wall
|
||||
ET_TEAM,
|
||||
|
||||
ET_EVENTS // any of the EV_* events can be added freestanding
|
||||
// by setting eType to ET_EVENTS + eventNum
|
||||
// this avoids having to set eFlags and eventNum
|
||||
} entityType_t;
|
||||
|
||||
|
||||
|
||||
void BG_EvaluateTrajectory( const trajectory_t *tr, int atTime, vec3_t result );
|
||||
void BG_EvaluateTrajectoryDelta( const trajectory_t *tr, int atTime, vec3_t result );
|
||||
|
||||
void BG_AddPredictableEventToPlayerstate( int newEvent, int eventParm, playerState_t *ps );
|
||||
|
||||
void BG_TouchJumpPad( playerState_t *ps, entityState_t *jumppad );
|
||||
|
||||
void BG_PlayerStateToEntityState( playerState_t *ps, entityState_t *s, qboolean snap );
|
||||
void BG_PlayerStateToEntityStateExtraPolate( playerState_t *ps, entityState_t *s, int time, qboolean snap );
|
||||
|
||||
qboolean BG_PlayerTouchesItem( playerState_t *ps, entityState_t *item, int atTime );
|
||||
|
||||
|
||||
#define ARENAS_PER_TIER 4
|
||||
#define MAX_ARENAS 1024
|
||||
#define MAX_ARENAS_TEXT 8192
|
||||
|
||||
#define MAX_BOTS 1024
|
||||
#define MAX_BOTS_TEXT 8192
|
||||
|
||||
|
||||
// Kamikaze
|
||||
|
||||
// 1st shockwave times
|
||||
#define KAMI_SHOCKWAVE_STARTTIME 0
|
||||
#define KAMI_SHOCKWAVEFADE_STARTTIME 1500
|
||||
#define KAMI_SHOCKWAVE_ENDTIME 2000
|
||||
// explosion/implosion times
|
||||
#define KAMI_EXPLODE_STARTTIME 250
|
||||
#define KAMI_IMPLODE_STARTTIME 2000
|
||||
#define KAMI_IMPLODE_ENDTIME 2250
|
||||
// 2nd shockwave times
|
||||
#define KAMI_SHOCKWAVE2_STARTTIME 2000
|
||||
#define KAMI_SHOCKWAVE2FADE_STARTTIME 2500
|
||||
#define KAMI_SHOCKWAVE2_ENDTIME 3000
|
||||
// radius of the models without scaling
|
||||
#define KAMI_SHOCKWAVEMODEL_RADIUS 88
|
||||
#define KAMI_BOOMSPHEREMODEL_RADIUS 72
|
||||
// maximum radius of the models during the effect
|
||||
#define KAMI_SHOCKWAVE_MAXRADIUS 1320
|
||||
#define KAMI_BOOMSPHERE_MAXRADIUS 720
|
||||
#define KAMI_SHOCKWAVE2_MAXRADIUS 704
|
||||
|
||||
8308
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/q_math.asm.svn-base
Executable file
8308
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/q_math.asm.svn-base
Executable file
File diff suppressed because it is too large
Load Diff
1287
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/q_math.c.svn-base
Executable file
1287
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/q_math.c.svn-base
Executable file
File diff suppressed because it is too large
Load Diff
6662
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/q_shared.asm.svn-base
Executable file
6662
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/q_shared.asm.svn-base
Executable file
File diff suppressed because it is too large
Load Diff
1238
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/q_shared.c.svn-base
Executable file
1238
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/q_shared.c.svn-base
Executable file
File diff suppressed because it is too large
Load Diff
1405
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/q_shared.h.svn-base
Executable file
1405
code/debug-x86-Linux-2.3/Q3/q3_ui/game/.svn/text-base/q_shared.h.svn-base
Executable file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,60 @@
|
||||
// Copyright (C) 1999-2000 Id Software, Inc.
|
||||
//
|
||||
// This file must be identical in the quake and utils directories
|
||||
|
||||
// contents flags are seperate bits
|
||||
// a given brush can contribute multiple content bits
|
||||
|
||||
// these definitions also need to be in q_shared.h!
|
||||
|
||||
#define CONTENTS_SOLID 1 // an eye is never valid in a solid
|
||||
#define CONTENTS_LAVA 8
|
||||
#define CONTENTS_SLIME 16
|
||||
#define CONTENTS_WATER 32
|
||||
#define CONTENTS_FOG 64
|
||||
|
||||
#define CONTENTS_NOTTEAM1 0x0080
|
||||
#define CONTENTS_NOTTEAM2 0x0100
|
||||
#define CONTENTS_NOBOTCLIP 0x0200
|
||||
|
||||
#define CONTENTS_AREAPORTAL 0x8000
|
||||
|
||||
#define CONTENTS_PLAYERCLIP 0x10000
|
||||
#define CONTENTS_MONSTERCLIP 0x20000
|
||||
//bot specific contents types
|
||||
#define CONTENTS_TELEPORTER 0x40000
|
||||
#define CONTENTS_JUMPPAD 0x80000
|
||||
#define CONTENTS_CLUSTERPORTAL 0x100000
|
||||
#define CONTENTS_DONOTENTER 0x200000
|
||||
#define CONTENTS_BOTCLIP 0x400000
|
||||
#define CONTENTS_MOVER 0x800000
|
||||
|
||||
#define CONTENTS_ORIGIN 0x1000000 // removed before bsping an entity
|
||||
|
||||
#define CONTENTS_BODY 0x2000000 // should never be on a brush, only in game
|
||||
#define CONTENTS_CORPSE 0x4000000
|
||||
#define CONTENTS_DETAIL 0x8000000 // brushes not used for the bsp
|
||||
#define CONTENTS_STRUCTURAL 0x10000000 // brushes used for the bsp
|
||||
#define CONTENTS_TRANSLUCENT 0x20000000 // don't consume surface fragments inside
|
||||
#define CONTENTS_TRIGGER 0x40000000
|
||||
#define CONTENTS_NODROP 0x80000000 // don't leave bodies or items (death fog, lava)
|
||||
|
||||
#define SURF_NODAMAGE 0x1 // never give falling damage
|
||||
#define SURF_SLICK 0x2 // effects game physics
|
||||
#define SURF_SKY 0x4 // lighting from environment map
|
||||
#define SURF_LADDER 0x8
|
||||
#define SURF_NOIMPACT 0x10 // don't make missile explosions
|
||||
#define SURF_NOMARKS 0x20 // don't leave missile marks
|
||||
#define SURF_FLESH 0x40 // make flesh sounds and effects
|
||||
#define SURF_NODRAW 0x80 // don't generate a drawsurface at all
|
||||
#define SURF_HINT 0x100 // make a primary bsp splitter
|
||||
#define SURF_SKIP 0x200 // completely ignore, allowing non-closed brushes
|
||||
#define SURF_NOLIGHTMAP 0x400 // surface doesn't need a lightmap
|
||||
#define SURF_POINTLIGHT 0x800 // generate lighting info at vertexes
|
||||
#define SURF_METALSTEPS 0x1000 // clanking footsteps
|
||||
#define SURF_NOSTEPS 0x2000 // no footstep sounds
|
||||
#define SURF_NONSOLID 0x4000 // don't collide against curves with this set
|
||||
#define SURF_LIGHTFILTER 0x8000 // act as a light filter during q3map -light
|
||||
#define SURF_ALPHASHADOW 0x10000 // do per-pixel light shadow casting in q3map
|
||||
#define SURF_NODLIGHT 0x20000 // don't dlight even if solid (solid lava, skies)
|
||||
#define SURF_DUST 0x40000 // leave a dust trail when walking on this surface
|
||||
23
code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/.svn/all-wcprops
Executable file
23
code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/.svn/all-wcprops
Executable file
@@ -0,0 +1,23 @@
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 80
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS
|
||||
END
|
||||
Repository
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 91
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/Repository
|
||||
END
|
||||
Root
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 85
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/Root
|
||||
END
|
||||
Entries
|
||||
K 25
|
||||
svn:wc:ra_dav:version-url
|
||||
V 88
|
||||
/svn/aklabs/!svn/ver/9/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/Entries
|
||||
END
|
||||
130
code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/.svn/entries
Executable file
130
code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/.svn/entries
Executable file
@@ -0,0 +1,130 @@
|
||||
10
|
||||
|
||||
dir
|
||||
44
|
||||
https://127.0.0.1/svn/aklabs/trunk/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS
|
||||
https://127.0.0.1/svn/aklabs
|
||||
|
||||
|
||||
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
eb184899-6090-47d4-a65b-558f62f6ea1c
|
||||
|
||||
Repository
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.198248Z
|
||||
877aa9a55c9230b5ee0b96654c9bd2c7
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
61
|
||||
|
||||
Root
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.198248Z
|
||||
7af14a164593104c1e7a07a572dd352a
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
24
|
||||
|
||||
Entries
|
||||
file
|
||||
|
||||
|
||||
|
||||
|
||||
2010-02-05T03:38:05.213873Z
|
||||
fb3236ee6066d8726702158b68d11278
|
||||
2007-05-26T21:34:02.309037Z
|
||||
9
|
||||
andrew
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
612
|
||||
|
||||
14
code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/.svn/text-base/Entries.svn-base
Executable file
14
code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/.svn/text-base/Entries.svn-base
Executable file
@@ -0,0 +1,14 @@
|
||||
/.consign/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/bg_lib.asm/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/bg_lib.c/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/bg_lib.h/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/bg_misc.asm/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/bg_misc.c/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/bg_public.h/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/q_math.asm/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/q_math.c/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/q_shared.asm/1.1.1.1/Sat Dec 31 23:57:15 2005//
|
||||
/q_shared.c/1.1.1.1/Sat Dec 31 23:57:15 2005//
|
||||
/q_shared.h/1.1.1.1/Sat Dec 31 23:57:15 2005//
|
||||
/surfaceflags.h/1.1.1.1/Sat Dec 31 23:57:15 2005//
|
||||
D
|
||||
@@ -0,0 +1 @@
|
||||
games/quake3/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game
|
||||
1
code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/.svn/text-base/Root.svn-base
Executable file
1
code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/.svn/text-base/Root.svn-base
Executable file
@@ -0,0 +1 @@
|
||||
andrew@gabbo:/home/cvsd
|
||||
14
code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/Entries
Executable file
14
code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/Entries
Executable file
@@ -0,0 +1,14 @@
|
||||
/.consign/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/bg_lib.asm/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/bg_lib.c/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/bg_lib.h/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/bg_misc.asm/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/bg_misc.c/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/bg_public.h/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/q_math.asm/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/q_math.c/1.1.1.1/Sat Dec 31 23:57:14 2005//
|
||||
/q_shared.asm/1.1.1.1/Sat Dec 31 23:57:15 2005//
|
||||
/q_shared.c/1.1.1.1/Sat Dec 31 23:57:15 2005//
|
||||
/q_shared.h/1.1.1.1/Sat Dec 31 23:57:15 2005//
|
||||
/surfaceflags.h/1.1.1.1/Sat Dec 31 23:57:15 2005//
|
||||
D
|
||||
1
code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/Repository
Executable file
1
code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/Repository
Executable file
@@ -0,0 +1 @@
|
||||
games/quake3/hypermod/code/debug-x86-Linux-2.3/Q3/q3_ui/game
|
||||
1
code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/Root
Executable file
1
code/debug-x86-Linux-2.3/Q3/q3_ui/game/CVS/Root
Executable file
@@ -0,0 +1 @@
|
||||
andrew@gabbo:/home/cvsd
|
||||
5873
code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_lib.asm
Executable file
5873
code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_lib.asm
Executable file
File diff suppressed because it is too large
Load Diff
1326
code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_lib.c
Executable file
1326
code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_lib.c
Executable file
File diff suppressed because it is too large
Load Diff
70
code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_lib.h
Executable file
70
code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_lib.h
Executable file
@@ -0,0 +1,70 @@
|
||||
// bg_lib.h -- standard C library replacement routines used by code
|
||||
// compiled for the virtual machine
|
||||
|
||||
// This file is NOT included on native builds
|
||||
|
||||
typedef int size_t;
|
||||
|
||||
typedef char * va_list;
|
||||
#define _INTSIZEOF(n) ( (sizeof(n) + sizeof(int) - 1) & ~(sizeof(int) - 1) )
|
||||
#define va_start(ap,v) ( ap = (va_list)&v + _INTSIZEOF(v) )
|
||||
#define va_arg(ap,t) ( *(t *)((ap += _INTSIZEOF(t)) - _INTSIZEOF(t)) )
|
||||
#define va_end(ap) ( ap = (va_list)0 )
|
||||
|
||||
#define CHAR_BIT 8 /* number of bits in a char */
|
||||
#define SCHAR_MIN (-128) /* minimum signed char value */
|
||||
#define SCHAR_MAX 127 /* maximum signed char value */
|
||||
#define UCHAR_MAX 0xff /* maximum unsigned char value */
|
||||
|
||||
#define SHRT_MIN (-32768) /* minimum (signed) short value */
|
||||
#define SHRT_MAX 32767 /* maximum (signed) short value */
|
||||
#define USHRT_MAX 0xffff /* maximum unsigned short value */
|
||||
#define INT_MIN (-2147483647 - 1) /* minimum (signed) int value */
|
||||
#define INT_MAX 2147483647 /* maximum (signed) int value */
|
||||
#define UINT_MAX 0xffffffff /* maximum unsigned int value */
|
||||
#define LONG_MIN (-2147483647L - 1) /* minimum (signed) long value */
|
||||
#define LONG_MAX 2147483647L /* maximum (signed) long value */
|
||||
#define ULONG_MAX 0xffffffffUL /* maximum unsigned long value */
|
||||
|
||||
// Misc functions
|
||||
typedef int cmp_t(const void *, const void *);
|
||||
void qsort(void *a, size_t n, size_t es, cmp_t *cmp);
|
||||
void srand( unsigned seed );
|
||||
int rand( void );
|
||||
|
||||
// String functions
|
||||
size_t strlen( const char *string );
|
||||
char *strcat( char *strDestination, const char *strSource );
|
||||
char *strcpy( char *strDestination, const char *strSource );
|
||||
int strcmp( const char *string1, const char *string2 );
|
||||
char *strchr( const char *string, int c );
|
||||
char *strstr( const char *string, const char *strCharSet );
|
||||
char *strncpy( char *strDest, const char *strSource, size_t count );
|
||||
int tolower( int c );
|
||||
int toupper( int c );
|
||||
|
||||
double atof( const char *string );
|
||||
double _atof( const char **stringPtr );
|
||||
int atoi( const char *string );
|
||||
int _atoi( const char **stringPtr );
|
||||
|
||||
int vsprintf( char *buffer, const char *fmt, va_list argptr );
|
||||
int sscanf( const char *buffer, const char *fmt, ... );
|
||||
|
||||
// Memory functions
|
||||
void *memmove( void *dest, const void *src, size_t count );
|
||||
void *memset( void *dest, int c, size_t count );
|
||||
void *memcpy( void *dest, const void *src, size_t count );
|
||||
|
||||
// Math functions
|
||||
double ceil( double x );
|
||||
double floor( double x );
|
||||
double sqrt( double x );
|
||||
double sin( double x );
|
||||
double cos( double x );
|
||||
double atan2( double y, double x );
|
||||
double tan( double x );
|
||||
int abs( int n );
|
||||
double fabs( double x );
|
||||
double acos( double x );
|
||||
|
||||
10871
code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_misc.asm
Executable file
10871
code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_misc.asm
Executable file
File diff suppressed because it is too large
Load Diff
1584
code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_misc.c
Executable file
1584
code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_misc.c
Executable file
File diff suppressed because it is too large
Load Diff
718
code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_public.h
Executable file
718
code/debug-x86-Linux-2.3/Q3/q3_ui/game/bg_public.h
Executable file
@@ -0,0 +1,718 @@
|
||||
// Copyright (C) 1999-2000 Id Software, Inc.
|
||||
//
|
||||
// bg_public.h -- definitions shared by both the server game and client game modules
|
||||
|
||||
// because games can change separately from the main system version, we need a
|
||||
// second version that must match between game and cgame
|
||||
|
||||
#define GAME_VERSION "baseq3-1"
|
||||
|
||||
#define DEFAULT_GRAVITY 800
|
||||
#define GIB_HEALTH -40
|
||||
#define ARMOR_PROTECTION 0.66
|
||||
|
||||
#define MAX_ITEMS 256
|
||||
|
||||
#define RANK_TIED_FLAG 0x4000
|
||||
|
||||
#define DEFAULT_SHOTGUN_SPREAD 700
|
||||
#define DEFAULT_SHOTGUN_COUNT 11
|
||||
|
||||
#define ITEM_RADIUS 15 // item sizes are needed for client side pickup detection
|
||||
|
||||
#define LIGHTNING_RANGE 768
|
||||
|
||||
#define SCORE_NOT_PRESENT -9999 // for the CS_SCORES[12] when only one player is present
|
||||
|
||||
#define VOTE_TIME 30000 // 30 seconds before vote times out
|
||||
|
||||
#define MINS_Z -24
|
||||
#define DEFAULT_VIEWHEIGHT 26
|
||||
#define CROUCH_VIEWHEIGHT 12
|
||||
#define DEAD_VIEWHEIGHT -16
|
||||
|
||||
//
|
||||
// config strings are a general means of communicating variable length strings
|
||||
// from the server to all connected clients.
|
||||
//
|
||||
|
||||
// CS_SERVERINFO and CS_SYSTEMINFO are defined in q_shared.h
|
||||
#define CS_MUSIC 2
|
||||
#define CS_MESSAGE 3 // from the map worldspawn's message field
|
||||
#define CS_MOTD 4 // g_motd string for server message of the day
|
||||
#define CS_WARMUP 5 // server time when the match will be restarted
|
||||
#define CS_SCORES1 6
|
||||
#define CS_SCORES2 7
|
||||
#define CS_VOTE_TIME 8
|
||||
#define CS_VOTE_STRING 9
|
||||
#define CS_VOTE_YES 10
|
||||
#define CS_VOTE_NO 11
|
||||
|
||||
#define CS_TEAMVOTE_TIME 12
|
||||
#define CS_TEAMVOTE_STRING 14
|
||||
#define CS_TEAMVOTE_YES 16
|
||||
#define CS_TEAMVOTE_NO 18
|
||||
|
||||
#define CS_GAME_VERSION 20
|
||||
#define CS_LEVEL_START_TIME 21 // so the timer only shows the current level
|
||||
#define CS_INTERMISSION 22 // when 1, fraglimit/timelimit has been hit and intermission will start in a second or two
|
||||
#define CS_FLAGSTATUS 23 // string indicating flag status in CTF
|
||||
#define CS_SHADERSTATE 24
|
||||
#define CS_BOTINFO 25
|
||||
|
||||
#define CS_ITEMS 27 // string of 0's and 1's that tell which items are present
|
||||
|
||||
#define CS_MODELS 32
|
||||
#define CS_SOUNDS (CS_MODELS+MAX_MODELS)
|
||||
#define CS_PLAYERS (CS_SOUNDS+MAX_SOUNDS)
|
||||
#define CS_LOCATIONS (CS_PLAYERS+MAX_CLIENTS)
|
||||
#define CS_PARTICLES (CS_LOCATIONS+MAX_LOCATIONS)
|
||||
|
||||
#define CS_MAX (CS_PARTICLES+MAX_LOCATIONS)
|
||||
|
||||
#if (CS_MAX) > MAX_CONFIGSTRINGS
|
||||
#error overflow: (CS_MAX) > MAX_CONFIGSTRINGS
|
||||
#endif
|
||||
|
||||
typedef enum {
|
||||
GT_FFA, // free for all
|
||||
GT_TOURNAMENT, // one on one tournament
|
||||
GT_SINGLE_PLAYER, // single player ffa
|
||||
|
||||
//-- team games go after this --
|
||||
|
||||
GT_TEAM, // team deathmatch
|
||||
GT_CTF, // capture the flag
|
||||
GT_1FCTF,
|
||||
GT_OBELISK,
|
||||
GT_HARVESTER,
|
||||
GT_MAX_GAME_TYPE
|
||||
} gametype_t;
|
||||
|
||||
typedef enum { GENDER_MALE, GENDER_FEMALE, GENDER_NEUTER } gender_t;
|
||||
|
||||
/*
|
||||
===================================================================================
|
||||
|
||||
PMOVE MODULE
|
||||
|
||||
The pmove code takes a player_state_t and a usercmd_t and generates a new player_state_t
|
||||
and some other output data. Used for local prediction on the client game and true
|
||||
movement on the server game.
|
||||
===================================================================================
|
||||
*/
|
||||
|
||||
typedef enum {
|
||||
PM_NORMAL, // can accelerate and turn
|
||||
PM_NOCLIP, // noclip movement
|
||||
PM_SPECTATOR, // still run into walls
|
||||
PM_DEAD, // no acceleration or turning, but free falling
|
||||
PM_FREEZE, // stuck in place with no control
|
||||
PM_INTERMISSION, // no movement or status bar
|
||||
PM_SPINTERMISSION // no movement or status bar
|
||||
} pmtype_t;
|
||||
|
||||
typedef enum {
|
||||
WEAPON_READY,
|
||||
WEAPON_RAISING,
|
||||
WEAPON_DROPPING,
|
||||
WEAPON_FIRING
|
||||
} weaponstate_t;
|
||||
|
||||
// pmove->pm_flags
|
||||
#define PMF_DUCKED 1
|
||||
#define PMF_JUMP_HELD 2
|
||||
#define PMF_BACKWARDS_JUMP 8 // go into backwards land
|
||||
#define PMF_BACKWARDS_RUN 16 // coast down to backwards run
|
||||
#define PMF_TIME_LAND 32 // pm_time is time before rejump
|
||||
#define PMF_TIME_KNOCKBACK 64 // pm_time is an air-accelerate only time
|
||||
#define PMF_TIME_WATERJUMP 256 // pm_time is waterjump
|
||||
#define PMF_RESPAWNED 512 // clear after attack and jump buttons come up
|
||||
#define PMF_USE_ITEM_HELD 1024
|
||||
#define PMF_GRAPPLE_PULL 2048 // pull towards grapple location
|
||||
#define PMF_FOLLOW 4096 // spectate following another player
|
||||
#define PMF_SCOREBOARD 8192 // spectate as a scoreboard
|
||||
#define PMF_INVULEXPAND 16384 // invulnerability sphere set to full size
|
||||
|
||||
#define PMF_ALL_TIMES (PMF_TIME_WATERJUMP|PMF_TIME_LAND|PMF_TIME_KNOCKBACK)
|
||||
|
||||
#define MAXTOUCH 32
|
||||
typedef struct {
|
||||
// state (in / out)
|
||||
playerState_t *ps;
|
||||
|
||||
// command (in)
|
||||
usercmd_t cmd;
|
||||
int tracemask; // collide against these types of surfaces
|
||||
int debugLevel; // if set, diagnostic output will be printed
|
||||
qboolean noFootsteps; // if the game is setup for no footsteps by the server
|
||||
qboolean gauntletHit; // true if a gauntlet attack would actually hit something
|
||||
|
||||
int framecount;
|
||||
|
||||
// results (out)
|
||||
int numtouch;
|
||||
int touchents[MAXTOUCH];
|
||||
|
||||
vec3_t mins, maxs; // bounding box size
|
||||
|
||||
int watertype;
|
||||
int waterlevel;
|
||||
|
||||
float xyspeed;
|
||||
|
||||
// for fixed msec Pmove
|
||||
int pmove_fixed;
|
||||
int pmove_msec;
|
||||
|
||||
// callbacks to test the world
|
||||
// these will be different functions during game and cgame
|
||||
void (*trace)( trace_t *results, const vec3_t start, const vec3_t mins, const vec3_t maxs, const vec3_t end, int passEntityNum, int contentMask );
|
||||
int (*pointcontents)( const vec3_t point, int passEntityNum );
|
||||
} pmove_t;
|
||||
|
||||
// if a full pmove isn't done on the client, you can just update the angles
|
||||
void PM_UpdateViewAngles( playerState_t *ps, const usercmd_t *cmd );
|
||||
void Pmove (pmove_t *pmove);
|
||||
|
||||
//===================================================================================
|
||||
|
||||
|
||||
// player_state->stats[] indexes
|
||||
// NOTE: may not have more than 16
|
||||
typedef enum {
|
||||
STAT_HEALTH,
|
||||
STAT_HOLDABLE_ITEM,
|
||||
#ifdef MISSIONPACK
|
||||
STAT_PERSISTANT_POWERUP,
|
||||
#endif
|
||||
STAT_WEAPONS, // 16 bit fields
|
||||
STAT_ARMOR,
|
||||
STAT_DEAD_YAW, // look this direction when dead (FIXME: get rid of?)
|
||||
STAT_CLIENTS_READY, // bit mask of clients wishing to exit the intermission (FIXME: configstring?)
|
||||
STAT_MAX_HEALTH // health / armor limit, changable by handicap
|
||||
} statIndex_t;
|
||||
|
||||
|
||||
// player_state->persistant[] indexes
|
||||
// these fields are the only part of player_state that isn't
|
||||
// cleared on respawn
|
||||
// NOTE: may not have more than 16
|
||||
typedef enum {
|
||||
PERS_SCORE, // !!! MUST NOT CHANGE, SERVER AND GAME BOTH REFERENCE !!!
|
||||
PERS_HITS, // total points damage inflicted so damage beeps can sound on change
|
||||
PERS_RANK, // player rank or team rank
|
||||
PERS_TEAM, // player team
|
||||
PERS_SPAWN_COUNT, // incremented every respawn
|
||||
PERS_PLAYEREVENTS, // 16 bits that can be flipped for events
|
||||
PERS_ATTACKER, // clientnum of last damage inflicter
|
||||
PERS_ATTACKEE_ARMOR, // health/armor of last person we attacked
|
||||
PERS_KILLED, // count of the number of times you died
|
||||
// player awards tracking
|
||||
PERS_IMPRESSIVE_COUNT, // two railgun hits in a row
|
||||
PERS_EXCELLENT_COUNT, // two successive kills in a short amount of time
|
||||
PERS_DEFEND_COUNT, // defend awards
|
||||
PERS_ASSIST_COUNT, // assist awards
|
||||
PERS_GAUNTLET_FRAG_COUNT, // kills with the guantlet
|
||||
PERS_CAPTURES // captures
|
||||
} persEnum_t;
|
||||
|
||||
|
||||
// entityState_t->eFlags
|
||||
#define EF_DEAD 0x00000001 // don't draw a foe marker over players with EF_DEAD
|
||||
#ifdef MISSIONPACK
|
||||
#define EF_TICKING 0x00000002 // used to make players play the prox mine ticking sound
|
||||
#endif
|
||||
#define EF_TELEPORT_BIT 0x00000004 // toggled every time the origin abruptly changes
|
||||
#define EF_AWARD_EXCELLENT 0x00000008 // draw an excellent sprite
|
||||
#define EF_PLAYER_EVENT 0x00000010
|
||||
#define EF_BOUNCE 0x00000010 // for missiles
|
||||
#define EF_BOUNCE_HALF 0x00000020 // for missiles
|
||||
#define EF_AWARD_GAUNTLET 0x00000040 // draw a gauntlet sprite
|
||||
#define EF_NODRAW 0x00000080 // may have an event, but no model (unspawned items)
|
||||
#define EF_FIRING 0x00000100 // for lightning gun
|
||||
#define EF_KAMIKAZE 0x00000200
|
||||
#define EF_MOVER_STOP 0x00000400 // will push otherwise
|
||||
#define EF_AWARD_CAP 0x00000800 // draw the capture sprite
|
||||
#define EF_TALK 0x00001000 // draw a talk balloon
|
||||
#define EF_CONNECTION 0x00002000 // draw a connection trouble sprite
|
||||
#define EF_VOTED 0x00004000 // already cast a vote
|
||||
#define EF_AWARD_IMPRESSIVE 0x00008000 // draw an impressive sprite
|
||||
#define EF_AWARD_DEFEND 0x00010000 // draw a defend sprite
|
||||
#define EF_AWARD_ASSIST 0x00020000 // draw a assist sprite
|
||||
#define EF_AWARD_DENIED 0x00040000 // denied
|
||||
#define EF_TEAMVOTED 0x00080000 // already cast a team vote
|
||||
|
||||
// NOTE: may not have more than 16
|
||||
typedef enum {
|
||||
PW_NONE,
|
||||
|
||||
PW_QUAD,
|
||||
PW_BATTLESUIT,
|
||||
PW_HASTE,
|
||||
PW_INVIS,
|
||||
PW_REGEN,
|
||||
PW_FLIGHT,
|
||||
|
||||
PW_REDFLAG,
|
||||
PW_BLUEFLAG,
|
||||
PW_NEUTRALFLAG,
|
||||
|
||||
PW_SCOUT,
|
||||
PW_GUARD,
|
||||
PW_DOUBLER,
|
||||
PW_AMMOREGEN,
|
||||
PW_INVULNERABILITY,
|
||||
|
||||
PW_NUM_POWERUPS
|
||||
|
||||
} powerup_t;
|
||||
|
||||
typedef enum {
|
||||
HI_NONE,
|
||||
|
||||
HI_TELEPORTER,
|
||||
HI_MEDKIT,
|
||||
HI_KAMIKAZE,
|
||||
HI_PORTAL,
|
||||
HI_INVULNERABILITY,
|
||||
|
||||
HI_NUM_HOLDABLE
|
||||
} holdable_t;
|
||||
|
||||
|
||||
typedef enum {
|
||||
WP_NONE,
|
||||
|
||||
WP_GAUNTLET,
|
||||
WP_MACHINEGUN,
|
||||
WP_SHOTGUN,
|
||||
WP_GRENADE_LAUNCHER,
|
||||
WP_ROCKET_LAUNCHER,
|
||||
WP_LIGHTNING,
|
||||
WP_RAILGUN,
|
||||
WP_PLASMAGUN,
|
||||
WP_BFG,
|
||||
WP_GRAPPLING_HOOK,
|
||||
#ifdef MISSIONPACK
|
||||
WP_NAILGUN,
|
||||
WP_PROX_LAUNCHER,
|
||||
WP_CHAINGUN,
|
||||
#endif
|
||||
|
||||
WP_NUM_WEAPONS
|
||||
} weapon_t;
|
||||
|
||||
|
||||
// reward sounds (stored in ps->persistant[PERS_PLAYEREVENTS])
|
||||
#define PLAYEREVENT_DENIEDREWARD 0x0001
|
||||
#define PLAYEREVENT_GAUNTLETREWARD 0x0002
|
||||
#define PLAYEREVENT_HOLYSHIT 0x0004
|
||||
|
||||
// entityState_t->event values
|
||||
// entity events are for effects that take place reletive
|
||||
// to an existing entities origin. Very network efficient.
|
||||
|
||||
// two bits at the top of the entityState->event field
|
||||
// will be incremented with each change in the event so
|
||||
// that an identical event started twice in a row can
|
||||
// be distinguished. And off the value with ~EV_EVENT_BITS
|
||||
// to retrieve the actual event number
|
||||
#define EV_EVENT_BIT1 0x00000100
|
||||
#define EV_EVENT_BIT2 0x00000200
|
||||
#define EV_EVENT_BITS (EV_EVENT_BIT1|EV_EVENT_BIT2)
|
||||
|
||||
#define EVENT_VALID_MSEC 300
|
||||
|
||||
typedef enum {
|
||||
EV_NONE,
|
||||
|
||||
EV_FOOTSTEP,
|
||||
EV_FOOTSTEP_METAL,
|
||||
EV_FOOTSPLASH,
|
||||
EV_FOOTWADE,
|
||||
EV_SWIM,
|
||||
|
||||
EV_STEP_4,
|
||||
EV_STEP_8,
|
||||
EV_STEP_12,
|
||||
EV_STEP_16,
|
||||
|
||||
EV_FALL_SHORT,
|
||||
EV_FALL_MEDIUM,
|
||||
EV_FALL_FAR,
|
||||
|
||||
EV_JUMP_PAD, // boing sound at origin, jump sound on player
|
||||
|
||||
EV_JUMP,
|
||||
EV_WATER_TOUCH, // foot touches
|
||||
EV_WATER_LEAVE, // foot leaves
|
||||
EV_WATER_UNDER, // head touches
|
||||
EV_WATER_CLEAR, // head leaves
|
||||
|
||||
EV_ITEM_PICKUP, // normal item pickups are predictable
|
||||
EV_GLOBAL_ITEM_PICKUP, // powerup / team sounds are broadcast to everyone
|
||||
|
||||
EV_NOAMMO,
|
||||
EV_CHANGE_WEAPON,
|
||||
EV_FIRE_WEAPON,
|
||||
|
||||
EV_USE_ITEM0,
|
||||
EV_USE_ITEM1,
|
||||
EV_USE_ITEM2,
|
||||
EV_USE_ITEM3,
|
||||
EV_USE_ITEM4,
|
||||
EV_USE_ITEM5,
|
||||
EV_USE_ITEM6,
|
||||
EV_USE_ITEM7,
|
||||
EV_USE_ITEM8,
|
||||
EV_USE_ITEM9,
|
||||
EV_USE_ITEM10,
|
||||
EV_USE_ITEM11,
|
||||
EV_USE_ITEM12,
|
||||
EV_USE_ITEM13,
|
||||
EV_USE_ITEM14,
|
||||
EV_USE_ITEM15,
|
||||
|
||||
EV_ITEM_RESPAWN,
|
||||
EV_ITEM_POP,
|
||||
EV_PLAYER_TELEPORT_IN,
|
||||
EV_PLAYER_TELEPORT_OUT,
|
||||
|
||||
EV_GRENADE_BOUNCE, // eventParm will be the soundindex
|
||||
|
||||
EV_GENERAL_SOUND,
|
||||
EV_GLOBAL_SOUND, // no attenuation
|
||||
EV_GLOBAL_TEAM_SOUND,
|
||||
|
||||
EV_BULLET_HIT_FLESH,
|
||||
EV_BULLET_HIT_WALL,
|
||||
|
||||
EV_MISSILE_HIT,
|
||||
EV_MISSILE_MISS,
|
||||
EV_MISSILE_MISS_METAL,
|
||||
EV_RAILTRAIL,
|
||||
EV_SHOTGUN,
|
||||
EV_BULLET, // otherEntity is the shooter
|
||||
|
||||
EV_PAIN,
|
||||
EV_DEATH1,
|
||||
EV_DEATH2,
|
||||
EV_DEATH3,
|
||||
EV_OBITUARY,
|
||||
|
||||
EV_POWERUP_QUAD,
|
||||
EV_POWERUP_BATTLESUIT,
|
||||
EV_POWERUP_REGEN,
|
||||
|
||||
EV_GIB_PLAYER, // gib a previously living player
|
||||
EV_SCOREPLUM, // score plum
|
||||
|
||||
//#ifdef MISSIONPACK
|
||||
EV_PROXIMITY_MINE_STICK,
|
||||
EV_PROXIMITY_MINE_TRIGGER,
|
||||
EV_KAMIKAZE, // kamikaze explodes
|
||||
EV_OBELISKEXPLODE, // obelisk explodes
|
||||
EV_OBELISKPAIN, // obelisk is in pain
|
||||
EV_INVUL_IMPACT, // invulnerability sphere impact
|
||||
EV_JUICED, // invulnerability juiced effect
|
||||
EV_LIGHTNINGBOLT, // lightning bolt bounced of invulnerability sphere
|
||||
//#endif
|
||||
|
||||
EV_DEBUG_LINE,
|
||||
EV_STOPLOOPINGSOUND,
|
||||
EV_TAUNT,
|
||||
EV_TAUNT_YES,
|
||||
EV_TAUNT_NO,
|
||||
EV_TAUNT_FOLLOWME,
|
||||
EV_TAUNT_GETFLAG,
|
||||
EV_TAUNT_GUARDBASE,
|
||||
EV_TAUNT_PATROL
|
||||
|
||||
} entity_event_t;
|
||||
|
||||
|
||||
typedef enum {
|
||||
GTS_RED_CAPTURE,
|
||||
GTS_BLUE_CAPTURE,
|
||||
GTS_RED_RETURN,
|
||||
GTS_BLUE_RETURN,
|
||||
GTS_RED_TAKEN,
|
||||
GTS_BLUE_TAKEN,
|
||||
GTS_REDOBELISK_ATTACKED,
|
||||
GTS_BLUEOBELISK_ATTACKED,
|
||||
GTS_REDTEAM_SCORED,
|
||||
GTS_BLUETEAM_SCORED,
|
||||
GTS_REDTEAM_TOOK_LEAD,
|
||||
GTS_BLUETEAM_TOOK_LEAD,
|
||||
GTS_TEAMS_ARE_TIED,
|
||||
GTS_KAMIKAZE
|
||||
} global_team_sound_t;
|
||||
|
||||
// animations
|
||||
typedef enum {
|
||||
BOTH_DEATH1,
|
||||
BOTH_DEAD1,
|
||||
BOTH_DEATH2,
|
||||
BOTH_DEAD2,
|
||||
BOTH_DEATH3,
|
||||
BOTH_DEAD3,
|
||||
|
||||
TORSO_GESTURE,
|
||||
|
||||
TORSO_ATTACK,
|
||||
TORSO_ATTACK2,
|
||||
|
||||
TORSO_DROP,
|
||||
TORSO_RAISE,
|
||||
|
||||
TORSO_STAND,
|
||||
TORSO_STAND2,
|
||||
|
||||
LEGS_WALKCR,
|
||||
LEGS_WALK,
|
||||
LEGS_RUN,
|
||||
LEGS_BACK,
|
||||
LEGS_SWIM,
|
||||
|
||||
LEGS_JUMP,
|
||||
LEGS_LAND,
|
||||
|
||||
LEGS_JUMPB,
|
||||
LEGS_LANDB,
|
||||
|
||||
LEGS_IDLE,
|
||||
LEGS_IDLECR,
|
||||
|
||||
LEGS_TURN,
|
||||
|
||||
TORSO_GETFLAG,
|
||||
TORSO_GUARDBASE,
|
||||
TORSO_PATROL,
|
||||
TORSO_FOLLOWME,
|
||||
TORSO_AFFIRMATIVE,
|
||||
TORSO_NEGATIVE,
|
||||
|
||||
MAX_ANIMATIONS,
|
||||
|
||||
LEGS_BACKCR,
|
||||
LEGS_BACKWALK,
|
||||
FLAG_RUN,
|
||||
FLAG_STAND,
|
||||
FLAG_STAND2RUN,
|
||||
|
||||
MAX_TOTALANIMATIONS
|
||||
} animNumber_t;
|
||||
|
||||
|
||||
typedef struct animation_s {
|
||||
int firstFrame;
|
||||
int numFrames;
|
||||
int loopFrames; // 0 to numFrames
|
||||
int frameLerp; // msec between frames
|
||||
int initialLerp; // msec to get to first frame
|
||||
int reversed; // true if animation is reversed
|
||||
int flipflop; // true if animation should flipflop back to base
|
||||
} animation_t;
|
||||
|
||||
|
||||
// flip the togglebit every time an animation
|
||||
// changes so a restart of the same anim can be detected
|
||||
#define ANIM_TOGGLEBIT 128
|
||||
|
||||
|
||||
typedef enum {
|
||||
TEAM_FREE,
|
||||
TEAM_RED,
|
||||
TEAM_BLUE,
|
||||
TEAM_SPECTATOR,
|
||||
|
||||
TEAM_NUM_TEAMS
|
||||
} team_t;
|
||||
|
||||
// Time between location updates
|
||||
#define TEAM_LOCATION_UPDATE_TIME 1000
|
||||
|
||||
// How many players on the overlay
|
||||
#define TEAM_MAXOVERLAY 32
|
||||
|
||||
//team task
|
||||
typedef enum {
|
||||
TEAMTASK_NONE,
|
||||
TEAMTASK_OFFENSE,
|
||||
TEAMTASK_DEFENSE,
|
||||
TEAMTASK_PATROL,
|
||||
TEAMTASK_FOLLOW,
|
||||
TEAMTASK_RETRIEVE,
|
||||
TEAMTASK_ESCORT,
|
||||
TEAMTASK_CAMP
|
||||
} teamtask_t;
|
||||
|
||||
// means of death
|
||||
typedef enum {
|
||||
MOD_UNKNOWN,
|
||||
MOD_SHOTGUN,
|
||||
MOD_GAUNTLET,
|
||||
MOD_MACHINEGUN,
|
||||
MOD_GRENADE,
|
||||
MOD_GRENADE_SPLASH,
|
||||
MOD_ROCKET,
|
||||
MOD_ROCKET_SPLASH,
|
||||
MOD_PLASMA,
|
||||
MOD_PLASMA_SPLASH,
|
||||
MOD_RAILGUN,
|
||||
MOD_LIGHTNING,
|
||||
MOD_BFG,
|
||||
MOD_BFG_SPLASH,
|
||||
MOD_WATER,
|
||||
MOD_SLIME,
|
||||
MOD_LAVA,
|
||||
MOD_CRUSH,
|
||||
MOD_TELEFRAG,
|
||||
MOD_FALLING,
|
||||
MOD_SUICIDE,
|
||||
MOD_TARGET_LASER,
|
||||
MOD_TRIGGER_HURT,
|
||||
#ifdef MISSIONPACK
|
||||
MOD_NAIL,
|
||||
MOD_CHAINGUN,
|
||||
MOD_PROXIMITY_MINE,
|
||||
MOD_KAMIKAZE,
|
||||
MOD_JUICED,
|
||||
#endif
|
||||
MOD_GRAPPLE
|
||||
} meansOfDeath_t;
|
||||
|
||||
|
||||
//---------------------------------------------------------
|
||||
|
||||
// gitem_t->type
|
||||
typedef enum {
|
||||
IT_BAD,
|
||||
IT_WEAPON, // EFX: rotate + upscale + minlight
|
||||
IT_AMMO, // EFX: rotate
|
||||
IT_ARMOR, // EFX: rotate + minlight
|
||||
IT_HEALTH, // EFX: static external sphere + rotating internal
|
||||
IT_POWERUP, // instant on, timer based
|
||||
// EFX: rotate + external ring that rotates
|
||||
IT_HOLDABLE, // single use, holdable item
|
||||
// EFX: rotate + bob
|
||||
IT_PERSISTANT_POWERUP,
|
||||
IT_TEAM
|
||||
} itemType_t;
|
||||
|
||||
#define MAX_ITEM_MODELS 4
|
||||
|
||||
typedef struct gitem_s {
|
||||
char *classname; // spawning name
|
||||
char *pickup_sound;
|
||||
char *world_model[MAX_ITEM_MODELS];
|
||||
|
||||
char *icon;
|
||||
char *pickup_name; // for printing on pickup
|
||||
|
||||
int quantity; // for ammo how much, or duration of powerup
|
||||
itemType_t giType; // IT_* flags
|
||||
|
||||
int giTag;
|
||||
|
||||
char *precaches; // string of all models and images this item will use
|
||||
char *sounds; // string of all sounds this item will use
|
||||
} gitem_t;
|
||||
|
||||
// included in both the game dll and the client
|
||||
extern gitem_t bg_itemlist[];
|
||||
extern int bg_numItems;
|
||||
|
||||
gitem_t *BG_FindItem( const char *pickupName );
|
||||
gitem_t *BG_FindItemForWeapon( weapon_t weapon );
|
||||
gitem_t *BG_FindItemForPowerup( powerup_t pw );
|
||||
gitem_t *BG_FindItemForHoldable( holdable_t pw );
|
||||
#define ITEM_INDEX(x) ((x)-bg_itemlist)
|
||||
|
||||
qboolean BG_CanItemBeGrabbed( int gametype, const entityState_t *ent, const playerState_t *ps );
|
||||
|
||||
|
||||
// g_dmflags->integer flags
|
||||
#define DF_NO_FALLING 8
|
||||
#define DF_FIXED_FOV 16
|
||||
#define DF_NO_FOOTSTEPS 32
|
||||
|
||||
// content masks
|
||||
#define MASK_ALL (-1)
|
||||
#define MASK_SOLID (CONTENTS_SOLID)
|
||||
#define MASK_PLAYERSOLID (CONTENTS_SOLID|CONTENTS_PLAYERCLIP|CONTENTS_BODY)
|
||||
#define MASK_DEADSOLID (CONTENTS_SOLID|CONTENTS_PLAYERCLIP)
|
||||
#define MASK_WATER (CONTENTS_WATER|CONTENTS_LAVA|CONTENTS_SLIME)
|
||||
#define MASK_OPAQUE (CONTENTS_SOLID|CONTENTS_SLIME|CONTENTS_LAVA)
|
||||
#define MASK_SHOT (CONTENTS_SOLID|CONTENTS_BODY|CONTENTS_CORPSE)
|
||||
|
||||
|
||||
//
|
||||
// entityState_t->eType
|
||||
//
|
||||
typedef enum {
|
||||
ET_GENERAL,
|
||||
ET_PLAYER,
|
||||
ET_ITEM,
|
||||
ET_MISSILE,
|
||||
ET_MOVER,
|
||||
ET_BEAM,
|
||||
ET_PORTAL,
|
||||
ET_SPEAKER,
|
||||
ET_PUSH_TRIGGER,
|
||||
ET_TELEPORT_TRIGGER,
|
||||
ET_INVISIBLE,
|
||||
ET_GRAPPLE, // grapple hooked on wall
|
||||
ET_TEAM,
|
||||
|
||||
ET_EVENTS // any of the EV_* events can be added freestanding
|
||||
// by setting eType to ET_EVENTS + eventNum
|
||||
// this avoids having to set eFlags and eventNum
|
||||
} entityType_t;
|
||||
|
||||
|
||||
|
||||
void BG_EvaluateTrajectory( const trajectory_t *tr, int atTime, vec3_t result );
|
||||
void BG_EvaluateTrajectoryDelta( const trajectory_t *tr, int atTime, vec3_t result );
|
||||
|
||||
void BG_AddPredictableEventToPlayerstate( int newEvent, int eventParm, playerState_t *ps );
|
||||
|
||||
void BG_TouchJumpPad( playerState_t *ps, entityState_t *jumppad );
|
||||
|
||||
void BG_PlayerStateToEntityState( playerState_t *ps, entityState_t *s, qboolean snap );
|
||||
void BG_PlayerStateToEntityStateExtraPolate( playerState_t *ps, entityState_t *s, int time, qboolean snap );
|
||||
|
||||
qboolean BG_PlayerTouchesItem( playerState_t *ps, entityState_t *item, int atTime );
|
||||
|
||||
|
||||
#define ARENAS_PER_TIER 4
|
||||
#define MAX_ARENAS 1024
|
||||
#define MAX_ARENAS_TEXT 8192
|
||||
|
||||
#define MAX_BOTS 1024
|
||||
#define MAX_BOTS_TEXT 8192
|
||||
|
||||
|
||||
// Kamikaze
|
||||
|
||||
// 1st shockwave times
|
||||
#define KAMI_SHOCKWAVE_STARTTIME 0
|
||||
#define KAMI_SHOCKWAVEFADE_STARTTIME 1500
|
||||
#define KAMI_SHOCKWAVE_ENDTIME 2000
|
||||
// explosion/implosion times
|
||||
#define KAMI_EXPLODE_STARTTIME 250
|
||||
#define KAMI_IMPLODE_STARTTIME 2000
|
||||
#define KAMI_IMPLODE_ENDTIME 2250
|
||||
// 2nd shockwave times
|
||||
#define KAMI_SHOCKWAVE2_STARTTIME 2000
|
||||
#define KAMI_SHOCKWAVE2FADE_STARTTIME 2500
|
||||
#define KAMI_SHOCKWAVE2_ENDTIME 3000
|
||||
// radius of the models without scaling
|
||||
#define KAMI_SHOCKWAVEMODEL_RADIUS 88
|
||||
#define KAMI_BOOMSPHEREMODEL_RADIUS 72
|
||||
// maximum radius of the models during the effect
|
||||
#define KAMI_SHOCKWAVE_MAXRADIUS 1320
|
||||
#define KAMI_BOOMSPHERE_MAXRADIUS 720
|
||||
#define KAMI_SHOCKWAVE2_MAXRADIUS 704
|
||||
|
||||
8308
code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_math.asm
Executable file
8308
code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_math.asm
Executable file
File diff suppressed because it is too large
Load Diff
1287
code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_math.c
Executable file
1287
code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_math.c
Executable file
File diff suppressed because it is too large
Load Diff
6662
code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_shared.asm
Executable file
6662
code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_shared.asm
Executable file
File diff suppressed because it is too large
Load Diff
1238
code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_shared.c
Executable file
1238
code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_shared.c
Executable file
File diff suppressed because it is too large
Load Diff
1405
code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_shared.h
Executable file
1405
code/debug-x86-Linux-2.3/Q3/q3_ui/game/q_shared.h
Executable file
File diff suppressed because it is too large
Load Diff
60
code/debug-x86-Linux-2.3/Q3/q3_ui/game/surfaceflags.h
Executable file
60
code/debug-x86-Linux-2.3/Q3/q3_ui/game/surfaceflags.h
Executable file
@@ -0,0 +1,60 @@
|
||||
// Copyright (C) 1999-2000 Id Software, Inc.
|
||||
//
|
||||
// This file must be identical in the quake and utils directories
|
||||
|
||||
// contents flags are seperate bits
|
||||
// a given brush can contribute multiple content bits
|
||||
|
||||
// these definitions also need to be in q_shared.h!
|
||||
|
||||
#define CONTENTS_SOLID 1 // an eye is never valid in a solid
|
||||
#define CONTENTS_LAVA 8
|
||||
#define CONTENTS_SLIME 16
|
||||
#define CONTENTS_WATER 32
|
||||
#define CONTENTS_FOG 64
|
||||
|
||||
#define CONTENTS_NOTTEAM1 0x0080
|
||||
#define CONTENTS_NOTTEAM2 0x0100
|
||||
#define CONTENTS_NOBOTCLIP 0x0200
|
||||
|
||||
#define CONTENTS_AREAPORTAL 0x8000
|
||||
|
||||
#define CONTENTS_PLAYERCLIP 0x10000
|
||||
#define CONTENTS_MONSTERCLIP 0x20000
|
||||
//bot specific contents types
|
||||
#define CONTENTS_TELEPORTER 0x40000
|
||||
#define CONTENTS_JUMPPAD 0x80000
|
||||
#define CONTENTS_CLUSTERPORTAL 0x100000
|
||||
#define CONTENTS_DONOTENTER 0x200000
|
||||
#define CONTENTS_BOTCLIP 0x400000
|
||||
#define CONTENTS_MOVER 0x800000
|
||||
|
||||
#define CONTENTS_ORIGIN 0x1000000 // removed before bsping an entity
|
||||
|
||||
#define CONTENTS_BODY 0x2000000 // should never be on a brush, only in game
|
||||
#define CONTENTS_CORPSE 0x4000000
|
||||
#define CONTENTS_DETAIL 0x8000000 // brushes not used for the bsp
|
||||
#define CONTENTS_STRUCTURAL 0x10000000 // brushes used for the bsp
|
||||
#define CONTENTS_TRANSLUCENT 0x20000000 // don't consume surface fragments inside
|
||||
#define CONTENTS_TRIGGER 0x40000000
|
||||
#define CONTENTS_NODROP 0x80000000 // don't leave bodies or items (death fog, lava)
|
||||
|
||||
#define SURF_NODAMAGE 0x1 // never give falling damage
|
||||
#define SURF_SLICK 0x2 // effects game physics
|
||||
#define SURF_SKY 0x4 // lighting from environment map
|
||||
#define SURF_LADDER 0x8
|
||||
#define SURF_NOIMPACT 0x10 // don't make missile explosions
|
||||
#define SURF_NOMARKS 0x20 // don't leave missile marks
|
||||
#define SURF_FLESH 0x40 // make flesh sounds and effects
|
||||
#define SURF_NODRAW 0x80 // don't generate a drawsurface at all
|
||||
#define SURF_HINT 0x100 // make a primary bsp splitter
|
||||
#define SURF_SKIP 0x200 // completely ignore, allowing non-closed brushes
|
||||
#define SURF_NOLIGHTMAP 0x400 // surface doesn't need a lightmap
|
||||
#define SURF_POINTLIGHT 0x800 // generate lighting info at vertexes
|
||||
#define SURF_METALSTEPS 0x1000 // clanking footsteps
|
||||
#define SURF_NOSTEPS 0x2000 // no footstep sounds
|
||||
#define SURF_NONSOLID 0x4000 // don't collide against curves with this set
|
||||
#define SURF_LIGHTFILTER 0x8000 // act as a light filter during q3map -light
|
||||
#define SURF_ALPHASHADOW 0x10000 // do per-pixel light shadow casting in q3map
|
||||
#define SURF_NODLIGHT 0x20000 // don't dlight even if solid (solid lava, skies)
|
||||
#define SURF_DUST 0x40000 // leave a dust trail when walking on this surface
|
||||
Reference in New Issue
Block a user