添加项目文件。
This commit is contained in:
26
csgo2/native_sdk/handle/handle.h
Normal file
26
csgo2/native_sdk/handle/handle.h
Normal file
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
#include <cstdint>
|
||||
#define INVALID_EHANDLE_INDEX 0xFFFFFFFF
|
||||
#define ENT_ENTRY_MASK 0x7FFF
|
||||
|
||||
class CBaseEntity;
|
||||
|
||||
class CHandle
|
||||
{
|
||||
CBaseEntity* GetBaseEntity() const;
|
||||
|
||||
public:
|
||||
bool operator==(CHandle rhs) const { return m_Index == rhs.m_Index; }
|
||||
|
||||
bool IsValid() const { return m_Index != INVALID_EHANDLE_INDEX; }
|
||||
|
||||
int GetEntryIndex() const { return m_Index & ENT_ENTRY_MASK; }
|
||||
|
||||
template <typename T = CBaseEntity>
|
||||
T* Get() const
|
||||
{
|
||||
return reinterpret_cast<T*>(GetBaseEntity());
|
||||
}
|
||||
|
||||
uint32_t m_Index;
|
||||
};
|
||||
Reference in New Issue
Block a user