17#include "../platform/localize.h"
19#include "../shared/api.h"
20#include "../shared/system/entityDef.h"
31#include "InterfaceSpriteSheet.h"
33#include "UserInfoManager.h"
34#include "ServerInfo.h"
36var
bool g_net_debug =
false;
37var
bool g_cheats =
false;
39var
float g_modelSpinAngle;
40var
float g_modelSpinPitch;
41var
float g_modelSpinRoll;
42var
float g_modelBobHeight;
43var
float autocvar_cg_modelSpinSpeed = 120.0f;
44var
float autocvar_cg_modelSpinRoll = 0.0f;
45var
float autocvar_cg_modelSpinRollSpeed = 0.0f;
46var
float autocvar_cg_modelSpinPitch = 0.0f;
47var
float autocvar_cg_modelSpinPitchSpeed = 0.0f;
48var
float autocvar_cg_modelBobHeight = 0.0f;
49var
float autocvar_cg_modelBobHeightSpeed = 0.0f;
51var
bool autocvar_net_showUpdates =
false;
53var
bool g_clientInitialized =
false;
55#define PRINTFLAG(x) if (autocvar_net_showUpdates || g_net_debug) \
56 print(sprintf("%f %s read update %s\n", time, classname, #x));
58#define READENTITY_BYTE(field, changedflag) {\
59 if (flChanged & changedflag) {\
61 PRINTFLAG(changedflag); \
65#define READENTITY_SHORT(field, changedflag) {\
66 if (flChanged & changedflag) {\
68 PRINTFLAG(changedflag); \
72#define READENTITY_FLOAT(field, changedflag) {\
73 if (flChanged & changedflag) {\
75 PRINTFLAG(changedflag); \
79#define READENTITY_INT(field, changedflag) {\
80 if (flChanged & changedflag) {\
82 PRINTFLAG(changedflag); \
86#define READENTITY_STRING(field, changedflag) {\
87 if (flChanged & changedflag) {\
88 field = readstring();\
89 PRINTFLAG(changedflag); \
93#define READENTITY_COORD(field, changedflag) {\
94 if (flChanged & changedflag) {\
96 PRINTFLAG(changedflag); \
100#define READENTITY_ANGLE(field, changedflag) {\
101 if (flChanged & changedflag) {\
102 field = readangle();\
103 PRINTFLAG(changedflag); \
107#define READENTITY_ENTITY(field, changedflag) {\
108 if (flChanged & changedflag) {\
109 field = findentity(world, ::entnum, readentitynum());\
110 PRINTFLAG(changedflag); \
114#define READENTITY_ENTNUM(field, changedflag) {\
115 if (flChanged & changedflag) {\
116 field = readentitynum();\
117 PRINTFLAG(changedflag); \
121#define READENTITY_COLOR(field, changedflag) {\
122 if (flChanged & changedflag) {\
123 field = readbyte() / 255;\
124 PRINTFLAG(changedflag); \
128#define READENTITY_MODELINDEX(field, changedflag) {\
129 if (flChanged & changedflag) {\
130 field = readshort();\
131 PRINTFLAG(changedflag); \
137#define PRINT_MEDIUM 1
141var
bool g_dlight_cached =
false;
142var
bool g_client_world_loaded =
false;
144const float MASK_GLOWS = 16;
146bool Util_IsFocused(
void);
155var
float g_shellchromeshader;
156var
float g_shellchromeshader_cull;
159var
float autocvar_in_zoomSensitivity = 1.0f;
160var
int autocvar_pm_stairSmoothing = TRUE;
161var
int autocvar_pm_thirdPerson = FALSE;
162var
int autocvar_cg_viewmodelFlip = FALSE;
163var vector autocvar_con_color = [255,150,0];
164var vector autocvar_vgui_color = [255,170,0];
165var vector autocvar_cg_viewmodelOffset = [0,0,0];
166var
int autocvar_cg_viewmodelPass = 0;
167var
float autocvar_cg_viewmodelFov = 90.0f;
168var
float autocvar_cg_viewmodelScale = 1.0f;
169var
float autocvar_cg_hudAspect = 0.0f;
170var
bool autocvar_pm_crouchToggle =
false;
173var
float PART_DUSTMOTE;
174var
float PART_BURNING;
184string(
string modelname,
int frame,
float frametime) spriteframe = #0;
186void CSQC_UpdateSeat(
void);
190drawstring_r(vector p,
string t, vector s, vector c,
float a,
float f)
192 p[0] -= stringwidth(t, TRUE, s);
193 drawstring(p, t, s, c, a, f);
196void GameMessage_Setup(
string,
int);
197void View_SetMuzzleflash(
int);
199void Event_Callback(
float mtime, __inout
float btime);
200void View_AddEvent(
void(
void) pCallback,
float flTime);
201void View_PlayAnimation(
int);
202void View_PlayAnimation(
int);
204void View_EnableViewmodel(
void);
205void View_DisableViewmodel(
void);
206void View_SetViewmodelSkin(
float);
209void drawrect(vector pos, vector sz,
float thickness, vector rgb,
float al, optional
float dfl)
212 drawfill(pos, [sz[0], thickness], rgb, al, dfl);
214 drawfill(pos + [0, sz[1] - thickness], [sz[0], thickness], rgb, al, dfl);
216 drawfill(pos + [0, thickness], [thickness, sz[1] - (thickness * 2)], rgb, al, dfl);
218 drawfill(pos + [sz[0] - thickness, thickness], [thickness, sz[1] - (thickness * 2)], rgb, al, dfl);
225drawpic3d(vector worldpos,
string mat, vector sz, vector rgb,
float alpha)
228 drawpic3d_visible(vector p1) {
231 vector p2 =
g_view.GetCameraOrigin();
232 vector ang =
g_view.GetCameraAngle();
235 delta = normalize (p1 - p2);
236 fov = delta * v_forward;
238 if (fov > (
g_view.GetAFOV()/180)) {
239 traceline(p2, p1, MOVE_WORLDONLY, self);
240 if (trace_fraction == 1.0) {
247 if (drawpic3d_visible(worldpos) ==
true) {
248 vector vecProj = project(worldpos) - (sz/2);
249 drawpic(vecProj, mat, sz, rgb, alpha);
255drawcone(vector vecOrigin, vector vecAngle,
int iDivisions,
float flLength,
float flRadius, vector vecColor,
float flAlpha)
263 perpendicularCross(vector v)
265 float min = fabs(v[0]);
266 vector ca = [1, 0, 0];
268 if (fabs(v[1]) < min) {
273 if (fabs(v[2]) < min) {
277 return crossproduct(v, ca);
280 makevectors(vecAngle + [0, 0, 0]);
281 vecAngle = v_forward * -1;
282 c = vecOrigin + (-vecAngle * flLength);
283 e0 = perpendicularCross(vecAngle);
284 e1 = crossproduct(e0, vecAngle);
285 angDelta = 360.0 / (iDivisions-1) * (M_PI / 180.0f);
287 R_BeginPolygon(
"debugcone");
288 R_PolygonVertex(vecOrigin, [0,0], vecColor, flAlpha);
289 for (
int i = 0; i < iDivisions; ++i) {
291 float rad = angDelta * i;
292 vecPoint = c + (((e0 * cos(rad)) + (e1 * sin(rad))) * flRadius);
293 R_PolygonVertex(vecPoint, [0,0], vecColor, flAlpha);
300precache_cubemap(
string path)
302 precache_pic(strcat(path,
"_bk"));
303 precache_pic(strcat(path,
"_dn"));
304 precache_pic(strcat(path,
"_ft"));
305 precache_pic(strcat(path,
"_lf"));
306 precache_pic(strcat(path,
"_rt"));
307 precache_pic(strcat(path,
"_up"));
321 entity m_eMuzzleflash;
323 entity m_eViewModelL;
324 entity m_eMuzzleflashL;
327 void(
void) m_pEventCall;
329 float m_flEventFrame;
331 entity m_iEventEntity;
337 float m_flDamageAlpha;
338 vector m_vecDamagePos;
347 vector m_vecPredictedOrigin;
348 vector m_vecPredictedOriginOld;
349 vector m_vecPredictedVelocity;
350 float m_flPredictedFlags;
353 vector m_vecCameraOrigin;
354 vector m_vecCameraAngle;
355 float m_flCameraTime;
357 int m_iHUDWeaponSelected;
358 float m_flHUDWeaponSelectTime;
360 int m_iScoresVisible;
366 float m_flCenterprintAlpha;
367 float m_flCenterprintTime;
368 float m_iCenterprintLines;
369 string m_strCenterprintBuffer[18];
373 string m_strPrintBuffer[5];
377 bool m_iInputAttack2;
384 movementStance_t m_dForceStance;
385 float m_flInputBlockTime;
388 float m_flFadeDuration;
390 float m_flFadeMaxAlpha;
394 float m_flSprintLerp;
395 vector m_vecFadeColor;
400 float m_flShakeDuration;
407 float m_flVehTransition;
408 vector m_vecVehEntry;
413 bool m_bInterfaceFocused;
420 int m_iSelectedWeapon;
424 float m_weaponAnimSequence;
425 float m_weaponAnimTime;
427 string m_weaponClass;
428 string m_weaponFireInfo;
435var vector g_vecMousePos;
Tasked with managing overview/radar type widgets.
Definition Radar.h:30
This entity class represents weapon based items.
Definition Weapon.h:305
ncView g_view
the current seat run for each draw call, for each player.
Definition View.h:156
Representation of a font.
Definition api_func.h:39