diff --git a/BigBaseV2/src/backend/looped/vehicle/vehicle_god.cpp b/BigBaseV2/src/backend/looped/vehicle/vehicle_god.cpp new file mode 100644 index 00000000..52262c35 --- /dev/null +++ b/BigBaseV2/src/backend/looped/vehicle/vehicle_god.cpp @@ -0,0 +1,21 @@ +#include "backend/looped/looped.hpp" + +namespace big +{ + void looped::vehicle_god_mode() + { + if (!g.vehicle.god_mode || g_local_player == nullptr || g_local_player->m_vehicle == nullptr) + return; + + if (g_local_player->m_in_vehicle == 0x0) + { + g_local_player->m_vehicle->m_deform_god = 0x8C; + g_local_player->m_vehicle->m_godmode = 0x1; + } + else + { + g_local_player->m_vehicle->m_deform_god = 0x9C; + g_local_player->m_vehicle->m_godmode = 0x0; + } + } +} \ No newline at end of file diff --git a/BigBaseV2/src/core/globals.hpp b/BigBaseV2/src/core/globals.hpp index fce8d063..07299128 100644 --- a/BigBaseV2/src/core/globals.hpp +++ b/BigBaseV2/src/core/globals.hpp @@ -79,6 +79,7 @@ struct globals { bool left_side = false; }; + bool god_mode = false; bool horn_boost = false; speedo_meter speedo_meter{}; }; @@ -145,6 +146,7 @@ struct globals { this->self.frame_flags.fire_ammo = j["self"]["frame_flags"]["fire_ammo"]; this->self.frame_flags.super_jump = j["self"]["frame_flags"]["super_jump"]; + this->vehicle.god_mode = j["vehicle"]["god_mode"]; this->vehicle.horn_boost = j["vehicle"]["horn_boost"]; this->vehicle.speedo_meter.type = (SpeedoMeter)j["vehicle"]["speedo_meter"]["type"]; @@ -220,6 +222,7 @@ struct globals { }, { "vehicle", { + { "god_mode", this->vehicle.god_mode }, { "horn_boost", this->vehicle.horn_boost }, { "speedo_meter", { diff --git a/BigBaseV2/src/gui/window/main/tab_vehicle.cpp b/BigBaseV2/src/gui/window/main/tab_vehicle.cpp index 5a78c18b..754b5f10 100644 --- a/BigBaseV2/src/gui/window/main/tab_vehicle.cpp +++ b/BigBaseV2/src/gui/window/main/tab_vehicle.cpp @@ -17,6 +17,9 @@ namespace big { if (ImGui::TreeNode("General")) { + ImGui::Checkbox("God Mode", &g.vehicle.god_mode); + ImGui::SameLine(); + if (ImGui::Button("Bring Personal Vehicle")) { QUEUE_JOB_BEGIN_CLAUSE()