31#define GAME_VERSION "mohaa-base-1"
33static const int MINS_X = -15;
34static const int MINS_Y = -15;
35static const int MAXS_X = 15;
36static const int MAXS_Y = 15;
38static const int MINS_Z = 0;
39static const int MAXS_Z = 94;
41static const int DEAD_MINS_Z = 32;
42static const int PRONE_MAXS_Z = 20;
43static const int CROUCH_MAXS_Z = 54;
44static const int CROUCH_RUN_MAXS_Z = 60;
46static const unsigned int DEFAULT_VIEWHEIGHT = 82;
47static const unsigned int CROUCH_RUN_VIEWHEIGHT = 64;
48static const unsigned int JUMP_START_VIEWHEIGHT = 52;
49static const unsigned int CROUCH_VIEWHEIGHT = 48;
50static const unsigned int PRONE_VIEWHEIGHT = 16;
51static const unsigned int DEAD_VIEWHEIGHT = 8;
70#define CS_GAME_VERSION 9
71#define CS_LEVEL_START_TIME 10
73#define CS_CURRENT_OBJECTIVE 11
75#define CS_RAIN_DENSITY 12
76#define CS_RAIN_SPEED 13
77#define CS_RAIN_SPEEDVARY 14
78#define CS_RAIN_SLANT 15
79#define CS_RAIN_LENGTH 16
80#define CS_RAIN_MINDIST 17
81#define CS_RAIN_WIDTH 18
82#define CS_RAIN_SHADER 19
83#define CS_RAIN_NUMSHADERS 20
88#define CS_VOTE_TIME 21
89#define CS_VOTE_STRING 22
92#define CS_VOTE_UNDECIDED 25
98#define CS_OBJECTIVES (CS_MODELS + MAX_MODELS)
99#define CS_SOUNDS (CS_OBJECTIVES + MAX_OBJECTIVES)
101#define CS_IMAGES (CS_SOUNDS + MAX_SOUNDS)
104#define CS_LIGHTSTYLES (CS_IMAGES + MAX_IMAGES)
105#define CS_PLAYERS (CS_LIGHTSTYLES + MAX_LIGHTSTYLES)
107#define CS_WEAPONS (CS_PLAYERS + MAX_CLIENTS)
109#define CS_GENERAL_STRINGS 1893
110#define CS_SPECTATORS 1894
111#define CS_ALLIES 1895
113#define CS_SOUNDTRACK 1881
117#define CS_MAX (CS_PARTICLES + MAX_LOCATIONS)
118#if (CS_MAX) > MAX_CONFIGSTRINGS
119# error overflow: (CS_MAX) > MAX_CONFIGSTRINGS
142 static const float CONSTANTLIGHT_RADIUS_SCALE = 8;
155 VM_ANIM_FIRE_SECONDARY,
158 VM_ANIM_RELOAD_SINGLE,
187 static const unsigned int MAX_CLIP_PLANES = 5;
188 static const float MIN_WALK_NORMAL = 0.7f;
190 static const float STEPSIZE = 18;
192 static const float OVERCLIP = 1.001f;
212 EV_TERMINAL_VELOCITY,
226# define PMF_DUCKED (1 << 0)
227# define PMF_JUMP_HELD (1 << 1)
228# define PMF_BACKWARDS_JUMP 0
229# define PMF_BACKWARDS_RUN 0
230# define PMF_TIME_LAND (1 << 5)
231# define PMF_TIME_KNOCKBACK (1 << 6)
232# define PMF_TIME_WATERJUMP (1 << 8)
233# define PMF_USE_ITEM_HELD (1 << 10)
234# define PMF_GRAPPLE_PULL (1 << 11)
235# define PMF_FOLLOW (1 << 12)
236# define PMF_SCOREBOARD (1 << 13)
237# define PMF_INVULEXPAND (1 << 14)
238# define PMF_FROZEN (1 << 15)
239# define PMF_NO_MOVE (1 << 16)
240# define PMF_NO_PREDICTION (1 << 17)
241# define PMF_NO_GRAVITY (1 << 18)
242# define PMF_LEVELEXIT (1 << 20)
246#define PMF_DUCKED (1 << 0)
247#define PMF_VIEW_PRONE (1 << 1)
248#define PMF_DAMAGE_ANGLES (1 << 1)
252#define PMF_SPECTATING (1 << 2)
253#define PMF_RESPAWNED (1 << 3)
254#define PMF_NO_PREDICTION (1 << 4)
255#define PMF_FROZEN (1 << 5)
256#define PMF_INTERMISSION (1 << 6)
257#define PMF_SPECTATE_FOLLOW (1 << 7)
258#define PMF_CAMERA_VIEW (1 << 7)
259#define PMF_NO_MOVE (1 << 8)
260#define PMF_VIEW_DUCK_RUN (1 << 9)
261#define PMF_VIEW_JUMP_START (1 << 10)
262#define PMF_LEVELEXIT (1 << 11)
263#define PMF_TURRET (1 << 12)
264#define PMF_NO_WEAPONBAR (1 << 14)
265#define PMF_NO_HUD (1 << 15)
268 enum moveposflags_e {
269 MPF_POSITION_STANDING = (1 << 0),
270 MPF_POSITION_CROUCHING = (1 << 1),
271 MPF_POSITION_PRONE = (1 << 2),
272 MPF_POSITION_OFFGROUND = (1 << 3),
273 MPF_MOVEMENT_WALKING = (1 << 4),
274 MPF_MOVEMENT_RUNNING = (1 << 5),
275 MPF_MOVEMENT_FALLING = (1 << 6),
295 qboolean noFootsteps;
296 qboolean alwaysAllowLean;
302 int touchents[MAXTOUCH];
332 int (*pointcontents)(
const vec3_t point,
int passEntityNum);
339 float leanRecoverSpeed;
345 void PM_GetMove(
float *pfForward,
float *pfRight);
346 void PM_UpdateViewAngles(playerState_t *ps,
const usercmd_t *cmd);
347 void Pmove_GroundTrace(
pmove_t *pmove);
350 PmoveAdjustAngleSettings(vec_t *vViewAngles, vec_t *vAngles, playerState_t *pPlayerState, entityState_t *pEntState);
351 void PmoveAdjustAngleSettings_Client(
352 vec_t *vViewAngles, vec_t *vAngles, playerState_t *pPlayerState, entityState_t *pEntState
357 static const unsigned int MAX_LETTERBOX_SIZE = 0x7fff;
360 WEAPON_CLASS_PISTOL = (1 << 0),
361 WEAPON_CLASS_RIFLE = (1 << 1),
362 WEAPON_CLASS_SMG = (1 << 2),
363 WEAPON_CLASS_MG = (1 << 3),
364 WEAPON_CLASS_GRENADE = (1 << 4),
365 WEAPON_CLASS_HEAVY = (1 << 5),
366 WEAPON_CLASS_CANNON = (1 << 6),
367 WEAPON_CLASS_ITEM = (1 << 7),
368 WEAPON_CLASS_ITEM1 = (1 << 8),
369 WEAPON_CLASS_ITEM2 = (1 << 9),
370 WEAPON_CLASS_ITEM3 = (1 << 10),
371 WEAPON_CLASS_ITEM4 = (1 << 11),
372 WEAPON_CLASS_ANY_ITEM =
373 (WEAPON_CLASS_ITEM | WEAPON_CLASS_ITEM1 | WEAPON_CLASS_ITEM2 | WEAPON_CLASS_ITEM3 | WEAPON_CLASS_ITEM4),
374 WEAPON_CLASS_ITEM_SLOT_BITS =
375 (WEAPON_CLASS_ITEM1 | WEAPON_CLASS_ITEM2 | WEAPON_CLASS_ITEM3 | WEAPON_CLASS_ITEM4),
376 WEAPON_CLASS_PRIMARY = (!(WEAPON_CLASS_PISTOL | WEAPON_CLASS_GRENADE)),
377 WEAPON_CLASS_SECONDARY = (WEAPON_CLASS_PISTOL | WEAPON_CLASS_GRENADE),
378 WEAPON_CLASS_THROWABLE = (WEAPON_CLASS_GRENADE | WEAPON_CLASS_ITEM),
380 (WEAPON_CLASS_CANNON | WEAPON_CLASS_ITEM | WEAPON_CLASS_ITEM1 | WEAPON_CLASS_ITEM2 | WEAPON_CLASS_ITEM3
381 | WEAPON_CLASS_ITEM4),
382 WEAPON_CLASS_ITEMINDEX = (WEAPON_CLASS_ITEM1 | WEAPON_CLASS_ITEM2 | WEAPON_CLASS_ITEM3 | WEAPON_CLASS_ITEM4)
396#define EF_EVERYFRAME 0x00000008
397#define EF_CLIMBWALL 0x00000010
398#define EF_UNARMED 0x00000020
399#define EF_LINKANGLES 0x00000040
400#define EF_ALLIES 0x00000080
401#define EF_AXIS 0x00000100
402#define EF_ANY_TEAM (EF_ALLIES | EF_AXIS)
403#define EF_DEAD 0x00000200
404#define EF_NO_LERP 0x00001000
409#define EF_PLAYER_IN_MENU 0x00000400
410#define EF_PLAYER_TALKING 0x00000800
411#define EF_PLAYER_ARTILLERY 0x00002000
414#define EF_TICKING 0x00000002
415#define EF_TELEPORT_BIT 0x00000004
416#define EF_AWARD_EXCELLENT 0x00000008
417#define EF_PLAYER_EVENT 0x00000010
418#define EF_BOUNCE 0x00000010
419#define EF_AWARD_GAUNTLET 0x00000040
420#define EF_MOVER_STOP 0x00000400
421#define EF_AWARD_CAP 0x00000800
422#define EF_TALK 0x00001000
423#define EF_CONNECTION 0x00002000
424#define EF_VOTED 0x00004000
425#define EF_AWARD_IMPRESSIVE 0x00008000
426#define EF_AWARD_DEFEND 0x00010000
427#define EF_AWARD_ASSIST 0x00020000
428#define EF_AWARD_DENIED 0x00040000
429#define EF_TEAMVOTED 0x00080000
430#define EF_ANTISBJUICE 0x00200000
431#define EF_DONT_PROCESS_COMMANDS 0x00400000
438#define TAG_NUMBITS 10
439#define TAG_MASK ((1 << 10) - 1)
444#define CF_CAMERA_ANGLES_ABSOLUTE (1 << 0)
445#define CF_CAMERA_ANGLES_IGNORE_PITCH (1 << 1)
446#define CF_CAMERA_ANGLES_IGNORE_YAW (1 << 2)
447#define CF_CAMERA_ANGLES_ALLOWOFFSET (1 << 3)
448#define CF_CAMERA_ANGLES_TURRETMODE (1 << 4)
449#define CF_CAMERA_CUT_BIT (1 << 7)
457 MOD_CRUSH_EVERY_FRAME,
462 MOD_LAST_SELF_INFLICTED,
528 STAT_EQUIPPED_WEAPON,
544 STAT_OBJECTIVECENTER,
549 STAT_VEHICLE_MAX_HEALTH,
553 STAT_INFOCLIENT_HEALTH,
559 extern const char *means_of_death_strings[];
579#define DF_NO_HEALTH (1 << 0)
580#define DF_NO_POWERUPS (1 << 1)
581#define DF_WEAPONS_STAY (1 << 2)
582#define DF_NO_FALLING (1 << 3)
583#define DF_INSTANT_ITEMS (1 << 4)
584#define DF_SAME_LEVEL (1 << 5)
585#define DF_SKINTEAMS (1 << 6)
586#define DF_MODELTEAMS (1 << 7)
587#define DF_FRIENDLY_FIRE (1 << 8)
588#define DF_SPAWN_FARTHEST (1 << 9)
589#define DF_FORCE_RESPAWN (1 << 10)
590#define DF_NO_ARMOR (1 << 11)
591#define DF_FAST_WEAPONS (1 << 12)
592#define DF_NOEXIT (1 << 13)
593#define DF_INFINITE_AMMO (1 << 14)
594#define DF_FIXED_FOV (1 << 15)
595#define DF_NO_DROP_WEAPONS (1 << 16)
596#define DF_NO_FOOTSTEPS (1 << 17)
597#define DF_ALLOW_LEAN_MOVEMENT (1 << 18)
598#define DF_OLD_SNIPER (1 << 19)
599#define DF_DISALLOW_KAR98_MORTAR (1 << 20)
601#define DF_WEAPON_LANDMINE_ALWAYS (1 << 21)
602#define DF_WEAPON_NO_RIFLE (1 << 22)
603#define DF_WEAPON_NO_SNIPER (1 << 23)
604#define DF_WEAPON_NO_SMG (1 << 24)
605#define DF_WEAPON_NO_MG (1 << 25)
606#define DF_WEAPON_NO_ROCKET (1 << 26)
607#define DF_WEAPON_NO_SHOTGUN (1 << 27)
608#define DF_WEAPON_NO_LANDMINE (1 << 28)
610#define DM_FLAG(flag) (g_gametype->integer != GT_SINGLE_PLAYER && ((int)dmflags->integer & (flag)))
618 (CONTENTS_SOLID | CONTENTS_BODY | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX | CONTENTS_FENCE)
619#define MASK_SAFESOLID (CONTENTS_BODY | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX)
620#define MASK_USABLE (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_BODY)
621#define MASK_PLAYERSOLID \
622 (CONTENTS_TRIGGER | CONTENTS_BODY | CONTENTS_PLAYERCLIP | CONTENTS_FENCE | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP \
623 | CONTENTS_BBOX | CONTENTS_SOLID)
624#define MASK_GUNTARGET \
625 (CONTENTS_SOLID | CONTENTS_LADDER | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_CLAYPIDGEON | CONTENTS_BBOX \
626 | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_UNKNOWN3 | CONTENTS_FENCE | CONTENTS_BODY | CONTENTS_CORPSE \
628#define MASK_FOOTSHADOW (CONTENTS_FENCE | CONTENTS_SLIME | CONTENTS_LAVA | CONTENTS_SOLID)
629#define MASK_PLAYERSTART (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_BODY)
630#define MASK_VIEWSOLID (CONTENTS_SOLID | CONTENTS_PLAYERCLIP | CONTENTS_FENCE | CONTENTS_TRIGGER)
631#define MASK_DEADSOLID (CONTENTS_SOLID | CONTENTS_PLAYERCLIP | CONTENTS_CORPSE | CONTENTS_NOTTEAM2 | CONTENTS_FENCE)
632#define MASK_MONSTERSOLID \
633 (CONTENTS_SOLID | CONTENTS_MONSTERCLIP | CONTENTS_BODY | CONTENTS_TRIGGER | CONTENTS_UNKNOWN2 | CONTENTS_BBOX)
634#define MASK_WATER (CONTENTS_WATER | CONTENTS_LAVA | CONTENTS_SLIME)
635#define MASK_OPAQUE (CONTENTS_SOLID | CONTENTS_SLIME | CONTENTS_LAVA)
637 (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_FENCE | CONTENTS_WEAPONCLIP \
638 | CONTENTS_BODY | CONTENTS_TRIGGER)
639#define MASK_SHOT_TRIG \
640 (CONTENTS_SOLID | CONTENTS_CLAYPIDGEON | CONTENTS_WATER | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 \
641 | CONTENTS_FENCE | CONTENTS_WEAPONCLIP | CONTENTS_BODY | CONTENTS_TRIGGER)
642#define MASK_SHOT_FLUID \
643 (CONTENTS_SOLID | CONTENTS_WATER | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_FENCE \
644 | CONTENTS_WEAPONCLIP | CONTENTS_SHOOTONLY | CONTENTS_BODY | CONTENTS_TRIGGER)
645#define MASK_PROJECTILE \
646 (CONTENTS_SOLID | CONTENTS_BODY | CONTENTS_TRIGGER | CONTENTS_FENCE | CONTENTS_WEAPONCLIP | CONTENTS_UNKNOWN2 \
647 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX)
649 (CONTENTS_SOLID | CONTENTS_BODY | CONTENTS_TRIGGER | CONTENTS_WEAPONCLIP | CONTENTS_FENCE | CONTENTS_UNKNOWN2 \
650 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX | CONTENTS_NOTTEAM1)
651#define MASK_PATHSOLID \
652 (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_BODY | CONTENTS_FENCE | CONTENTS_UNKNOWN2 | CONTENTS_BBOX \
653 | CONTENTS_MONSTERCLIP)
654#define MASK_LOOK (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_FENCE)
655#define MASK_CAMERASOLID (CONTENTS_SOLID | CONTENTS_PLAYERCLIP | CONTENTS_BODY | MASK_WATER)
656#define MASK_BEAM (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_PLAYERCLIP | CONTENTS_BODY | CONTENTS_FENCE)
658 (CONTENTS_SOLID | CONTENTS_LADDER | CONTENTS_TRIGGER | CONTENTS_PLAYERCLIP | CONTENTS_BODY | CONTENTS_FENCE \
659 | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX)
660#define MASK_AUTOCALCLIFE (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_FENCE)
661#define MASK_EXPLOSION (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_WEAPONCLIP)
662#define MASK_SOUND (CONTENTS_SOLID | CONTENTS_TRANSLUCENT)
663#define MASK_VEHICLE \
664 (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_FENCE | CONTENTS_VEHICLECLIP \
665 | CONTENTS_BODY | CONTENTS_TRIGGER)
666#define MASK_VEHICLE_TIRES (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_FENCE | CONTENTS_VEHICLECLIP | CONTENTS_TRIGGER)
668 (CONTENTS_VEHICLECLIP | CONTENTS_WEAPONCLIP | CONTENTS_MONSTERCLIP | CONTENTS_PLAYERCLIP | CONTENTS_SOLID)
670 (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 \
671 | CONTENTS_FENCE | CONTENTS_WEAPONCLIP | CONTENTS_BODY)
672#define MASK_CANSEE_NOENTS (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_FENCE | CONTENTS_WEAPONCLIP)
674 (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_FENCE | CONTENTS_WEAPONCLIP \
675 | CONTENTS_BODY | CONTENTS_TRIGGER)
676#define MASK_CLICKITEM (MASK_SOLID | CONTENTS_UNKNOWN3)
677#define MASK_ITEM (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_PLAYERCLIP | CONTENTS_FENCE)
678#define MASK_TRANSITION \
679 (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_FENCE | CONTENTS_WEAPONCLIP | CONTENTS_UNKNOWN2 \
681#define MASK_TARGETPATH \
682 (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_MONSTERCLIP | CONTENTS_FENCE | CONTENTS_UNKNOWN2 | CONTENTS_BBOX)
683#define MASK_ACTORPATH (CONTENTS_SOLID | CONTENTS_FENCE | CONTENTS_MONSTERCLIP | CONTENTS_TRIGGER)
684#define MASK_GRENADEPATH \
685 (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_FENCE | CONTENTS_WEAPONCLIP \
686 | CONTENTS_BODY | CONTENTS_TRIGGER)
687#define MASK_LINE (CONTENTS_SOLID | CONTENTS_BODY | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX)
688#define MASK_VEHICLETURRET \
689 (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_FENCE | CONTENTS_VEHICLECLIP | CONTENTS_MONSTERCLIP \
690 | CONTENTS_PLAYERCLIP)
691#define MASK_VOLUMETRIC_SMOKE \
692 (CONTENTS_TRANSLUCENT | CONTENTS_CORPSE | CONTENTS_BODY | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX \
694#define MASK_SMOKE_SPRITE (CONTENTS_SOLID | CONTENTS_TRIGGER | CONTENTS_FENCE)
695#define MASK_LANDMINE \
696 (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_FENCE | CONTENTS_PLAYERCLIP \
697 | CONTENTS_WEAPONCLIP | CONTENTS_BODY | CONTENTS_DETAIL | CONTENTS_STRUCTURAL | CONTENTS_TRIGGER)
698#define MASK_LANDMINE_PLACE \
699 (CONTENTS_SOLID | CONTENTS_FENCE | CONTENTS_PLAYERCLIP | CONTENTS_DETAIL | CONTENTS_STRUCTURAL | CONTENTS_TRIGGER)
700#define MASK_BATTLELANGUAGE \
701 (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_PLAYERCLIP \
702 | CONTENTS_WEAPONCLIP | CONTENTS_BODY | CONTENTS_TRIGGER)
703#define MASK_SCRIPT_SLAVE \
704 (CONTENTS_LADDER | CONTENTS_CLAYPIDGEON | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 \
705 | CONTENTS_UNKNOWN3 | CONTENTS_BODY | CONTENTS_CORPSE)
706#define MASK_CARRYABLETURRET \
707 (CONTENTS_SOLID | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 | CONTENTS_FENCE | CONTENTS_BODY)
708#define MASK_AITURRET \
709 (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN2 \
710 | CONTENTS_FENCE | CONTENTS_WEAPONCLIP | CONTENTS_BODY)
711#define MASK_TRANSPARENT (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_BBOX | CONTENTS_FENCE)
712#define MASK_MOVEVEHICLE \
713 (CONTENTS_LADDER | CONTENTS_CLAYPIDGEON | CONTENTS_BBOX | CONTENTS_NOBOTCLIP | CONTENTS_UNKNOWN3 | CONTENTS_BODY \
715#define MASK_MOVEINFO (CONTENTS_SOLID | CONTENTS_FENCE)
716#define MASK_AI_CANSEE \
717 (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_BBOX | CONTENTS_UNKNOWN2 | CONTENTS_FENCE \
718 | CONTENTS_WEAPONCLIP)
719#define MASK_CORNER_NODE \
720 (CONTENTS_SOLID | CONTENTS_LAVA | CONTENTS_SLIME | CONTENTS_UNKNOWN2 | CONTENTS_WEAPONCLIP | CONTENTS_BODY)
721#define MASK_IGNORE_ENTS \
722 (CONTENTS_CORPSE | CONTENTS_BODY | CONTENTS_UNKNOWN3 | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP | CONTENTS_BBOX \
723 | CONTENTS_CLAYPIDGEON | CONTENTS_LADDER)
728#define MASK_MARK (CONTENTS_TRIGGER | CONTENTS_SOLID)
729#define MASK_TREADMARK \
730 (CONTENTS_TRIGGER | CONTENTS_BODY | CONTENTS_PLAYERCLIP | CONTENTS_FENCE | CONTENTS_UNKNOWN2 | CONTENTS_NOBOTCLIP \
731 | CONTENTS_BBOX | CONTENTS_SOLID)
733 void BG_EvaluateTrajectoryDelta(
const trajectory_t *tr,
int atTime, vec3_t result);
735 void BG_PlayerStateToEntityState(playerState_t *ps, entityState_t *s, qboolean snap);
736 void BG_PlayerStateToEntityStateExtraPolate(playerState_t *ps, entityState_t *s,
int time, qboolean snap);
738 enum cg_message_ver_15_e {
752 CGM_EXPLOSION_EFFECT_1,
753 CGM_EXPLOSION_EFFECT_2,
754 CGM_EXPLOSION_EFFECT_3,
755 CGM_EXPLOSION_EFFECT_4,
765 CGM_MAKE_CRATE_DEBRIS,
766 CGM_MAKE_WINDOW_DEBRIS,
767 CGM_BULLET_NO_BARREL_1,
768 CGM_BULLET_NO_BARREL_2,
772 CGM_HUDDRAW_VIRTUALSIZE,
783 enum cg_message_ver_6_e {
796 CGM6_EXPLOSION_EFFECT_1,
797 CGM6_EXPLOSION_EFFECT_2,
807 CGM6_MAKE_CRATE_DEBRIS,
808 CGM6_MAKE_WINDOW_DEBRIS,
809 CGM6_BULLET_NO_BARREL_1,
810 CGM6_BULLET_NO_BARREL_2,
814 CGM6_HUDDRAW_VIRTUALSIZE,
824 int BG_MapCGMToProtocol(
int protocol,
int messageNumber);
833 OBJ_FLAG_CURRENT = 2,
834 OBJ_FLAG_COMPLETED = 4
Definition bg_public.h:287
Definition q_shared.h:1452
Definition q_shared.h:1978