31#define GAME_VERSION "mohaa-base-1"
33static const int MINS_X = -15;
34static const int MINS_Y = -15;
35static const int MINS_Z = 0;
36static const int MAXS_X = 15;
37static const int MAXS_Y = 15;
38static const int MAXS_Z = 94;
39static const int DEAD_MINS_Z = 32;
40static const int CROUCH_MAXS_Z = 49;
42static const unsigned int DEFAULT_VIEWHEIGHT = 82;
43static const unsigned int CROUCH_RUN_VIEWHEIGHT = 64;
44static const unsigned int JUMP_START_VIEWHEIGHT = 52;
45static const unsigned int CROUCH_VIEWHEIGHT = 48;
46static const unsigned int PRONE_VIEWHEIGHT = 16;
47static const unsigned int DEAD_VIEWHEIGHT = 8;
66#define CS_GAME_VERSION 9
67#define CS_LEVEL_START_TIME 10
69#define CS_CURRENT_OBJECTIVE 11
71#define CS_RAIN_DENSITY 12
72#define CS_RAIN_SPEED 13
73#define CS_RAIN_SPEEDVARY 14
74#define CS_RAIN_SLANT 15
75#define CS_RAIN_LENGTH 16
76#define CS_RAIN_MINDIST 17
77#define CS_RAIN_WIDTH 18
78#define CS_RAIN_SHADER 19
79#define CS_RAIN_NUMSHADERS 20
84#define CS_VOTE_TIME 21
85#define CS_VOTE_STRING 22
88#define CS_VOTE_UNDECIDED 25
94#define CS_OBJECTIVES (CS_MODELS + MAX_MODELS)
95#define CS_SOUNDS (CS_OBJECTIVES + MAX_OBJECTIVES)
97#define CS_IMAGES (CS_SOUNDS + MAX_SOUNDS)
100#define CS_LIGHTSTYLES (CS_IMAGES + MAX_IMAGES)
101#define CS_PLAYERS (CS_LIGHTSTYLES + MAX_LIGHTSTYLES)
103#define CS_WEAPONS (CS_PLAYERS + MAX_CLIENTS)
105#define CS_GENERAL_STRINGS 1893
106#define CS_SPECTATORS 1894
107#define CS_ALLIES 1895
109#define CS_SOUNDTRACK 1881
113#define CS_MAX (CS_PARTICLES + MAX_LOCATIONS)
114#if (CS_MAX) > MAX_CONFIGSTRINGS
115# error overflow: (CS_MAX) > MAX_CONFIGSTRINGS
138 static const float CONSTANTLIGHT_RADIUS_SCALE = 8;
151 VM_ANIM_FIRE_SECONDARY,
154 VM_ANIM_RELOAD_SINGLE,
183 static const unsigned int MAX_CLIP_PLANES = 5;
184 static const float MIN_WALK_NORMAL = 0.7f;
186 static const float STEPSIZE = 18;
188 static const float OVERCLIP = 1.001f;
208 EV_TERMINAL_VELOCITY,
222# define PMF_DUCKED (1 << 0)
223# define PMF_JUMP_HELD (1 << 1)
224# define PMF_BACKWARDS_JUMP 0
225# define PMF_BACKWARDS_RUN 0
226# define PMF_TIME_LAND (1 << 5)
227# define PMF_TIME_KNOCKBACK (1 << 6)
228# define PMF_TIME_WATERJUMP (1 << 8)
229# define PMF_USE_ITEM_HELD (1 << 10)
230# define PMF_GRAPPLE_PULL (1 << 11)
231# define PMF_FOLLOW (1 << 12)
232# define PMF_SCOREBOARD (1 << 13)
233# define PMF_INVULEXPAND (1 << 14)
234# define PMF_FROZEN (1 << 15)
235# define PMF_NO_MOVE (1 << 16)
236# define PMF_NO_PREDICTION (1 << 17)
237# define PMF_NO_GRAVITY (1 << 18)
238# define PMF_LEVELEXIT (1 << 20)
242#define PMF_DUCKED (1 << 0)
243#define PMF_VIEW_PRONE (1 << 1)
244#define PMF_DAMAGE_ANGLES (1 << 1)
248#define PMF_SPECTATING (1 << 2)
249#define PMF_RESPAWNED (1 << 3)
250#define PMF_NO_PREDICTION (1 << 4)
251#define PMF_FROZEN (1 << 5)
252#define PMF_INTERMISSION (1 << 6)
253#define PMF_SPECTATE_FOLLOW (1 << 7)
254#define PMF_CAMERA_VIEW (1 << 7)
255#define PMF_NO_MOVE (1 << 8)
256#define PMF_VIEW_DUCK_RUN (1 << 9)
257#define PMF_VIEW_JUMP_START (1 << 10)
258#define PMF_LEVELEXIT (1 << 11)
259#define PMF_NO_GRAVITY (1 << 12)
260#define PMF_NO_HUD (1 << 13)
261#define PMF_TURRET (1 << 14)
262#define PMF_NO_LEAN (1 << 15)
265 enum moveposflags_e {
266 MPF_POSITION_STANDING = (1 << 0),
267 MPF_POSITION_CROUCHING = (1 << 1),
268 MPF_POSITION_PRONE = (1 << 2),
269 MPF_POSITION_OFFGROUND = (1 << 3),
270 MPF_MOVEMENT_WALKING = (1 << 4),
271 MPF_MOVEMENT_RUNNING = (1 << 5),
272 MPF_MOVEMENT_FALLING = (1 << 6),
292 qboolean noFootsteps;
293 qboolean alwaysAllowLean;
299 int touchents[MAXTOUCH];
329 int (*pointcontents)(
const vec3_t point,
int passEntityNum);
336 float leanRecoverSpeed;
342 void PM_GetMove(
float *pfForward,
float *pfRight);
343 void PM_UpdateViewAngles(playerState_t *ps,
const usercmd_t *cmd);
344 void Pmove_GroundTrace(
pmove_t *pmove);
347 PmoveAdjustAngleSettings(vec_t *vViewAngles, vec_t *vAngles, playerState_t *pPlayerState, entityState_t *pEntState);
348 void PmoveAdjustAngleSettings_Client(
349 vec_t *vViewAngles, vec_t *vAngles, playerState_t *pPlayerState, entityState_t *pEntState
354 static const unsigned int MAX_LETTERBOX_SIZE = 0x7fff;
357 WEAPON_CLASS_PISTOL = (1 << 0),
358 WEAPON_CLASS_RIFLE = (1 << 1),
359 WEAPON_CLASS_SMG = (1 << 2),
360 WEAPON_CLASS_MG = (1 << 3),
361 WEAPON_CLASS_GRENADE = (1 << 4),
362 WEAPON_CLASS_HEAVY = (1 << 5),
363 WEAPON_CLASS_CANNON = (1 << 6),
364 WEAPON_CLASS_ITEM = (1 << 7),
365 WEAPON_CLASS_ITEM1 = (1 << 8),
366 WEAPON_CLASS_ITEM2 = (1 << 9),
367 WEAPON_CLASS_ITEM3 = (1 << 10),
368 WEAPON_CLASS_ITEM4 = (1 << 11),
369 WEAPON_CLASS_ANY_ITEM =
370 (WEAPON_CLASS_ITEM | WEAPON_CLASS_ITEM1 | WEAPON_CLASS_ITEM2 | WEAPON_CLASS_ITEM3 | WEAPON_CLASS_ITEM4),
371 WEAPON_CLASS_ITEM_SLOT_BITS =
372 (WEAPON_CLASS_ITEM1 | WEAPON_CLASS_ITEM2 | WEAPON_CLASS_ITEM3 | WEAPON_CLASS_ITEM4),
373 WEAPON_CLASS_PRIMARY = (!(WEAPON_CLASS_PISTOL | WEAPON_CLASS_GRENADE)),
374 WEAPON_CLASS_SECONDARY = (WEAPON_CLASS_PISTOL | WEAPON_CLASS_GRENADE),
375 WEAPON_CLASS_THROWABLE = (WEAPON_CLASS_GRENADE | WEAPON_CLASS_ITEM),
377 (WEAPON_CLASS_CANNON | WEAPON_CLASS_ITEM | WEAPON_CLASS_ITEM1 | WEAPON_CLASS_ITEM2 | WEAPON_CLASS_ITEM3
378 | WEAPON_CLASS_ITEM4),
379 WEAPON_CLASS_ITEMINDEX = (WEAPON_CLASS_ITEM1 | WEAPON_CLASS_ITEM2 | WEAPON_CLASS_ITEM3 | WEAPON_CLASS_ITEM4)
393#define EF_EVERYFRAME 0x00000008
394#define EF_CLIMBWALL 0x00000010
395#define EF_UNARMED 0x00000020
396#define EF_LINKANGLES 0x00000040
397#define EF_ALLIES 0x00000080
398#define EF_AXIS 0x00000100
399#define EF_ANY_TEAM (EF_ALLIES | EF_AXIS)
400#define EF_DEAD 0x00000200
401#define EF_NO_LERP 0x00001000
406#define EF_PLAYER_IN_MENU 0x00000400
407#define EF_PLAYER_TALKING 0x00000800
408#define EF_PLAYER_ARTILLERY 0x00002000
411#define EF_TICKING 0x00000002
412#define EF_TELEPORT_BIT 0x00000004
413#define EF_AWARD_EXCELLENT 0x00000008
414#define EF_PLAYER_EVENT 0x00000010
415#define EF_BOUNCE 0x00000010
416#define EF_AWARD_GAUNTLET 0x00000040
417#define EF_MOVER_STOP 0x00000400
418#define EF_AWARD_CAP 0x00000800
419#define EF_TALK 0x00001000
420#define EF_CONNECTION 0x00002000
421#define EF_VOTED 0x00004000
422#define EF_AWARD_IMPRESSIVE 0x00008000
423#define EF_AWARD_DEFEND 0x00010000
424#define EF_AWARD_ASSIST 0x00020000
425#define EF_AWARD_DENIED 0x00040000
426#define EF_TEAMVOTED 0x00080000
427#define EF_ANTISBJUICE 0x00200000
428#define EF_DONT_PROCESS_COMMANDS 0x00400000
435#define TAG_NUMBITS 10
436#define TAG_MASK ((1 << 10) - 1)
441#define CF_CAMERA_ANGLES_ABSOLUTE (1 << 0)
442#define CF_CAMERA_ANGLES_IGNORE_PITCH (1 << 1)
443#define CF_CAMERA_ANGLES_IGNORE_YAW (1 << 2)
444#define CF_CAMERA_ANGLES_ALLOWOFFSET (1 << 3)
445#define CF_CAMERA_ANGLES_TURRETMODE (1 << 4)
446#define CF_CAMERA_CUT_BIT (1 << 7)
454 MOD_CRUSH_EVERY_FRAME,
459 MOD_LAST_SELF_INFLICTED,
525 STAT_EQUIPPED_WEAPON,
541 STAT_OBJECTIVECENTER,
546 STAT_VEHICLE_MAX_HEALTH,
550 STAT_INFOCLIENT_HEALTH,
556 extern const char *means_of_death_strings[];
576#define DF_NO_HEALTH (1 << 0)
577#define DF_NO_POWERUPS (1 << 1)
578#define DF_WEAPONS_STAY (1 << 2)
579#define DF_NO_FALLING (1 << 3)
580#define DF_INSTANT_ITEMS (1 << 4)
581#define DF_SAME_LEVEL (1 << 5)
582#define DF_SKINTEAMS (1 << 6)
583#define DF_MODELTEAMS (1 << 7)
584#define DF_FRIENDLY_FIRE (1 << 8)
585#define DF_SPAWN_FARTHEST (1 << 9)
586#define DF_FORCE_RESPAWN (1 << 10)
587#define DF_NO_ARMOR (1 << 11)
588#define DF_FAST_WEAPONS (1 << 12)
589#define DF_NOEXIT (1 << 13)
590#define DF_INFINITE_AMMO (1 << 14)
591#define DF_FIXED_FOV (1 << 15)
592#define DF_NO_DROP_WEAPONS (1 << 16)
593#define DF_NO_FOOTSTEPS (1 << 17)
594#define DF_ALLOW_LEAN_MOVEMENT (1 << 18)
595#define DF_OLD_SNIPER (1 << 19)
596#define DF_DISALLOW_KAR98_MORTAR (1 << 20)
598#define DF_WEAPON_LANDMINE_ALWAYS (1 << 21)
599#define DF_WEAPON_NO_RIFLE (1 << 22)
600#define DF_WEAPON_NO_SNIPER (1 << 23)
601#define DF_WEAPON_NO_SMG (1 << 24)
602#define DF_WEAPON_NO_MG (1 << 25)
603#define DF_WEAPON_NO_ROCKET (1 << 26)
604#define DF_WEAPON_NO_SHOTGUN (1 << 27)
605#define DF_WEAPON_NO_LANDMINE (1 << 28)
607#define DM_FLAG(flag) (g_gametype->integer != GT_SINGLE_PLAYER && ((int)dmflags->integer & (flag)))
615 (CONTENTS_SOLID | CONTENTS_BODY | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX | CONTENTS_FENCE)
616#define MASK_SAFESOLID (CONTENTS_BODY | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX)
617#define MASK_USABLE (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_BODY)
618#define MASK_PLAYERSOLID \
619 (CONTENTS_TRIGGER | CONTENTS_BODY | CONTENTS_PLAYERCLIP | CONTENTS_FENCE | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP \
620 | CONTENTS_BBOX | CONTENTS_SOLID)
621#define MASK_GUNTARGET \
622 (CONTENTS_SOLID | CONTENTS_LADDER | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_CLAYPIDGEON | CONTENTS_BBOX \
623 | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_UNKNOWN3 | CONTENTS_FENCE | CONTENTS_BODY | CONTENTS_CORPSE \
625#define MASK_FOOTSHADOW (CONTENTS_FENCE | CONTENTS_SLIME | CONTENTS_LAVA | CONTENTS_SOLID)
626#define MASK_PLAYERSTART (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_BODY)
627#define MASK_VIEWSOLID (CONTENTS_SOLID | CONTENTS_PLAYERCLIP | CONTENTS_FENCE | CONTENTS_TRIGGER)
628#define MASK_DEADSOLID (CONTENTS_SOLID | CONTENTS_PLAYERCLIP | CONTENTS_CORPSE | CONTENTS_NOTTEAM2 | CONTENTS_FENCE)
629#define MASK_MONSTERSOLID \
630 (CONTENTS_SOLID | CONTENTS_MONSTERCLIP | CONTENTS_BODY | CONTENTS_TRIGGER | CONTENTS_UNKNOWN2 | CONTENTS_BBOX)
631#define MASK_WATER (CONTENTS_WATER | CONTENTS_LAVA | CONTENTS_SLIME)
632#define MASK_OPAQUE (CONTENTS_SOLID | CONTENTS_SLIME | CONTENTS_LAVA)
634 (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_FENCE | CONTENTS_WEAPONCLIP \
635 | CONTENTS_BODY | CONTENTS_TRIGGER)
636#define MASK_SHOT_TRIG \
637 (CONTENTS_SOLID | CONTENTS_CLAYPIDGEON | CONTENTS_WATER | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 \
638 | CONTENTS_FENCE | CONTENTS_WEAPONCLIP | CONTENTS_BODY | CONTENTS_TRIGGER)
639#define MASK_SHOT_FLUID \
640 (CONTENTS_SOLID | CONTENTS_WATER | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_FENCE \
641 | CONTENTS_WEAPONCLIP | CONTENTS_SHOOTONLY | CONTENTS_BODY | CONTENTS_TRIGGER)
642#define MASK_PROJECTILE \
643 (CONTENTS_SOLID | CONTENTS_BODY | CONTENTS_TRIGGER | CONTENTS_FENCE | CONTENTS_WEAPONCLIP | CONTENTS_UNKNOWN2 \
644 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX)
646 (CONTENTS_SOLID | CONTENTS_BODY | CONTENTS_TRIGGER | CONTENTS_WEAPONCLIP | CONTENTS_FENCE | CONTENTS_UNKNOWN2 \
647 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX | CONTENTS_NOTTEAM1)
648#define MASK_PATHSOLID \
649 (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_BODY | CONTENTS_FENCE | CONTENTS_UNKNOWN2 | CONTENTS_BBOX \
650 | CONTENTS_MONSTERCLIP)
651#define MASK_LOOK (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_FENCE)
652#define MASK_CAMERASOLID (CONTENTS_SOLID | CONTENTS_PLAYERCLIP | CONTENTS_BODY | MASK_WATER)
653#define MASK_BEAM (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_PLAYERCLIP | CONTENTS_BODY | CONTENTS_FENCE)
655 (CONTENTS_SOLID | CONTENTS_LADDER | CONTENTS_TRIGGER | CONTENTS_PLAYERCLIP | CONTENTS_BODY | CONTENTS_FENCE | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX)
656#define MASK_AUTOCALCLIFE (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_FENCE)
657#define MASK_EXPLOSION (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_WEAPONCLIP)
658#define MASK_SOUND (CONTENTS_SOLID | CONTENTS_TRANSLUCENT)
659#define MASK_VEHICLE \
660 (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_FENCE | CONTENTS_VEHICLECLIP \
661 | CONTENTS_BODY | CONTENTS_TRIGGER)
662#define MASK_VEHICLE_TIRES (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_FENCE | CONTENTS_VEHICLECLIP | CONTENTS_TRIGGER)
664 (CONTENTS_VEHICLECLIP | CONTENTS_WEAPONCLIP | CONTENTS_MONSTERCLIP | CONTENTS_PLAYERCLIP | CONTENTS_SOLID)
666 (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 \
667 | CONTENTS_FENCE | CONTENTS_WEAPONCLIP | CONTENTS_BODY)
668#define MASK_CANSEE_NOENTS (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_FENCE | CONTENTS_WEAPONCLIP)
670 (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_FENCE | CONTENTS_WEAPONCLIP \
671 | CONTENTS_BODY | CONTENTS_TRIGGER)
672#define MASK_CLICKITEM (MASK_SOLID | CONTENTS_UNKNOWN3)
673#define MASK_ITEM (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_PLAYERCLIP | CONTENTS_FENCE)
674#define MASK_TRANSITION \
675 (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_FENCE | CONTENTS_WEAPONCLIP | CONTENTS_UNKNOWN2 \
677#define MASK_TARGETPATH \
678 (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_MONSTERCLIP | CONTENTS_FENCE | CONTENTS_UNKNOWN2 | CONTENTS_BBOX)
679#define MASK_ACTORPATH (CONTENTS_SOLID | CONTENTS_FENCE | CONTENTS_MONSTERCLIP | CONTENTS_TRIGGER)
680#define MASK_GRENADEPATH \
681 (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_FENCE | CONTENTS_WEAPONCLIP \
682 | CONTENTS_BODY | CONTENTS_TRIGGER)
683#define MASK_LINE (CONTENTS_SOLID | CONTENTS_BODY | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX)
684#define MASK_VEHICLETURRET \
685 (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_FENCE | CONTENTS_VEHICLECLIP | CONTENTS_MONSTERCLIP \
686 | CONTENTS_PLAYERCLIP)
687#define MASK_VOLUMETRIC_SMOKE \
688 (CONTENTS_TRANSLUCENT | CONTENTS_CORPSE | CONTENTS_BODY | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX \
690#define MASK_SMOKE_SPRITE (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_FENCE)
691#define MASK_LANDMINE \
692 (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_FENCE | CONTENTS_PLAYERCLIP \
693 | CONTENTS_WEAPONCLIP | CONTENTS_BODY | CONTENTS_DETAIL | CONTENTS_STRUCTURAL | CONTENTS_TRIGGER)
694#define MASK_LANDMINE_PLACE \
695 (CONTENTS_SOLID | CONTENTS_FENCE | CONTENTS_PLAYERCLIP | CONTENTS_DETAIL | CONTENTS_STRUCTURAL | CONTENTS_TRIGGER)
696#define MASK_BATTLELANGUAGE \
697 (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_PLAYERCLIP \
698 | CONTENTS_WEAPONCLIP | CONTENTS_BODY | CONTENTS_TRIGGER)
699#define MASK_SCRIPT_SLAVE \
700 (CONTENTS_LADDER | CONTENTS_CLAYPIDGEON | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 \
701 | CONTENTS_UNKNOWN3 | CONTENTS_BODY | CONTENTS_CORPSE)
702#define MASK_CARRYABLETURRET \
703 (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_FENCE | CONTENTS_BODY)
704#define MASK_AITURRET \
705 (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 \
706 | CONTENTS_FENCE | CONTENTS_WEAPONCLIP | CONTENTS_BODY)
707#define MASK_TRANSPARENT (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_BBOX | CONTENTS_FENCE)
708#define MASK_MOVEVEHICLE \
709 (CONTENTS_LADDER | CONTENTS_CLAYPIDGEON | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN3 | CONTENTS_BODY \
711#define MASK_MOVEINFO (CONTENTS_SOLID | CONTENTS_FENCE)
712#define MASK_AI_CANSEE \
713 (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_BBOX | CONTENTS_UNKNOWN2 | CONTENTS_FENCE \
714 | CONTENTS_WEAPONCLIP)
715#define MASK_CORNER_NODE \
716 (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_UNKNOWN2 | CONTENTS_WEAPONCLIP | CONTENTS_BODY)
717#define MASK_IGNORE_ENTS \
718 (CONTENTS_CORPSE | CONTENTS_BODY | CONTENTS_UNKNOWN3 | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX \
719 | CONTENTS_CLAYPIDGEON | CONTENTS_LADDER)
724#define MASK_MARK (CONTENTS_TRIGGER | CONTENTS_SOLID)
725#define MASK_TREADMARK \
726 (CONTENTS_TRIGGER | CONTENTS_BODY | CONTENTS_PLAYERCLIP | CONTENTS_FENCE | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP \
727 | CONTENTS_BBOX | CONTENTS_SOLID)
729 void BG_EvaluateTrajectoryDelta(
const trajectory_t *tr,
int atTime, vec3_t result);
731 void BG_PlayerStateToEntityState(playerState_t *ps, entityState_t *s, qboolean snap);
732 void BG_PlayerStateToEntityStateExtraPolate(playerState_t *ps, entityState_t *s,
int time, qboolean snap);
734 enum cg_message_ver_15_e {
748 CGM_EXPLOSION_EFFECT_1,
749 CGM_EXPLOSION_EFFECT_2,
750 CGM_EXPLOSION_EFFECT_3,
751 CGM_EXPLOSION_EFFECT_4,
761 CGM_MAKE_CRATE_DEBRIS,
762 CGM_MAKE_WINDOW_DEBRIS,
763 CGM_BULLET_NO_BARREL_1,
764 CGM_BULLET_NO_BARREL_2,
768 CGM_HUDDRAW_VIRTUALSIZE,
779 enum cg_message_ver_6_e {
792 CGM6_EXPLOSION_EFFECT_1,
793 CGM6_EXPLOSION_EFFECT_2,
803 CGM6_MAKE_CRATE_DEBRIS,
804 CGM6_MAKE_WINDOW_DEBRIS,
805 CGM6_BULLET_NO_BARREL_1,
806 CGM6_BULLET_NO_BARREL_2,
810 CGM6_HUDDRAW_VIRTUALSIZE,
820 int BG_MapCGMToProtocol(
int protocol,
int messageNumber);
829 OBJ_FLAG_CURRENT = 2,
830 OBJ_FLAG_COMPLETED = 4
Definition bg_public.h:284
Definition q_shared.h:1452
Definition q_shared.h:1979