Purge client/defs.qh
[xonotic/xonotic-data.pk3dir.git] / qcsrc / client / csqc_constants.qh
1 #pragma once
2
3 // Mask Constants (set .drawmask on entities; use R_AddEntities to add all entities based on mask)
4 const int               MASK_ENGINE                                             = BIT(0);
5 const int               MASK_ENGINEVIEWMODELS                   = BIT(1);
6 const int               MASK_NORMAL                                             = BIT(2);
7
8 // Renderflag Constants (used for CSQC entities)
9 const int               RF_VIEWMODEL                                    = BIT(0);
10 const int               RF_EXTERNALMODEL                                = BIT(1);
11 const int               RF_DEPTHHACK                                    = BIT(2);
12 const int               RF_ADDITIVE                                             = BIT(3);
13 const int               RF_USEAXIS                                              = BIT(4);
14
15 // Viewflag Constants (use with R_SetView)
16 const int               VF_MIN                                                  = 1;    //(vector)
17 const int               VF_MIN_X                                                = 2;    //(float)
18 const int               VF_MIN_Y                                                = 3;    //(float)
19 const int               VF_SIZE                                                 = 4;    //(vector) (viewport size)
20 const int               VF_SIZE_Y                                               = 5;    //(float)
21 const int               VF_SIZE_X                                               = 6;    //(float)
22 const int               VF_VIEWPORT                                             = 7;    //(vector, vector)
23 const int               VF_FOV                                                  = 8;    //(vector)
24 const int               VF_FOVX                                                 = 9;    //(float)
25 const int               VF_FOVY                                                 = 10;   //(float)
26 const int               VF_ORIGIN                                               = 11;   //(vector)
27 const int               VF_ORIGIN_X                                             = 12;   //(float)
28 const int               VF_ORIGIN_Y                                             = 13;   //(float)
29 const int               VF_ORIGIN_Z                                             = 14;   //(float)
30 const int               VF_ANGLES                                               = 15;   //(vector)
31 const int               VF_ANGLES_X                                             = 16;   //(float)
32 const int               VF_ANGLES_Y                                             = 17;   //(float)
33 const int               VF_ANGLES_Z                                             = 18;   //(float)
34 const int               VF_DRAWWORLD                                    = 19;   //(float)
35 const int               VF_DRAWENGINEHUD                                = 20;   //(float)
36 const int               VF_DRAWCROSSHAIR                                = 21;   //(float)
37 const int               VF_PERSPECTIVE                                  = 200;  //(float)
38
39 const int               VF_CL_VIEWANGLES                                = 33;   //(vector)
40 const int               VF_CL_VIEWANGLES_X                              = 34;   //(float)
41 const int               VF_CL_VIEWANGLES_Y                              = 35;   //(float)
42 const int               VF_CL_VIEWANGLES_Z                              = 36;   //(float)
43
44 // Quake-style Point Contents
45 const int               CONTENT_EMPTY                                   = -1;
46 const int               CONTENT_SOLID                                   = -2;
47 const int               CONTENT_WATER                                   = -3;
48 const int               CONTENT_SLIME                                   = -4;
49 const int               CONTENT_LAVA                                    = -5;
50 const int               CONTENT_SKY                                             = -6;
51
52 // Vector / Hull Constants
53 const vector    VEC_1                                                   = '1 1 1';
54 const vector    VEC_0                                                   = '0 0 0';
55 const vector    VEC_M1                                                  = '-1 -1 -1';
56
57 const vector    VEC_HULL_MIN                                    = '-16 -16 -24';
58 const vector    VEC_HULL_MAX                                    = '16 16 32';
59
60 // Effect Constants
61 const int       EF_NODRAW                                               = BIT(4);
62 const int       EF_ADDITIVE                                             = BIT(5);
63 const int       EF_BLUE                                                 = BIT(6);
64 const int       EF_RED                                                  = BIT(7);
65 const int       EF_FULLBRIGHT                                   = BIT(9);
66 const int       EF_FLAME                                                = BIT(10);
67 const int       EF_STARDUST                                             = BIT(11);
68 const int       EF_NOSHADOW                                             = BIT(12);
69 const int       EF_NODEPTHTEST                                  = BIT(13);
70
71 // Quake Player Flag Constants
72 const int       PFL_ONGROUND                                    = BIT(0);
73 const int       PFL_CROUCH                                              = BIT(1);
74 const int       PFL_DEAD                                                = BIT(2);
75 const int       PFL_GIBBED                                              = BIT(3);
76
77 // Quake Temporary Entity Constants
78 const int               TE_SPIKE                                                = 0;
79 const int               TE_SUPERSPIKE                                   = 1;
80 const int               TE_GUNSHOT                                              = 2;
81 const int               TE_EXPLOSION                                    = 3;
82 const int               TE_TAREXPLOSION                                 = 4;
83 const int               TE_LIGHTNING1                                   = 5;
84 const int               TE_LIGHTNING2                                   = 6;
85 const int               TE_WIZSPIKE                                             = 7;
86 const int               TE_KNIGHTSPIKE                                  = 8;
87 const int               TE_LIGHTNING3                                   = 9;
88 const int               TE_LAVASPLASH                                   = 10;
89 const int               TE_TELEPORT                                             = 11;
90 const int       TE_EXPLOSION2                                   = 12;
91 // Darkplaces Additions
92 const int       TE_EXPLOSIONRGB                                 = 53;
93 const int               TE_GUNSHOTQUAD                                  = 57;
94 const int               TE_EXPLOSIONQUAD                                = 70;
95
96 // Math Constants
97 const int       EXTRA_LOW                                               = -99999999;
98 const int       EXTRA_HIGH                                              = 99999999;
99
100 // Frik File Constants
101 const int               FILE_READ                                               = 0;
102 const int               FILE_APPEND                                             = 1;
103 const int               FILE_WRITE                                              = 2;
104
105 // Button values used by input_buttons
106 const int BUTTON_ATTACK = BIT(0);
107 const int BUTTON_JUMP = BIT(1);
108 const int BUTTON_3 = BIT(2);
109 const int BUTTON_4 = BIT(3);
110 const int BUTTON_5 = BIT(4);
111 const int BUTTON_6 = BIT(5);
112 const int BUTTON7 = BIT(6);
113 const int BUTTON8 = BIT(7);
114 const int BUTTON_USE = BIT(8);
115 const int BUTTON_CHAT = BIT(9);
116 const int BUTTON_PRYDONCURSOR = BIT(10);
117 const int BUTTON_9 = BIT(11);
118 const int BUTTON_10 = BIT(12);
119 const int BUTTON_11 = BIT(13);
120 const int BUTTON_12 = BIT(14);
121 const int BUTTON_13 = BIT(15);
122 const int BUTTON_14 = BIT(16);
123 const int BUTTON_15 = BIT(17);
124 const int BUTTON_16 = BIT(18);
125
126 const int SOLID_NOT             = 0; // no interaction with other objects
127 const int SOLID_TRIGGER         = 1; // touch on edge, but not blocking
128 const int SOLID_BBOX            = 2; // touch on edge, block
129 const int SOLID_SLIDEBOX        = 3; // touch on edge, but not an onground
130 const int SOLID_BSP             = 4; // bsp clip, touch on edge, block
131 const int SOLID_CORPSE  = 5; // same as SOLID_BBOX, except it behaves as SOLID_NOT against SOLID_SLIDEBOX objects (players/monsters)
132
133 const int MOVE_NORMAL = 0; // same as false
134 const int MOVE_NOMONSTERS = 1; // same as true
135 const int MOVE_MISSILE = 2; // save as movement with .move_movetype == MOVETYPE_FLYMISSILE
136 const int MOVE_HITMODEL = 4;
137 const int MOVE_WORLDONLY = 3;
138
139 const int CAMERA_FREE = 1;
140 const int CAMERA_CHASE = 2;
141
142 const int EF_NOMODELFLAGS = BIT(23);