r5sdk/r5dev/public/gametrace.h

63 lines
1.5 KiB
C
Raw Normal View History

//====== Copyright <20> 1996-2005, Valve Corporation, All rights reserved. =======//
//
// Purpose:
//
//=============================================================================//
#ifndef GAMETRACE_H
#define GAMETRACE_H
#ifdef _WIN32
#pragma once
#endif
#include "trace.h"
#include "cmodel.h"
// !TODO: Remove these and include properly.
#if defined( CLIENT_DLL )
class C_BaseEntity;
#else
class CBaseEntity;
#endif
//-----------------------------------------------------------------------------
// Purpose: A trace is returned when a box is swept through the world
//-----------------------------------------------------------------------------
class CGameTrace : public CBaseTrace
{
public:
char gap3A[0x4];
csurface_t surface;
float fractionleftsolid;
int hitgroup;
short physicsBone;
char gap5A[0x6];
#if defined( CLIENT_DLL )
C_BaseEntity* hit_entity;
#else
CBaseEntity* hit_entity;
#endif
int hitbox;
char gap6C[0x114];
};
static_assert(sizeof(CGameTrace) == 0x180);
typedef CGameTrace trace_t;
//-----------------------------------------------------------------------------
// Purpose: A collision query
//-----------------------------------------------------------------------------
struct CollisionQuery_t
{
bspmodel_t* pModel;
char* pVertices;
char unk_10[16];
int trace_contents;
char unk[556];
void** func_table;
void* funcs_250[6];
char unk_288[80];
trace_t* trace;
char unk_2D8[54];
};
static_assert(sizeof(CollisionQuery_t) == 0x318);
#endif // GAMETRACE_H