feat(self): improved never wanted (works above military) (#558)
Co-authored-by: Yimura <24669514+Yimura@users.noreply.github.com>
This commit is contained in:
parent
7802510df3
commit
1635c0ed93
@ -1,4 +1,5 @@
|
|||||||
#include "backend/looped/looped.hpp"
|
#include "backend/looped/looped.hpp"
|
||||||
|
#include "pointers.hpp"
|
||||||
|
|
||||||
namespace big
|
namespace big
|
||||||
{
|
{
|
||||||
@ -6,11 +7,25 @@ namespace big
|
|||||||
{
|
{
|
||||||
if (g_local_player == nullptr || g_local_player->m_player_info == nullptr) return;
|
if (g_local_player == nullptr || g_local_player->m_player_info == nullptr) return;
|
||||||
|
|
||||||
auto playerInfo = g_local_player->m_player_info;
|
static bool bLast = false;
|
||||||
|
|
||||||
if (g->self.never_wanted)
|
bool b = g->self.never_wanted;
|
||||||
playerInfo->m_wanted_level = 0;
|
|
||||||
else if (g->self.force_wanted_level)
|
if (b)
|
||||||
playerInfo->m_wanted_level = g->self.wanted_level;
|
{
|
||||||
|
g_local_player->m_player_info->m_wanted_level = 0;
|
||||||
|
g_pointers->m_max_wanted_level->apply();
|
||||||
|
g_pointers->m_max_wanted_level_2->apply();
|
||||||
|
bLast = b;
|
||||||
|
}
|
||||||
|
else if (b != bLast)
|
||||||
|
{
|
||||||
|
g_pointers->m_max_wanted_level->restore();
|
||||||
|
g_pointers->m_max_wanted_level_2->restore();
|
||||||
|
bLast = b;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(g->self.force_wanted_level && !b)
|
||||||
|
g_local_player->m_player_info->m_wanted_level = g->self.wanted_level;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -14,6 +14,13 @@ namespace big
|
|||||||
m_resolution_y = ptr.add(4).rip().as<int*>();
|
m_resolution_y = ptr.add(4).rip().as<int*>();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Max Wanted Level
|
||||||
|
main_batch.add("MWL", "8B 43 6C 89 05", [this](memory::handle ptr)
|
||||||
|
{
|
||||||
|
m_max_wanted_level = memory::byte_patch::make(ptr.add(5).rip().as<uint32_t*>(), 0).get();
|
||||||
|
m_max_wanted_level_2 = memory::byte_patch::make(ptr.add(14).rip().as<uint32_t*>(), 0).get();
|
||||||
|
});
|
||||||
|
|
||||||
// Game State
|
// Game State
|
||||||
main_batch.add("GS", "83 3D ? ? ? ? ? 75 17 8B 43 20 25", [this](memory::handle ptr)
|
main_batch.add("GS", "83 3D ? ? ? ? ? 75 17 8B 43 20 25", [this](memory::handle ptr)
|
||||||
{
|
{
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
#include "network/CNetworkPlayerMgr.hpp"
|
#include "network/CNetworkPlayerMgr.hpp"
|
||||||
#include "socialclub/FriendRegistry.hpp"
|
#include "socialclub/FriendRegistry.hpp"
|
||||||
#include "network/Network.hpp"
|
#include "network/Network.hpp"
|
||||||
|
#include "memory/byte_patch.hpp"
|
||||||
|
|
||||||
namespace big
|
namespace big
|
||||||
{
|
{
|
||||||
@ -44,6 +45,9 @@ namespace big
|
|||||||
int* m_resolution_x;
|
int* m_resolution_x;
|
||||||
int* m_resolution_y;
|
int* m_resolution_y;
|
||||||
|
|
||||||
|
memory::byte_patch* m_max_wanted_level;
|
||||||
|
memory::byte_patch* m_max_wanted_level_2;
|
||||||
|
|
||||||
PVOID m_blame_explode;
|
PVOID m_blame_explode;
|
||||||
PVOID m_model_spawn_bypass;
|
PVOID m_model_spawn_bypass;
|
||||||
PVOID m_world_model_spawn_bypass;
|
PVOID m_world_model_spawn_bypass;
|
||||||
|
Reference in New Issue
Block a user