Add crithack support for the engineer double attack exploit
Command to make executing this exploit work 100% of the time: alias doubleattack "+attack;+attack2;wait 5;-attack;-attack2" Video demonstration: https://t.me/nullworks/411869
This commit is contained in:
parent
c91dadd1c7
commit
02a67a2111
@ -568,6 +568,27 @@ void fixBucket(IClientEntity *weapon, CUserCmd *cmd)
|
|||||||
info.restore_data(weapon);
|
info.restore_data(weapon);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Is the player currently performing the double engi melee attack exploit?
|
||||||
|
bool isExploitingDoubleAttack()
|
||||||
|
{
|
||||||
|
// Exploit doesn't work if you don't press IN_ATTACK2 + IN_ATTACK, aren't using a melee weapon or aren't playing engineer
|
||||||
|
if (!(current_user_cmd->buttons & IN_ATTACK2) || g_pLocalPlayer->weapon_mode != weapon_melee || g_pLocalPlayer->clazz != tf_engineer)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
// Get the entity that we are looking at and check if it is a building that we built
|
||||||
|
int eindex;
|
||||||
|
WhatIAmLookingAt(&eindex, nullptr);
|
||||||
|
if (eindex == -1)
|
||||||
|
return false;
|
||||||
|
auto entity = ENTITY(eindex);
|
||||||
|
if (CE_GOOD(entity) && entity->m_Type() == ENTITY_BUILDING && HandleToIDX(CE_INT(entity, netvar.m_hBuilder)) == LOCAL_E->m_IDX)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
// Damage this round
|
// Damage this round
|
||||||
void CreateMove()
|
void CreateMove()
|
||||||
{
|
{
|
||||||
@ -656,6 +677,10 @@ void CreateMove()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Is the player currently performing the double engi melee attack exploit? If yes, force a crit this tick
|
||||||
|
if (isExploitingDoubleAttack())
|
||||||
|
force_crit_this_tick = true;
|
||||||
|
|
||||||
// Should we even try to crit this tick?
|
// Should we even try to crit this tick?
|
||||||
if (shouldCrit())
|
if (shouldCrit())
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user