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 = -1;
4const int FRAGS_PLAYER_NONSOLID = -616;
5const int FRAGS_SPECTATOR = -666;
6const int FRAGS_PLAYER_OUT_OF_GAME = -669;
7
9// cvar constants
10
11const int CVAR_SAVE = BIT(0);
12const int CVAR_NOTIFY = BIT(1);
13const int CVAR_READONLY = BIT(2);
14
15// server flags
16// NOTE: the engine doesn't clear serverflags on map change (gotomap)
18const int SERVERFLAG_TEAMPLAY = BIT(1);
22
23const int SPECIES_HUMAN = 0;
24const int SPECIES_ROBOT_SOLID = 1;
25const int SPECIES_ALIEN = 2;
26const int SPECIES_ANIMAL = 3;
27const int SPECIES_ROBOT_RUSTY = 4;
28const int SPECIES_ROBOT_SHINY = 5;
29const int SPECIES_RESERVED = 15;
30
31#ifdef GAMEQC
32const int RANKINGS_CNT = 99;
33
35// keys pressed
36const int KEY_FORWARD = BIT(0);
37const int KEY_BACKWARD = BIT(1);
38const int KEY_LEFT = BIT(2);
39const int KEY_RIGHT = BIT(3);
40const int KEY_JUMP = BIT(4);
41const int KEY_CROUCH = BIT(5);
42const int KEY_ATCK = BIT(6);
43const int KEY_ATCK2 = BIT(7);
44
46// csqc communication stuff
47
48const int HUD_NORMAL = 0;
49const int HUD_BUMBLEBEE_GUN = 25;
50
51// a bit more constant
52const vector PL_MAX_CONST = '16 16 45';
53const vector PL_MIN_CONST = '-16 -16 -24';
54const vector PL_CROUCH_MAX_CONST = '16 16 25';
55const vector PL_CROUCH_MIN_CONST = '-16 -16 -24';
56
57const float PL_CORPSE_SCALE = 0.235; // average hitbox height is scaled by this when the player dies
58
59// generic entity flags
60// engine flags can't be redefined as they are used by the engine (unfortunately), they are listed here for posterity
61#ifdef CSQC
62const int FL_FLY = 1; /* BIT(0) */
63const int FL_SWIM = 2; /* BIT(1) */
64const int FL_CLIENT = 8; /* BIT(3) */ // set for all client edicts
65const int FL_INWATER = 16; /* BIT(4) */ // for enter / leave water splash
66const int FL_MONSTER = 32; /* BIT(5) */
67const int FL_GODMODE = 64; /* BIT(6) */ // player cheat
68const int FL_NOTARGET = 128; /* BIT(7) */ // player cheat
69const int FL_ITEM = 256; /* BIT(8) */ // extra wide size for bonus items IF sv_legacy_bbox_expand is 1
70const int FL_ONGROUND = 512; /* BIT(9) */ // standing on something
71const int FL_PARTIALGROUND = 1024; /* BIT(10) */ // not all corners are valid
72const int FL_WATERJUMP = 2048; /* BIT(11) */ // player jumping out of water
73const int FL_JUMPRELEASED = 4096; /* BIT(12) */ // for jump debouncing
74#endif
75const int FL_WEAPON = BIT(13);
76const int FL_POWERUP = BIT(14);
77const int FL_PROJECTILE = BIT(15);
78const int FL_TOSSED = BIT(16);
79const int FL_SPAWNING = BIT(17);
80const int FL_PICKUPITEMS = BIT(18);
81const int FL_DUCKED = BIT(19);
82const int FL_ONSLICK = BIT(20);
83
84// initialization stages
85const int INITPRIO_FIRST = 0;
86const int INITPRIO_GAMETYPE = 0;
88const int INITPRIO_FINDTARGET = 10;
89const int INITPRIO_DROPTOFLOOR = 20;
90const int INITPRIO_SETLOCATION = 90;
91const int INITPRIO_LINKDOORS = 91;
92const int INITPRIO_LAST = 99;
93
94// effects
95const int EF_SHOCK = 262144;
96const int EF_SPEED = 524288;
97#endif
98
99#if defined(SVQC)
100 #define EFMASK_CHEAP (EF_ADDITIVE | EF_DOUBLESIDED | EF_FULLBRIGHT | EF_NODEPTHTEST | EF_NODRAW | EF_NOGUNBOB | EF_NOSHADOW | EF_LOWPRECISION | EF_SELECTABLE | EF_TELEPORT_BIT)
101#elif defined(CSQC)
102 #define EFMASK_CHEAP (EF_ADDITIVE | EF_DOUBLESIDED | EF_FULLBRIGHT | EF_NODEPTHTEST | EF_NODRAW | EF_NOSHADOW | EF_SELECTABLE | EF_TELEPORT_BIT)
103#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:87
const int FL_CLIENT
Definition constants.qh:64
const int HUD_BUMBLEBEE_GUN
Definition constants.qh:49
const int SPECIES_ANIMAL
Definition constants.qh:26
const float PL_CORPSE_SCALE
Definition constants.qh:57
const int SERVERFLAG_FORBID_PICKUPTIMER
Definition constants.qh:21
const vector PL_MIN_CONST
Definition constants.qh:53
const int FL_PROJECTILE
Definition constants.qh:77
const int FL_ONGROUND
Definition constants.qh:70
const int SPECIES_ROBOT_SOLID
Definition constants.qh:24
const int INITPRIO_SETLOCATION
Definition constants.qh:90
const int KEY_JUMP
Definition constants.qh:40
const int SERVERFLAG_ALLOW_FULLBRIGHT
Definition constants.qh:17
const int SPECIES_ROBOT_RUSTY
Definition constants.qh:27
const int FL_SWIM
Definition constants.qh:63
const int KEY_ATCK2
Definition constants.qh:43
const int RANKINGS_CNT
Definition constants.qh:32
const int INITPRIO_GAMETYPE
Definition constants.qh:86
const int CVAR_SAVE
Definition constants.qh:11
const int INITPRIO_LAST
Definition constants.qh:92
const int SERVERFLAG_PLAYERSTATS
Definition constants.qh:19
const int CVAR_NOTIFY
Definition constants.qh:12
const int INITPRIO_DROPTOFLOOR
Definition constants.qh:89
const int SPECIES_RESERVED
Definition constants.qh:29
const int SERVERFLAG_TEAMPLAY
Definition constants.qh:18
const int KEY_RIGHT
Definition constants.qh:39
const int FL_PICKUPITEMS
Definition constants.qh:80
const int FL_WATERJUMP
Definition constants.qh:72
const int FL_NOTARGET
Definition constants.qh:68
const int CVAR_READONLY
Definition constants.qh:13
const int FL_JUMPRELEASED
Definition constants.qh:73
const int INITPRIO_LINKDOORS
Definition constants.qh:91
const int KEY_BACKWARD
Definition constants.qh:37
const int INITPRIO_FINDTARGET
Definition constants.qh:88
const int FL_WEAPON
Definition constants.qh:75
const int FL_SPAWNING
Definition constants.qh:79
const int EF_SPEED
Definition constants.qh:96
const int HUD_NORMAL
Definition constants.qh:48
const int KEY_FORWARD
Definition constants.qh:36
const int FRAGS_PLAYER_NONSOLID
independent player
Definition constants.qh:4
const int FL_DUCKED
Definition constants.qh:81
const int FRAGS_PLAYER_OUT_OF_GAME
still shown with a score and/or a team, but currently forced to spec/observe
Definition constants.qh:6
const int FL_GODMODE
Definition constants.qh:67
const int KEY_LEFT
Definition constants.qh:38
const int FL_PARTIALGROUND
Definition constants.qh:71
const int FL_POWERUP
Definition constants.qh:76
const int FL_MONSTER
Definition constants.qh:66
const int SERVERFLAG_PLAYERSTATS_CUSTOM
Definition constants.qh:20
const int EF_SHOCK
Definition constants.qh:95
const vector PL_CROUCH_MIN_CONST
Definition constants.qh:55
const int KEY_CROUCH
Definition constants.qh:41
const int FL_INWATER
Definition constants.qh:65
const int FRAGS_PLAYER
not 0 because all fields are initially 0
Definition constants.qh:3
const int FL_ONSLICK
Definition constants.qh:82
const int SPECIES_ROBOT_SHINY
Definition constants.qh:28
const int KEY_ATCK
Definition constants.qh:42
const vector PL_CROUCH_MAX_CONST
Definition constants.qh:54
const int SPECIES_ALIEN
Definition constants.qh:25
const int SPECIES_HUMAN
Definition constants.qh:23
const int FL_TOSSED
Definition constants.qh:78
const int FRAGS_SPECTATOR
engine expects this value
Definition constants.qh:5
const vector PL_MAX_CONST
Definition constants.qh:52
const int FL_FLY
Definition constants.qh:62
const int FL_ITEM
Definition constants.qh:69
const int INITPRIO_FIRST
Definition constants.qh:85
vector
Definition self.qh:96