CEntityInstance instead of CBaseEntity

This commit is contained in:
SlynxCZ 2026-02-28 17:09:15 +01:00
parent 60c1273145
commit 8ede9ca66e
3 changed files with 16 additions and 17 deletions

View file

@ -1,11 +1,10 @@
#pragma once
#include "vector.h"
#include "gametrace.h"
#include "entityinstance.h"
#define RAYTRACE_INTERFACE_VERSION "CRayTraceInterface001"
class CBaseEntity;
enum class InteractionLayers : uint64_t
{
Solid = 0x1,
@ -184,7 +183,7 @@ public:
virtual bool TraceShape(
const Vector* origin,
const QAngle* viewangles,
CBaseEntity* ignoreEntity,
CEntityInstance* ignoreEntity,
const TraceOptions* opts,
TraceResult* outResult
) = 0;
@ -192,7 +191,7 @@ public:
virtual bool TraceEndShape(
const Vector* origin,
const Vector* endOrigin,
CBaseEntity* ignoreEntity,
CEntityInstance* ignoreEntity,
const TraceOptions* opts,
TraceResult* outResult
) = 0;
@ -202,7 +201,7 @@ public:
const Vector* vecEnd,
const Vector* hullMins,
const Vector* hullMaxs,
CBaseEntity* ignoreEntity,
CEntityInstance* ignoreEntity,
const TraceOptions* opts,
TraceResult* outResult
) = 0;

View file

@ -109,7 +109,7 @@ namespace RayTracePlugin::RayTrace
std::optional<TraceResult> TraceShape(
const Vector& origin,
const QAngle& viewangles,
CBaseEntity* ignoreEntity,
CEntityInstance* ignoreEntity,
const TraceOptions* opts)
{
Vector forward;
@ -120,7 +120,7 @@ namespace RayTracePlugin::RayTrace
origin.z + forward.z * 8192.f
};
CTraceFilterEx filter = ignoreEntity ? CTraceFilterEx(ignoreEntity) : CTraceFilterEx();
CTraceFilterEx filter = ignoreEntity ? CTraceFilterEx(static_cast<CBaseEntity*>(ignoreEntity)) : CTraceFilterEx();
filter.m_nInteractsAs = 0;
filter.m_nInteractsWith = static_cast<uint64_t>(MASK_SHOT_PHYSICS);
@ -153,10 +153,10 @@ namespace RayTracePlugin::RayTrace
std::optional<TraceResult> TraceEndShape(
const Vector& origin,
const Vector& endOrigin,
CBaseEntity* ignoreEntity,
CEntityInstance* ignoreEntity,
const TraceOptions* opts)
{
CTraceFilterEx filter = ignoreEntity ? CTraceFilterEx(ignoreEntity) : CTraceFilterEx();
CTraceFilterEx filter = ignoreEntity ? CTraceFilterEx(static_cast<CBaseEntity*>(ignoreEntity)) : CTraceFilterEx();
filter.m_nInteractsAs = 0;
filter.m_nInteractsWith = static_cast<uint64_t>(MASK_SHOT_PHYSICS);
@ -187,8 +187,8 @@ namespace RayTracePlugin::RayTrace
}
std::optional<TraceResult> TraceHullShape(const Vector &vecStart, const Vector &vecEnd, const Vector &hullMins,
const Vector &hullMaxs, CBaseEntity *ignoreEntity, const TraceOptions *opts) {
CTraceFilterEx filter = ignoreEntity ? CTraceFilterEx(ignoreEntity) : CTraceFilterEx();
const Vector &hullMaxs, CEntityInstance *ignoreEntity, const TraceOptions *opts) {
CTraceFilterEx filter = ignoreEntity ? CTraceFilterEx(static_cast<CBaseEntity*>(ignoreEntity)) : CTraceFilterEx();
filter.m_nInteractsAs = 0;
filter.m_nInteractsWith = static_cast<uint64_t>(MASK_SHOT_PHYSICS);

View file

@ -32,13 +32,13 @@ namespace RayTracePlugin::RayTrace
std::optional<TraceResult> TraceShape(
const Vector& origin,
const QAngle& viewangles,
CBaseEntity* ignoreEntity = nullptr,
CEntityInstance* ignoreEntity = nullptr,
const TraceOptions* opts = nullptr);
std::optional<TraceResult> TraceEndShape(
const Vector& origin,
const Vector& endOrigin,
CBaseEntity* ignoreEntity = nullptr,
CEntityInstance* ignoreEntity = nullptr,
const TraceOptions* opts = nullptr);
std::optional<TraceResult> TraceHullShape(
@ -46,7 +46,7 @@ namespace RayTracePlugin::RayTrace
const Vector& vecEnd,
const Vector& hullMins,
const Vector& hullMaxs,
CBaseEntity* ignoreEntity = nullptr,
CEntityInstance* ignoreEntity = nullptr,
const TraceOptions* opts = nullptr);
std::optional<TraceResult> TraceShapeEx(
@ -61,7 +61,7 @@ namespace RayTracePlugin::RayTrace
bool TraceShape(
const Vector* origin,
const QAngle* viewangles,
CBaseEntity* ignoreEntity,
CEntityInstance* ignoreEntity,
const TraceOptions* opts,
TraceResult* outResult) override
{
@ -76,7 +76,7 @@ namespace RayTracePlugin::RayTrace
bool TraceEndShape(
const Vector* origin,
const Vector* endOrigin,
CBaseEntity* ignoreEntity,
CEntityInstance* ignoreEntity,
const TraceOptions* opts,
TraceResult* outResult) override
{
@ -93,7 +93,7 @@ namespace RayTracePlugin::RayTrace
const Vector* vecEnd,
const Vector* hullMins,
const Vector* hullMaxs,
CBaseEntity* ignoreEntity,
CEntityInstance* ignoreEntity,
const TraceOptions* opts,
TraceResult* outResult) override
{