From 8ede9ca66e8f7cc3e2e75b8421cfaf0f6aa3c6c7 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Sat, 28 Feb 2026 17:09:15 +0100 Subject: [PATCH] CEntityInstance instead of CBaseEntity --- public/CRayTraceInterface.h | 9 ++++----- src/RayTrace.cpp | 12 ++++++------ src/RayTrace.h | 12 ++++++------ 3 files changed, 16 insertions(+), 17 deletions(-) diff --git a/public/CRayTraceInterface.h b/public/CRayTraceInterface.h index b81c5c1..6745639 100644 --- a/public/CRayTraceInterface.h +++ b/public/CRayTraceInterface.h @@ -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; diff --git a/src/RayTrace.cpp b/src/RayTrace.cpp index 6fba6bd..e37a23f 100644 --- a/src/RayTrace.cpp +++ b/src/RayTrace.cpp @@ -109,7 +109,7 @@ namespace RayTracePlugin::RayTrace std::optional 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(ignoreEntity)) : CTraceFilterEx(); filter.m_nInteractsAs = 0; filter.m_nInteractsWith = static_cast(MASK_SHOT_PHYSICS); @@ -153,10 +153,10 @@ namespace RayTracePlugin::RayTrace std::optional 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(ignoreEntity)) : CTraceFilterEx(); filter.m_nInteractsAs = 0; filter.m_nInteractsWith = static_cast(MASK_SHOT_PHYSICS); @@ -187,8 +187,8 @@ namespace RayTracePlugin::RayTrace } std::optional 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(ignoreEntity)) : CTraceFilterEx(); filter.m_nInteractsAs = 0; filter.m_nInteractsWith = static_cast(MASK_SHOT_PHYSICS); diff --git a/src/RayTrace.h b/src/RayTrace.h index 9c73d73..150e923 100644 --- a/src/RayTrace.h +++ b/src/RayTrace.h @@ -32,13 +32,13 @@ namespace RayTracePlugin::RayTrace std::optional TraceShape( const Vector& origin, const QAngle& viewangles, - CBaseEntity* ignoreEntity = nullptr, + CEntityInstance* ignoreEntity = nullptr, const TraceOptions* opts = nullptr); std::optional TraceEndShape( const Vector& origin, const Vector& endOrigin, - CBaseEntity* ignoreEntity = nullptr, + CEntityInstance* ignoreEntity = nullptr, const TraceOptions* opts = nullptr); std::optional 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 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 {