Xonotic QuakeC
The free, fast arena FPS with crisp movement and a wide array of weapons
constants.qh
Go to the documentation of this file.
1#pragma once
2
3const int FRAGS_PLAYER = 0;
4const int FRAGS_SPECTATOR = -666;
5const int FRAGS_PLAYER_OUT_OF_GAME = -616;
6
8// cvar constants
9
10const int CVAR_SAVE = BIT(0);
11const int CVAR_NOTIFY = BIT(1);
12const int CVAR_READONLY = BIT(2);
13
14// server flags
15// NOTE: the engine doesn't clear serverflags on map change (gotomap)
17const int SERVERFLAG_TEAMPLAY = BIT(1);
21
22const int SPECIES_HUMAN = 0;
23const int SPECIES_ROBOT_SOLID = 1;
24const int SPECIES_ALIEN = 2;
25const int SPECIES_ANIMAL = 3;
26const int SPECIES_ROBOT_RUSTY = 4;
27const int SPECIES_ROBOT_SHINY = 5;
28const int SPECIES_RESERVED = 15;
29
30#ifdef GAMEQC
31const int RANKINGS_CNT = 99;
32
34// keys pressed
35const int KEY_FORWARD = BIT(0);
36const int KEY_BACKWARD = BIT(1);
37const int KEY_LEFT = BIT(2);
38const int KEY_RIGHT = BIT(3);
39const int KEY_JUMP = BIT(4);
40const int KEY_CROUCH = BIT(5);
41const int KEY_ATCK = BIT(6);
42const int KEY_ATCK2 = BIT(7);
43
45// csqc communication stuff
46
47const int HUD_NORMAL = 0;
48const int HUD_BUMBLEBEE_GUN = 25;
49
50// moved that here so the client knows the max.
51// # of maps, I'll use arrays for them :P
52const int MAPVOTE_COUNT = 20;
53
54// a bit more constant
55const vector PL_MAX_CONST = '16 16 45';
56const vector PL_MIN_CONST = '-16 -16 -24';
57const vector PL_CROUCH_MAX_CONST = '16 16 25';
58const vector PL_CROUCH_MIN_CONST = '-16 -16 -24';
59
60const float PL_CORPSE_SCALE = 0.235; // average hitbox height is scaled by this when the player dies
61
62// gametype vote flags
63const int GTV_FORBIDDEN = 0; // Cannot be voted
64const int GTV_AVAILABLE = 1; // Can be voted
65const int GTV_CUSTOM = 2; // Custom entry
66
67// generic entity flags
68// engine flags can't be redefined as they are used by the engine (unfortunately), they are listed here for posterity
69#ifdef CSQC
70const int FL_FLY = 1; /* BIT(0) */
71const int FL_SWIM = 2; /* BIT(1) */
72const int FL_CLIENT = 8; /* BIT(3) */ // set for all client edicts
73const int FL_INWATER = 16; /* BIT(4) */ // for enter / leave water splash
74const int FL_MONSTER = 32; /* BIT(5) */
75const int FL_GODMODE = 64; /* BIT(6) */ // player cheat
76const int FL_NOTARGET = 128; /* BIT(7) */ // player cheat
77const int FL_ITEM = 256; /* BIT(8) */ // extra wide size for bonus items IF sv_legacy_bbox_expand is 1
78const int FL_ONGROUND = 512; /* BIT(9) */ // standing on something
79const int FL_PARTIALGROUND = 1024; /* BIT(10) */ // not all corners are valid
80const int FL_WATERJUMP = 2048; /* BIT(11) */ // player jumping out of water
81const int FL_JUMPRELEASED = 4096; /* BIT(12) */ // for jump debouncing
82#endif
83const int FL_WEAPON = BIT(13);
84const int FL_POWERUP = BIT(14);
85const int FL_PROJECTILE = BIT(15);
86const int FL_TOSSED = BIT(16);
87const int FL_SPAWNING = BIT(17);
88const int FL_PICKUPITEMS = BIT(18);
89const int FL_DUCKED = BIT(19);
90const int FL_ONSLICK = BIT(20);
91
92// initialization stages
93const int INITPRIO_FIRST = 0;
94const int INITPRIO_GAMETYPE = 0;
96const int INITPRIO_FINDTARGET = 10;
97const int INITPRIO_DROPTOFLOOR = 20;
98const int INITPRIO_SETLOCATION = 90;
99const int INITPRIO_LINKDOORS = 91;
100const int INITPRIO_LAST = 99;
101
102// effects
103const int EF_SHOCK = 262144;
104#endif
105
106#if defined(SVQC)
107 #define EFMASK_CHEAP (EF_ADDITIVE | EF_DOUBLESIDED | EF_FULLBRIGHT | EF_NODEPTHTEST | EF_NODRAW | EF_NOGUNBOB | EF_NOSHADOW | EF_LOWPRECISION | EF_SELECTABLE | EF_TELEPORT_BIT)
108#elif defined(CSQC)
109 #define EFMASK_CHEAP (EF_ADDITIVE | EF_DOUBLESIDED | EF_FULLBRIGHT | EF_NODEPTHTEST | EF_NODRAW | EF_NOSHADOW | EF_SELECTABLE | EF_TELEPORT_BIT)
110#endif
#define BIT(n)
Only ever assign into the first 24 bits in QC (so max is BIT(23)).
Definition bits.qh:8
const int INITPRIO_GAMETYPE_FALLBACK
Definition constants.qh:95
const int FL_CLIENT
Definition constants.qh:72
const int HUD_BUMBLEBEE_GUN
Definition constants.qh:48
const int SPECIES_ANIMAL
Definition constants.qh:25
const float PL_CORPSE_SCALE
Definition constants.qh:60
const int SERVERFLAG_FORBID_PICKUPTIMER
Definition constants.qh:20
const vector PL_MIN_CONST
Definition constants.qh:56
const int FL_PROJECTILE
Definition constants.qh:85
const int FL_ONGROUND
Definition constants.qh:78
const int SPECIES_ROBOT_SOLID
Definition constants.qh:23
const int INITPRIO_SETLOCATION
Definition constants.qh:98
const int KEY_JUMP
Definition constants.qh:39
const int SERVERFLAG_ALLOW_FULLBRIGHT
Definition constants.qh:16
const int SPECIES_ROBOT_RUSTY
Definition constants.qh:26
const int FL_SWIM
Definition constants.qh:71
const int KEY_ATCK2
Definition constants.qh:42
const int RANKINGS_CNT
Definition constants.qh:31
const int INITPRIO_GAMETYPE
Definition constants.qh:94
const int GTV_CUSTOM
Definition constants.qh:65
const int CVAR_SAVE
Definition constants.qh:10
const int GTV_FORBIDDEN
Definition constants.qh:63
const int INITPRIO_LAST
Definition constants.qh:100
const int SERVERFLAG_PLAYERSTATS
Definition constants.qh:18
const int MAPVOTE_COUNT
Definition constants.qh:52
const int CVAR_NOTIFY
Definition constants.qh:11
const int INITPRIO_DROPTOFLOOR
Definition constants.qh:97
const int SPECIES_RESERVED
Definition constants.qh:28
const int SERVERFLAG_TEAMPLAY
Definition constants.qh:17
const int KEY_RIGHT
Definition constants.qh:38
const int FL_PICKUPITEMS
Definition constants.qh:88
const int FL_WATERJUMP
Definition constants.qh:80
const int FL_NOTARGET
Definition constants.qh:76
const int CVAR_READONLY
Definition constants.qh:12
const int FL_JUMPRELEASED
Definition constants.qh:81
const int INITPRIO_LINKDOORS
Definition constants.qh:99
const int KEY_BACKWARD
Definition constants.qh:36
const int INITPRIO_FINDTARGET
Definition constants.qh:96
const int FL_WEAPON
Definition constants.qh:83
const int FL_SPAWNING
Definition constants.qh:87
const int HUD_NORMAL
Definition constants.qh:47
const int KEY_FORWARD
Definition constants.qh:35
const int FL_DUCKED
Definition constants.qh:89
const int FRAGS_PLAYER_OUT_OF_GAME
Definition constants.qh:5
const int FL_GODMODE
Definition constants.qh:75
const int KEY_LEFT
Definition constants.qh:37
const int FL_PARTIALGROUND
Definition constants.qh:79
const int FL_POWERUP
Definition constants.qh:84
const int FL_MONSTER
Definition constants.qh:74
const int SERVERFLAG_PLAYERSTATS_CUSTOM
Definition constants.qh:19
const int EF_SHOCK
Definition constants.qh:103
const vector PL_CROUCH_MIN_CONST
Definition constants.qh:58
const int KEY_CROUCH
Definition constants.qh:40
const int FL_INWATER
Definition constants.qh:73
const int GTV_AVAILABLE
Definition constants.qh:64
const int FRAGS_PLAYER
Definition constants.qh:3
const int FL_ONSLICK
Definition constants.qh:90
const int SPECIES_ROBOT_SHINY
Definition constants.qh:27
const int KEY_ATCK
Definition constants.qh:41
const vector PL_CROUCH_MAX_CONST
Definition constants.qh:57
const int SPECIES_ALIEN
Definition constants.qh:24
const int SPECIES_HUMAN
Definition constants.qh:22
const int FL_TOSSED
Definition constants.qh:86
const int FRAGS_SPECTATOR
Definition constants.qh:4
const vector PL_MAX_CONST
Definition constants.qh:55
const int FL_FLY
Definition constants.qh:70
const int FL_ITEM
Definition constants.qh:77
const int INITPRIO_FIRST
Definition constants.qh:93
vector
Definition self.qh:92