This commit is contained in:
Oscar
2025-07-17 13:52:06 +03:00
commit 2f50c8a911
206 changed files with 246874 additions and 0 deletions

View File

@@ -0,0 +1,50 @@
#include "C_CSPlayerPawn.h"
#include "../../../templeware/offsets/offsets.h"
#include "../../../templeware/interfaces/interfaces.h"
C_CSPlayerPawn::C_CSPlayerPawn(uintptr_t address) : address(address) {}
Vector_t C_CSPlayerPawn::getPosition() const {
return *(Vector_t*)(address + SchemaFinder::Get(hash_32_fnv1a_const("C_BasePlayerPawn->m_vOldOrigin")));
}
Vector_t C_CSPlayerPawn::getEyePosition() const {
return Vector_t();
}
C_CSWeaponBase* C_CSPlayerPawn::GetActiveWeapon() const {
if (!this)
return nullptr;
CCSPlayer_WeaponServices* weapon_services = this->GetWeaponServices();
if (weapon_services == nullptr)
return nullptr;
C_CSWeaponBase* active_weapon = I::GameEntity->Instance->Get<C_CSWeaponBase>(weapon_services->m_hActiveWeapon());
if (!active_weapon)
return nullptr;
return active_weapon;
}
CCSPlayer_WeaponServices* C_CSPlayerPawn::GetWeaponServices() const {
if (!address) return nullptr;
return reinterpret_cast<CCSPlayer_WeaponServices*>((uintptr_t)this + SchemaFinder::Get(hash_32_fnv1a_const("C_CSPlayerPawn->m_pWeaponServices")));
}
uintptr_t C_CSPlayerPawn::getAddress() const {
return address;
}
int C_CSPlayerPawn::getHealth() const {
return *reinterpret_cast<int*>((uintptr_t)this + SchemaFinder::Get(hash_32_fnv1a_const("C_BaseEntity->m_iHealth")));
}
uint8_t C_CSPlayerPawn::getTeam() const {
return *reinterpret_cast<uint8_t*>((uintptr_t)this + SchemaFinder::Get(hash_32_fnv1a_const("C_BaseEntity->m_iTeamNum")));
}
Vector_t C_CSPlayerPawn::getViewOffset() const {
return *reinterpret_cast<Vector_t*>((uintptr_t)this + SchemaFinder::Get(hash_32_fnv1a_const("C_BaseModelEntity->m_vecViewOffset")));
}

View File

@@ -0,0 +1,28 @@
#pragma once
#include "../../../templeware/utils/memory/memorycommon.h"
#include "../../../templeware/utils/math/vector/vector.h"
#include "../../../templeware/utils/schema/schema.h"
#include "../C_CSWeaponBase/C_CSWeaponBase.h"
#include "../C_BaseEntity/C_BaseEntity.h"
#include <cstdint>
class C_CSPlayerPawn : public C_BaseEntity {
public:
SCHEMA_ADD_OFFSET(Vector_t, m_vOldOrigin, 0x1324);
SCHEMA_ADD_OFFSET(Vector_t, m_vecViewOffset, 0xCB0);
SCHEMA_ADD_OFFSET(CCSPlayer_WeaponServices*, m_pWeaponServices, 0x11A8);
C_CSPlayerPawn(uintptr_t address);
C_CSWeaponBase* GetActiveWeapon()const;
CCSPlayer_WeaponServices* GetWeaponServices()const;
Vector_t getPosition() const;
Vector_t getEyePosition() const;
uintptr_t getAddress() const;
int getHealth() const;
uint8_t getTeam() const;
Vector_t getViewOffset() const;
private:
uintptr_t address;
};