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);
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);
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)
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)
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;
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';
57 const vector VEC_HULL_MIN = '-16 -16 -24';
58 const vector VEC_HULL_MAX = '16 16 32';
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);
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);
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;
97 const int EXTRA_LOW = -99999999;
98 const int EXTRA_HIGH = 99999999;
100 // Frik File Constants
101 const int FILE_READ = 0;
102 const int FILE_APPEND = 1;
103 const int FILE_WRITE = 2;
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);
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)
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 .movetype == MOVETYPE_FLYMISSILE
136 const int MOVE_HITMODEL = 4;
137 const int MOVE_WORLDONLY = 3;
139 const int CAMERA_FREE = 1;
140 const int CAMERA_CHASE = 2;
142 const int EF_NOMODELFLAGS = BIT(23);