2025-07-17 13:52:06 +03:00

59 lines
1.5 KiB
C++

#pragma once
#include <cstdint>
#include "../C_EntityInstance/C_EntityInstance.h"
#include "../../../templeware/utils/memory/memorycommon.h"
#include "../../../templeware/utils/math/vector/vector.h"
#include "../../../../source/templeware/utils/schema/schema.h"
#include "../../../../source/templeware/utils/memory/vfunc/vfunc.h"
#include "../handle.h"
class C_BaseEntity : public CEntityInstance
{
public:
schema(int, m_iMaxHealth, "C_BaseEntity->m_iMaxHealth");
SCHEMA_ADD_OFFSET(int, m_iHealth, 0x344);
SCHEMA_ADD_OFFSET(int, m_iTeamNum, 0x3E3);
bool IsBasePlayer()
{
SchemaClassInfoData_t* pClassInfo;
dump_class_info(&pClassInfo);
if (pClassInfo == nullptr)
return false;
return hash_32_fnv1a_const(pClassInfo->szName) == hash_32_fnv1a_const("C_CSPlayerPawn");
}
bool IsViewmodelAttachment()
{
SchemaClassInfoData_t* pClassInfo;
dump_class_info(&pClassInfo);
if (pClassInfo == nullptr)
return false;
return hash_32_fnv1a_const(pClassInfo->szName) == hash_32_fnv1a_const("C_ViewmodelAttachmentModel");
}
bool IsViewmodel()
{
SchemaClassInfoData_t* pClassInfo;
dump_class_info(&pClassInfo);
if (pClassInfo == nullptr)
return false;
return hash_32_fnv1a_const(pClassInfo->szName) == hash_32_fnv1a_const("C_CSGOViewModel");
}
bool IsPlayerController()
{
SchemaClassInfoData_t* _class = nullptr;
dump_class_info(&_class);
if (!_class)
return false;
const uint32_t hash = hash_32_fnv1a_const(_class->szName);
return (hash == hash_32_fnv1a_const("CCSPlayerController"));
}
};