Fix alot of shit and add cat_nullcore_mode for emoji esp and fidget spinner corsshair
This commit is contained in:
parent
00306b6be3
commit
abee301f7d
1061
include/classinfo/dummy.gen.hpp
Executable file → Normal file
1061
include/classinfo/dummy.gen.hpp
Executable file → Normal file
File diff suppressed because it is too large
Load Diff
1065
include/classinfo/dynamic.gen.hpp
Executable file → Normal file
1065
include/classinfo/dynamic.gen.hpp
Executable file → Normal file
File diff suppressed because it is too large
Load Diff
@ -15,6 +15,6 @@ class CatVar;
|
||||
extern std::array<textures::sprite, 4> spinner_states;
|
||||
|
||||
extern CatVar enable_spinner;
|
||||
|
||||
extern CatVar v9mode;
|
||||
void InitSpinner();
|
||||
void DrawSpinner();
|
||||
|
@ -16,10 +16,10 @@ public:
|
||||
static CTFPartyClient *GTFPartyClient();
|
||||
|
||||
static int SendPartyChat(CTFPartyClient *client, const char *message);
|
||||
static int LoadSavedCasualCriteria(CTFPartyClient *client);
|
||||
int LoadSavedCasualCriteria();
|
||||
static ITFGroupMatchCriteria *MutLocalGroupCriteria(CTFPartyClient *client);
|
||||
static bool BCanQueueForStandby(CTFPartyClient *this_);
|
||||
static void RequestQueueForMatch(CTFPartyClient *client);
|
||||
char RequestQueueForMatch(int type);
|
||||
static bool BInQueue(CTFPartyClient *this_);
|
||||
};
|
||||
}
|
||||
|
@ -17,7 +17,15 @@ class ITFGroupMatchCriteria
|
||||
public:
|
||||
enum group
|
||||
{
|
||||
CASUAL = 7
|
||||
MvmPractice = 0,
|
||||
MvmMannup = 1,
|
||||
LadderMatch6v6 = 2,
|
||||
LadderMatch9v9 = 3,
|
||||
LadderMatch12v12 = 4,
|
||||
CasualMatch6v6 = 5,
|
||||
CasualMatch9v9 = 6,
|
||||
CasualMatch12v12 = 7,
|
||||
CompetitiveEventMatch12v12 = 8
|
||||
};
|
||||
|
||||
public:
|
||||
|
BIN
res/atlas.png
BIN
res/atlas.png
Binary file not shown.
Before Width: | Height: | Size: 310 KiB After Width: | Height: | Size: 367 KiB |
1101
src/classinfo/dynamic.gen.cpp
Executable file → Normal file
1101
src/classinfo/dynamic.gen.cpp
Executable file → Normal file
File diff suppressed because it is too large
Load Diff
10
src/fidgetspinner.cpp
Executable file → Normal file
10
src/fidgetspinner.cpp
Executable file → Normal file
@ -14,6 +14,7 @@
|
||||
|
||||
CatVar enable_spinner(CV_SWITCH, "fidgetspinner", "0", "Fidget Spinner",
|
||||
"Part of Cathook Autism Awareness program");
|
||||
CatVar v9mode(CV_SWITCH, "nullcore_mode", "0", "Nullcore mode", "Part of Cathook Autism Awareness program");
|
||||
|
||||
float spinning_speed = 0.0f;
|
||||
float angle = 0;
|
||||
@ -90,11 +91,12 @@ void DrawSpinner()
|
||||
|
||||
const glez_rgba_t color = glez_rgba(255, 255, 255, 255);
|
||||
|
||||
|
||||
static glez_texture_t tex = glez_texture_load_png_rgba("/opt/cathook/data/res/atlas.png");
|
||||
static glez_texture_t tex =
|
||||
glez_texture_load_png_rgba("/opt/cathook/data/res/atlas.png");
|
||||
while (!tex)
|
||||
tex = glez_texture_load_png_rgba("/opt/cathook/data/res/atlas.png");
|
||||
glez_rect_textured(draw::width / 2, draw::height / 2, size, size, color, tex, 0 + 64 * state, 3 * 64, 64, 64, angle);
|
||||
tex = glez_texture_load_png_rgba("/opt/cathook/data/res/atlas.png");
|
||||
glez_rect_textured(draw::width / 2, draw::height / 2, size, size, color,
|
||||
tex, 0 + 64 * state, (3 + (v9mode ? 1 : 0)) * 64, 64, 64, angle);
|
||||
if (angle > PI * 4)
|
||||
angle -= PI * 4;
|
||||
}
|
||||
|
4
src/hacks/Aimbot.cpp
Executable file → Normal file
4
src/hacks/Aimbot.cpp
Executable file → Normal file
@ -790,7 +790,9 @@ const Vector &PredictEntity(CachedEntity *entity)
|
||||
if ((entity->m_Type == ENTITY_PLAYER))
|
||||
{
|
||||
// If using projectiles, predict a vector
|
||||
if (projectile_mode && (g_pLocalPlayer->weapon_mode == weapon_projectile || g_pLocalPlayer->weapon_mode == weapon_throwable) )
|
||||
if (projectile_mode &&
|
||||
(g_pLocalPlayer->weapon_mode == weapon_projectile ||
|
||||
g_pLocalPlayer->weapon_mode == weapon_throwable))
|
||||
{
|
||||
// Use prediction engine if user settings allow
|
||||
if (engine_projpred)
|
||||
|
5
src/hacks/AntiAim.cpp
Executable file → Normal file
5
src/hacks/AntiAim.cpp
Executable file → Normal file
@ -462,9 +462,10 @@ void ProcessUserCmd(CUserCmd *cmd)
|
||||
if (trueang)
|
||||
angstate = !angstate;
|
||||
if (!LOCAL_E->m_bAlivePlayer)
|
||||
angstate = true;
|
||||
if (lagexploit::ExploitActive() || g_pUserCmd->buttons & IN_ATTACK ||
|
||||
g_pUserCmd->buttons & IN_ATTACK2)
|
||||
angstate = true;
|
||||
if (lagexploit::ExploitActive() || g_pUserCmd->buttons & IN_ATTACK || g_pUserCmd->buttons & IN_ATTACK2)
|
||||
angstate = true;
|
||||
*bSendPackets = angstate;
|
||||
float &p = cmd->viewangles.x;
|
||||
float &y = cmd->viewangles.y;
|
||||
|
@ -52,11 +52,10 @@ void UpdateSearch()
|
||||
if (g_IEngine->IsInGame())
|
||||
return;
|
||||
|
||||
if (autoqueue_timer.test_and_set(5000))
|
||||
if (autoqueue_timer.test_and_set(10000))
|
||||
{
|
||||
re::CTFGCClientSystem *gc = re::CTFGCClientSystem::GTFGCClientSystem();
|
||||
|
||||
if (gc && !gc->BConnectedToMatchServer(false) && !gc->BHaveLiveMatch())
|
||||
if (gc && !gc->BConnectedToMatchServer(false) && CE_BAD(LOCAL_E))
|
||||
{
|
||||
logging::Info("Starting queue");
|
||||
tfmm::queue_start();
|
||||
|
2
src/hacks/AutoSticky.cpp
Executable file → Normal file
2
src/hacks/AutoSticky.cpp
Executable file → Normal file
@ -114,7 +114,6 @@ void CreateMove()
|
||||
bombs.clear();
|
||||
targets.clear();
|
||||
|
||||
|
||||
// Cycle through the ents and search for valid ents
|
||||
for (int i = 0; i < HIGHEST_ENTITY; i++)
|
||||
{
|
||||
@ -175,7 +174,6 @@ void CreateMove()
|
||||
// Use silent
|
||||
g_pLocalPlayer->bUseSilentAngles = true;
|
||||
|
||||
|
||||
// Detonate
|
||||
g_pUserCmd->buttons |= IN_ATTACK2;
|
||||
|
||||
|
@ -392,6 +392,8 @@ void _FASTCALL emoji(CachedEntity *ent)
|
||||
{
|
||||
float size = emoji_esp_scaling ? fabs(hbm.y - hbx.y)
|
||||
: float(emoji_esp_size);
|
||||
if (v9mode)
|
||||
size *= 1.4;
|
||||
if (!size || !float(emoji_min_size))
|
||||
return;
|
||||
if (emoji_esp_scaling && (size < float(emoji_min_size)))
|
||||
@ -399,21 +401,19 @@ void _FASTCALL emoji(CachedEntity *ent)
|
||||
size = float(emoji_min_size);
|
||||
}
|
||||
glez_rgba_t white = glez_rgba(255, 255, 255, 255);
|
||||
if (!textur)
|
||||
while (!textur)
|
||||
textur = glez_texture_load_png_rgba(
|
||||
"/opt/cathook/data/res/atlas.png");
|
||||
player_info_s info;
|
||||
unsigned int steamID;
|
||||
unsigned int steamidarray[32]{};
|
||||
bool hascall = false;
|
||||
steamidarray[0] = 263966176;
|
||||
steamidarray[1] = 479487126;
|
||||
steamidarray[2] = 840899897;
|
||||
steamidarray[0] = 479487126;
|
||||
steamidarray[1] = 263966176;
|
||||
steamidarray[2] = 840255344;
|
||||
steamidarray[3] = 147831332;
|
||||
if (g_IEngine->GetPlayerInfo(ent->m_IDX, &info))
|
||||
{
|
||||
steamID = info.friendsID;
|
||||
}
|
||||
if (!idspecific)
|
||||
idspecific = glez_texture_load_png_rgba(
|
||||
"/opt/cathook/data/res/idspec.png");
|
||||
@ -423,59 +423,27 @@ void _FASTCALL emoji(CachedEntity *ent)
|
||||
glez_rect_textured(
|
||||
head_scr.x - size / 2, head_scr.y - size / 2, size,
|
||||
size, white, idspecific, 2 * 64, 1 * 64, 64, 64, 0);
|
||||
for (auto i : steamidarray)
|
||||
for (int i = 0; i < 4; i++)
|
||||
{
|
||||
if (steamID == i)
|
||||
if (steamID == steamidarray[i])
|
||||
{
|
||||
if (!idspecific)
|
||||
{
|
||||
while (!idspecific)
|
||||
idspecific = glez_texture_load_png_rgba(
|
||||
"/opt/cathook/data/res/idspec.png");
|
||||
}
|
||||
if (idspecific)
|
||||
{
|
||||
if (i == steamidarray[0])
|
||||
glez_rect_textured(head_scr.x - size / 2,
|
||||
head_scr.y - size / 2,
|
||||
size, size, white,
|
||||
idspecific, 1 * 64,
|
||||
1 * 64, 64, 64, 0);
|
||||
else if (i == steamidarray[1])
|
||||
glez_rect_textured(head_scr.x - size / 2,
|
||||
head_scr.y - size / 2,
|
||||
size, size, white,
|
||||
idspecific, 0, 1 * 64,
|
||||
64, 64, 0);
|
||||
|
||||
else if (i == steamidarray[2])
|
||||
glez_rect_textured(head_scr.x - size / 2,
|
||||
head_scr.y - size / 2,
|
||||
size, size, white,
|
||||
idspecific, 2 * 64,
|
||||
1 * 64, 64, 64, 0);
|
||||
else if (i == steamidarray[3])
|
||||
glez_rect_textured(head_scr.x - size / 2,
|
||||
head_scr.y - size / 2,
|
||||
size, size, white,
|
||||
idspecific, 3 * 64,
|
||||
1 * 64, 64, 64, 0);
|
||||
}
|
||||
glez_rect_textured(head_scr.x - size / 2,
|
||||
head_scr.y - size / 2,
|
||||
size, size, white,
|
||||
idspecific, i * 64,
|
||||
1 * 64, 64, 64, 0);
|
||||
hascall = true;
|
||||
}
|
||||
}
|
||||
if (textur && !hascall)
|
||||
{
|
||||
if (emoji_esp == 1)
|
||||
glez_rect_textured(head_scr.x - size / 2,
|
||||
draw_api::draw_rect_textured(head_scr.x - size / 2,
|
||||
head_scr.y - size / 2, size,
|
||||
size, white, textur, 4 * 64,
|
||||
size, colors::white, {textur}, (3 + (v9mode ? 3 : (int)emoji_esp)) * 64,
|
||||
3 * 64, 64, 64, 0);
|
||||
else if (emoji_esp == 2)
|
||||
glez_rect_textured(head_scr.x - size / 2,
|
||||
head_scr.y - size / 2, size,
|
||||
size, white, textur, 5 * 64,
|
||||
3 * 64, 64, 64, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
29
src/hacks/LagExploit.cpp
Executable file → Normal file
29
src/hacks/LagExploit.cpp
Executable file → Normal file
@ -34,6 +34,12 @@ CatVar cart(CV_SWITCH, "se_cart", "0", "Farm cart points",
|
||||
CatVar instant_weapon_switch(CV_SWITCH, "se_switch", "0",
|
||||
"Instant weapon switch", "");
|
||||
CatVar key(CV_KEY, "se_key", "0", "Sequence exploit key");
|
||||
CatVar weaponswitch(CV_KEY, "se_switch_key", "0",
|
||||
"Switch spam key (for gru) key");
|
||||
CatVar delay1(CV_INT, "se_switch_delay1", "0",
|
||||
"Delay before switching to melee");
|
||||
CatVar delay2(CV_INT, "se_switch_delay2", "0",
|
||||
"Delay before switching to Primary");
|
||||
CatVar master_switch(CV_SWITCH, "se_master", "1", "Enable sequence exploit",
|
||||
"Master switch for the sequence exploit\nDisabling this "
|
||||
"disables everything else that uses it");
|
||||
@ -66,7 +72,7 @@ bool ExploitActive()
|
||||
return true;
|
||||
}
|
||||
if (active)
|
||||
return true;
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -78,7 +84,7 @@ float servertime, nextattack;
|
||||
static int lastwep = 0;
|
||||
void CreateMove()
|
||||
{
|
||||
active = false;
|
||||
active = false;
|
||||
if (CE_BAD(LOCAL_E))
|
||||
return;
|
||||
if (!LOCAL_E->m_bAlivePlayer)
|
||||
@ -243,6 +249,22 @@ void CreateMove()
|
||||
}
|
||||
if (!master_switch)
|
||||
return;
|
||||
if (weaponswitch.KeyDown())
|
||||
{
|
||||
static int aa = 0, bb = 0;
|
||||
if (aa > (int) delay1)
|
||||
{
|
||||
g_IEngine->ExecuteClientCmd("slot1");
|
||||
aa = 0;
|
||||
}
|
||||
if (bb > (int) delay1 + (int) delay2)
|
||||
{
|
||||
g_IEngine->ExecuteClientCmd("slot3");
|
||||
bb = 0;
|
||||
}
|
||||
aa++;
|
||||
bb++;
|
||||
}
|
||||
static bool bWasHolding = false;
|
||||
bool bIsHolding = ((g_pUserCmd->buttons & IN_ATTACK) ||
|
||||
(g_pUserCmd->buttons & IN_ATTACK2));
|
||||
@ -411,7 +433,8 @@ void CreateMove()
|
||||
servertime =
|
||||
(float) (CE_INT(g_pLocalPlayer->entity, netvar.nTickBase)) *
|
||||
g_GlobalVars->interval_per_tick;
|
||||
if (!nextattack || !i || g_pLocalPlayer->weapon()->m_iClassID != lastwep)
|
||||
if (!nextattack || !i ||
|
||||
g_pLocalPlayer->weapon()->m_iClassID != lastwep)
|
||||
nextattack =
|
||||
CE_FLOAT(g_pLocalPlayer->weapon(), netvar.flNextPrimaryAttack);
|
||||
if (servertime - nextattack > 30.0f)
|
||||
|
3
src/helpers.cpp
Executable file → Normal file
3
src/helpers.cpp
Executable file → Normal file
@ -682,7 +682,8 @@ bool GetProjectileData(CachedEntity *weapon, float &speed, float &gravity)
|
||||
rspeed = re::C_TFWeaponBaseGun::GetProjectileSpeed(
|
||||
RAW_ENT(g_pLocalPlayer->weapon()));
|
||||
// TODO Wrong grenade launcher gravity
|
||||
rgrav = re::C_TFWeaponBaseGun::GetProjectileGravity(RAW_ENT(g_pLocalPlayer->weapon()));
|
||||
rgrav = re::C_TFWeaponBaseGun::GetProjectileGravity(
|
||||
RAW_ENT(g_pLocalPlayer->weapon()));
|
||||
}
|
||||
else IF_GAME(IsTF2C())
|
||||
{
|
||||
|
9
src/menu/ncc/Menu.cpp
Executable file → Normal file
9
src/menu/ncc/Menu.cpp
Executable file → Normal file
@ -79,10 +79,11 @@ void RefreshFonts()
|
||||
font_title = g_ISurface->CreateFont();
|
||||
font_item = g_ISurface->CreateFont();
|
||||
g_ISurface->SetFontGlyphSet(
|
||||
font_title, fonts::fonts
|
||||
.at(_clamp(0, (int) (fonts::fonts.size() - 1),
|
||||
(int) font_title_family))
|
||||
.c_str(),
|
||||
font_title,
|
||||
fonts::fonts
|
||||
.at(_clamp(0, (int) (fonts::fonts.size() - 1),
|
||||
(int) font_title_family))
|
||||
.c_str(),
|
||||
psize_font_title * (float) scale, 0, 0, 0, 0x0);
|
||||
g_ISurface->SetFontGlyphSet(
|
||||
font_item,
|
||||
|
@ -14,8 +14,7 @@ CTFGCClientSystem *CTFGCClientSystem::GTFGCClientSystem()
|
||||
{
|
||||
typedef CTFGCClientSystem *(*GTFGCClientSystem_t)();
|
||||
static uintptr_t addr1 = gSignatures.GetClientSignature(
|
||||
"E8 ? ? ? ? 84 C0 0F 85 7B 02 00 00 E8 ? ? ? ? BE 01 00 00 00 89 04 24 "
|
||||
"E8 ? ? ? ? 85 C0 0F 84 E5 02 00 00");
|
||||
"E8 ? ? ? ? 84 C0 0F 85 ? ? ? ? E8 ? ? ? ? 89 04 24 E8 ? ? ? ? 85 C0");
|
||||
static GTFGCClientSystem_t GTFGCClientSystem_fn =
|
||||
GTFGCClientSystem_t(e8call((void *) (addr1 + 14)));
|
||||
|
||||
@ -40,8 +39,7 @@ bool CTFGCClientSystem::BConnectedToMatchServer(bool flag)
|
||||
{
|
||||
typedef bool (*BConnectedToMatchServer_t)(CTFGCClientSystem *, bool);
|
||||
static uintptr_t addr = gSignatures.GetClientSignature(
|
||||
"55 89 E5 53 80 7D 0C 00 8B 55 08 75 1B 8B 82 F8 04 00 00 83 E8 01 83 "
|
||||
"F8 01 0F 96 C0 8D 74 26 00 5B 5D C3");
|
||||
"55 89 E5 53 80 7D ? ? 8B 55 ? 75 ?");
|
||||
static BConnectedToMatchServer_t BConnectedToMatchServer_fn =
|
||||
BConnectedToMatchServer_t(addr);
|
||||
|
||||
@ -50,12 +48,13 @@ bool CTFGCClientSystem::BConnectedToMatchServer(bool flag)
|
||||
|
||||
bool CTFGCClientSystem::BHaveLiveMatch()
|
||||
{
|
||||
typedef bool (*BHaveLiveMatch_t)(CTFGCClientSystem *);
|
||||
static uintptr_t addr = gSignatures.GetClientSignature(
|
||||
"55 31 C0 89 E5 53 8B 4D 08 0F B6 91 0F 05 00 00 89 D3 81 E3 F0 00 00 "
|
||||
"00 74 36 80 FA AF");
|
||||
typedef int (*BHaveLiveMatch_t)(CTFGCClientSystem *);
|
||||
static uintptr_t addr = gSignatures.GetClientSignature("55 31 C0 89 E5 53 8B 4D ? 0F B6 91 ? ? ? ?");
|
||||
static BHaveLiveMatch_t BHaveLiveMatch_fn = BHaveLiveMatch_t(addr);
|
||||
|
||||
if (BHaveLiveMatch_fn == nullptr)
|
||||
{
|
||||
logging::Info("calling NULL!");
|
||||
}
|
||||
return BHaveLiveMatch_fn(this);
|
||||
}
|
||||
|
||||
|
40
src/reclasses/CTFPartyClient.cpp
Executable file → Normal file
40
src/reclasses/CTFPartyClient.cpp
Executable file → Normal file
@ -11,12 +11,10 @@
|
||||
re::CTFPartyClient *re::CTFPartyClient::GTFPartyClient()
|
||||
{
|
||||
typedef re::CTFPartyClient *(*GTFPartyClient_t)(void);
|
||||
static uintptr_t addr = gSignatures.GetClientSignature(
|
||||
"83 04 02 00 00 00 00 00 00 ? 83 08 02 00 00 "
|
||||
"01 E8 ? ? ? ? 89 04 24 E8 ? ? ? ?") +
|
||||
17;
|
||||
static GTFPartyClient_t GTFPartyClient_fn =
|
||||
GTFPartyClient_t(e8call((void *) addr));
|
||||
uintptr_t addr =
|
||||
gSignatures.GetClientSignature("55 A1 ? ? ? ? 89 E5 5D C3 8D B6 00 00 00 00 A1 ? ? ? ? 85 C0");
|
||||
GTFPartyClient_t GTFPartyClient_fn =
|
||||
GTFPartyClient_t(addr);
|
||||
|
||||
return GTFPartyClient_fn();
|
||||
}
|
||||
@ -50,35 +48,31 @@ re::CTFPartyClient::MutLocalGroupCriteria(re::CTFPartyClient *client)
|
||||
typedef re::ITFGroupMatchCriteria *(*MutLocalGroupCriteria_t)(
|
||||
re::CTFPartyClient *);
|
||||
static uintptr_t addr = gSignatures.GetClientSignature(
|
||||
"55 89 E5 8B 45 08 8B 50 38 C6 80 BC 01 00 00 01 85 D2 74 06 80 78 44 "
|
||||
"00 74 07");
|
||||
"55 89 E5 8B 45 ? 8B 50 ? C6 80 ? ? ? ? ?");
|
||||
static MutLocalGroupCriteria_t MutLocalGroupCriteria_fn =
|
||||
MutLocalGroupCriteria_t(addr);
|
||||
|
||||
return MutLocalGroupCriteria_fn(client);
|
||||
}
|
||||
|
||||
int re::CTFPartyClient::LoadSavedCasualCriteria(re::CTFPartyClient *client)
|
||||
int re::CTFPartyClient::LoadSavedCasualCriteria()
|
||||
{
|
||||
typedef int (*LoadSavedCasualCriteria_t)(re::CTFPartyClient *);
|
||||
static uintptr_t addr = gSignatures.GetClientSignature(
|
||||
"83 04 02 00 00 00 00 00 00 ? 83 08 02 00 00 "
|
||||
"01 E8 ? ? ? ? 89 04 24 E8 ? ? ? ?") +
|
||||
25;
|
||||
static LoadSavedCasualCriteria_t LoadSavedCasualCriteria_fn =
|
||||
LoadSavedCasualCriteria_t(e8call((void *) addr));
|
||||
uintptr_t addr = gSignatures.GetClientSignature(
|
||||
"55 89 E5 83 EC ? 8B 45 ? 8B 50 ? C6 80 ? ? ? ? ?");
|
||||
LoadSavedCasualCriteria_t LoadSavedCasualCriteria_fn =
|
||||
LoadSavedCasualCriteria_t(addr);
|
||||
|
||||
return LoadSavedCasualCriteria_fn(client);
|
||||
return LoadSavedCasualCriteria_fn(this);
|
||||
}
|
||||
|
||||
void re::CTFPartyClient::RequestQueueForMatch(re::CTFPartyClient *client)
|
||||
char re::CTFPartyClient::RequestQueueForMatch(int type)
|
||||
{
|
||||
typedef void (*RequestQueueForMatch_t)(re::CTFPartyClient *);
|
||||
static uintptr_t addr = gSignatures.GetClientSignature(
|
||||
"55 89 E5 57 56 53 81 EC 8C 00 00 00 8B 7D 08 80 BF C1 01 00 00 00 0F "
|
||||
"85 4F 04 00 00 80 7F 45 00 0F 85 45 04 00 00");
|
||||
static RequestQueueForMatch_t RequestQueueForMatch_fn =
|
||||
typedef char (*RequestQueueForMatch_t)(re::CTFPartyClient *, int);
|
||||
uintptr_t addr = gSignatures.GetClientSignature(
|
||||
"55 89 E5 57 56 53 81 EC ? ? ? ? 8B 75 ? 89 F0");
|
||||
RequestQueueForMatch_t RequestQueueForMatch_fn =
|
||||
RequestQueueForMatch_t(addr);
|
||||
|
||||
return RequestQueueForMatch_fn(client);
|
||||
return RequestQueueForMatch_fn(this, type);
|
||||
}
|
||||
|
12
src/tfmm.cpp
12
src/tfmm.cpp
@ -26,16 +26,14 @@ CatCommand get_state("mm_state", "Get party state", []() {
|
||||
namespace tfmm
|
||||
{
|
||||
|
||||
void queue_start()
|
||||
{
|
||||
void queue_start() {
|
||||
re::CTFPartyClient *client = re::CTFPartyClient::GTFPartyClient();
|
||||
if (client)
|
||||
{
|
||||
re::ITFGroupMatchCriteria::SetMatchGroup(
|
||||
re::CTFPartyClient::MutLocalGroupCriteria(client),
|
||||
re::ITFGroupMatchCriteria::group::CASUAL);
|
||||
re::CTFPartyClient::LoadSavedCasualCriteria(client);
|
||||
re::CTFPartyClient::RequestQueueForMatch(client);
|
||||
logging::Info("test1");
|
||||
client->LoadSavedCasualCriteria();
|
||||
logging::Info("test2");
|
||||
client->RequestQueueForMatch(re::ITFGroupMatchCriteria::CasualMatch12v12);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -40,6 +40,7 @@ CatVar info_text(CV_SWITCH, "info", "1", "Show info",
|
||||
"Show cathook version in top left corner");
|
||||
CatVar info_text_min(CV_SWITCH, "info_min", "0", "Show minimal info",
|
||||
"Only show cathook title in top left corner");
|
||||
CatVar enable_logo(CV_SWITCH, "nullcore_mode_logo", "1", "Enable Nullcore watermark", "");
|
||||
|
||||
void DrawCheatVisuals()
|
||||
{
|
||||
@ -50,7 +51,6 @@ void DrawCheatVisuals()
|
||||
PROF_SECTION(DRAW_misc);
|
||||
hacks::shared::misc::DrawText();
|
||||
}
|
||||
if (info_text)
|
||||
{
|
||||
PROF_SECTION(DRAW_info);
|
||||
std::string name_s, reason_s;
|
||||
|
Reference in New Issue
Block a user