#pragma once

#pragma noref 1

#define true _true
#define false _false
#define TRUE _TRUE
#define FALSE _FALSE

#define spawn _spawn
#define particleeffectnum _particleeffectnum
#define trailparticles __trailparticles
#define pointparticles __pointparticles
#define setmodel _setmodel

#define STAT_FRAGLIMIT _STAT_FRAGLIMIT
#define STAT_TIMELIMIT _STAT_TIMELIMIT
#define STAT_MOVEVARS_TICRATE _STAT_MOVEVARS_TICRATE
#define STAT_MOVEVARS_TIMESCALE _STAT_MOVEVARS_TIMESCALE
#define STAT_MOVEVARS_GRAVITY _STAT_MOVEVARS_GRAVITY

#define drawpic drawpic_builtin
#define drawstring drawstring_builtin
#define drawcharacter drawcharacter_builtin
#define drawfill drawfill_builtin
#define drawsetcliparea drawsetcliparea_builtin
#define drawcolorcodedstring drawcolorcodedstring_builtin
#define drawcolorcodedstring2 drawcolorcodedstring2_builtin
#define stringwidth stringwidth_builtin

#include "upstream/csprogsdefs.qc"

#undef true
#undef false
#undef TRUE
#undef FALSE

#undef spawn
#undef particleeffectnum
#undef trailparticles
#undef pointparticles
#undef setmodel

#undef STAT_FRAGLIMIT
#undef STAT_TIMELIMIT
#undef STAT_MOVEVARS_TICRATE
#undef STAT_MOVEVARS_TIMESCALE
#undef STAT_MOVEVARS_GRAVITY

#define use use1
.void(entity this, entity actor, entity trigger) use;

#undef drawpic
#undef drawstring
#undef drawcharacter
#undef drawfill
#undef drawsetcliparea
#undef drawcolorcodedstring
#undef drawcolorcodedstring2
#undef stringwidth

void(vector ang) _makevectors_hidden = #1;
vector(float skel, float bonenum) _skel_get_boneabs_hidden = #270;
void(float skel, float bonenum, vector org) _skel_set_bone_hidden = #271;
void(vector org, float radius, vector lightcolours) _adddynamiclight_hidden = #305;
void(vector org, float radius, vector lightcolours, float style, string cubemapname, float pflags) _adddynamiclight2_hidden = #305;
void(vector dir) _vectorvectors_hidden = #432;
vector(entity ent, float tagindex) _gettaginfo_hidden = #452;

#pragma noref 0
