Added thirdperson toggle

pull/27/head
MisterY52 4 years ago
parent 620d0d64f6
commit 041f7f9456

@ -33,6 +33,7 @@ int safe_level = 0;
bool aiming = false; bool aiming = false;
extern float smooth; extern float smooth;
extern int bone; extern int bone;
bool thirdperson = false;
bool actions_t = false; bool actions_t = false;
bool esp_t = false; bool esp_t = false;
@ -140,9 +141,21 @@ void DoActions()
while (actions_t) while (actions_t)
{ {
std::this_thread::sleep_for(std::chrono::milliseconds(1)); std::this_thread::sleep_for(std::chrono::milliseconds(1));
bool tmp_thirdperson = false;
while (g_Base!=0 && c_Base!=0) while (g_Base!=0 && c_Base!=0)
{ {
std::this_thread::sleep_for(std::chrono::milliseconds(30)); std::this_thread::sleep_for(std::chrono::milliseconds(30));
if(thirdperson && !tmp_thirdperson)
{
apex_mem.Write<int>(g_Base + OFFSET_THIRDPERSON, 1);
tmp_thirdperson = true;
}
else if(!thirdperson && tmp_thirdperson)
{
apex_mem.Write<int>(g_Base + OFFSET_THIRDPERSON, -1);
tmp_thirdperson = false;
}
uint64_t LocalPlayer = 0; uint64_t LocalPlayer = 0;
apex_mem.Read<uint64_t>(g_Base + OFFSET_LOCAL_ENT, LocalPlayer); apex_mem.Read<uint64_t>(g_Base + OFFSET_LOCAL_ENT, LocalPlayer);
if (LocalPlayer == 0) continue; if (LocalPlayer == 0) continue;
@ -596,6 +609,8 @@ static void set_vars(uint64_t add_addr)
client_mem.Read<uint64_t>(add_addr + sizeof(uint64_t)*15, max_fov_addr); client_mem.Read<uint64_t>(add_addr + sizeof(uint64_t)*15, max_fov_addr);
uint64_t bone_addr = 0; uint64_t bone_addr = 0;
client_mem.Read<uint64_t>(add_addr + sizeof(uint64_t)*16, bone_addr); client_mem.Read<uint64_t>(add_addr + sizeof(uint64_t)*16, bone_addr);
uint64_t thirdperson_addr = 0;
client_mem.Read<uint64_t>(add_addr + sizeof(uint64_t)*17, thirdperson_addr);
int tmp = 0; int tmp = 0;
client_mem.Read<int>(spec_addr, tmp); client_mem.Read<int>(spec_addr, tmp);
@ -618,7 +633,6 @@ static void set_vars(uint64_t add_addr)
std::this_thread::sleep_for(std::chrono::milliseconds(1)); std::this_thread::sleep_for(std::chrono::milliseconds(1));
client_mem.Write<int>(all_spec_addr, allied_spectators); client_mem.Write<int>(all_spec_addr, allied_spectators);
client_mem.Write<int>(spec_addr, spectators); client_mem.Write<int>(spec_addr, spectators);
client_mem.Write<int>(all_spec_addr, allied_spectators);
client_mem.Write<uint64_t>(g_Base_addr, g_Base); client_mem.Write<uint64_t>(g_Base_addr, g_Base);
client_mem.Read<int>(aim_addr, aim); client_mem.Read<int>(aim_addr, aim);
@ -632,6 +646,7 @@ static void set_vars(uint64_t add_addr)
client_mem.Read<float>(smooth_addr, smooth); client_mem.Read<float>(smooth_addr, smooth);
client_mem.Read<float>(max_fov_addr, max_fov); client_mem.Read<float>(max_fov_addr, max_fov);
client_mem.Read<int>(bone_addr, bone); client_mem.Read<int>(bone_addr, bone);
client_mem.Read<bool>(thirdperson_addr, thirdperson);
if(esp && next) if(esp && next)
{ {

@ -8,6 +8,7 @@
#define OFFSET_ENTITYLIST 0x18eda78 #define OFFSET_ENTITYLIST 0x18eda78
#define OFFSET_LOCAL_ENT 0x1c9d198 //LocalPlayer #define OFFSET_LOCAL_ENT 0x1c9d198 //LocalPlayer
#define OFFSET_NAME_LIST 0x81af540 #define OFFSET_NAME_LIST 0x81af540
#define OFFSET_THIRDPERSON 0x018d42d0 + 0x6c //thirdperson_override + 0x6c
#define OFFSET_TEAM 0x448 //m_iTeamNum #define OFFSET_TEAM 0x448 //m_iTeamNum
#define OFFSET_HEALTH 0x438 //m_iHealth #define OFFSET_HEALTH 0x438 //m_iHealth

@ -36,11 +36,12 @@ float max_dist = 200.0f*40.0f; //read
float smooth = 12.0f; float smooth = 12.0f;
float max_fov = 15.0f; float max_fov = 15.0f;
int bone = 2; int bone = 2;
bool thirdperson = false;
bool valid = false; //write bool valid = false; //write
bool next = false; //read write bool next = false; //read write
uint64_t add[17]; uint64_t add[18];
bool k_f5 = 0; bool k_f5 = 0;
bool k_f6 = 0; bool k_f6 = 0;
@ -137,6 +138,7 @@ int main(int argc, char** argv)
add[14] = (uintptr_t)&smooth; add[14] = (uintptr_t)&smooth;
add[15] = (uintptr_t)&max_fov; add[15] = (uintptr_t)&max_fov;
add[16] = (uintptr_t)&bone; add[16] = (uintptr_t)&bone;
add[17] = (uintptr_t)&thirdperson;
printf(XorStr("add offset: 0x%I64x\n"), (uint64_t)&add[0] - (uint64_t)GetModuleHandle(NULL)); printf(XorStr("add offset: 0x%I64x\n"), (uint64_t)&add[0] - (uint64_t)GetModuleHandle(NULL));
Overlay ov1 = Overlay(); Overlay ov1 = Overlay();
ov1.Start(); ov1.Start();

@ -14,6 +14,7 @@ extern float max_dist;
extern float smooth; extern float smooth;
extern float max_fov; extern float max_fov;
extern int bone; extern int bone;
extern bool thirdperson;
int width; int width;
int height; int height;
bool k_leftclick = false; bool k_leftclick = false;
@ -169,6 +170,7 @@ void Overlay::RenderMenu()
ImGui::Checkbox(XorStr("Glow items"), &item_glow); ImGui::Checkbox(XorStr("Glow items"), &item_glow);
ImGui::Checkbox(XorStr("Glow players"), &player_glow); ImGui::Checkbox(XorStr("Glow players"), &player_glow);
ImGui::Checkbox(XorStr("Thirdperson"), &thirdperson);
ImGui::EndTabItem(); ImGui::EndTabItem();
} }
if (ImGui::BeginTabItem(XorStr("Config"))) if (ImGui::BeginTabItem(XorStr("Config")))

Loading…
Cancel
Save