Merge pull request #215 from prabhatKrMishra/main

Fix bone esp causing crashes due to a race condition with the reader thread
This commit is contained in:
IMXNOOBX
2025-01-13 15:09:43 +01:00
committed by GitHub
3 changed files with 14 additions and 5 deletions
+3
View File
@@ -26,6 +26,9 @@ namespace hack {
};
void loop() {
std::lock_guard<std::mutex> lock(dataMutex);
if (g_game.isC4Planted)
{
Vector3 c4Origin = g_game.c4.get_origin();
+7 -4
View File
@@ -68,6 +68,9 @@ void CGame::close() {
}
void CGame::loop() {
std::lock_guard<std::mutex> lock(dataMutex);
inGame = false;
isC4Planted = false;
@@ -151,14 +154,14 @@ void CGame::loop() {
if (player.origin.x == 0 && player.origin.y == 0) continue;
if (config::show_skeleton_esp) {
player.gameSceneNode = process->read<uint64_t>(player.pCSPlayerPawn + 0x308);
player.boneArray = process->read<uint64_t>(player.gameSceneNode + 0x170 + 0x80);
player.gameSceneNode = process->read<uintptr_t>(player.pCSPlayerPawn + updater::offsets::m_pGameSceneNode);
player.boneArray = process->read<uintptr_t>(player.gameSceneNode + 0x1F0);
player.ReadBones();
}
if (config::show_head_tracker && !config::show_skeleton_esp) {
player.gameSceneNode = process->read<uint64_t>(player.pCSPlayerPawn + 0x308);
player.boneArray = process->read<uint64_t>(player.gameSceneNode + 0x170 + 0x80);
player.gameSceneNode = process->read<uintptr_t>(player.pCSPlayerPawn + updater::offsets::m_pGameSceneNode);
player.boneArray = process->read<uintptr_t>(player.gameSceneNode + 0x1F0);
player.ReadHead();
}
+4 -1
View File
@@ -3,6 +3,7 @@
#include "../classes/vector.hpp"
#include <map>
#include <string>
#include <mutex>
struct view_matrix_t {
float* operator[ ](int index) {
@@ -74,4 +75,6 @@ private:
uintptr_t localList_entry2;
};
inline CGame g_game;
inline CGame g_game;
inline std::mutex dataMutex;