diff --git a/src/hacks/LagExploit.cpp b/src/hacks/LagExploit.cpp index 4bb35448..74f2457f 100644 --- a/src/hacks/LagExploit.cpp +++ b/src/hacks/LagExploit.cpp @@ -15,6 +15,9 @@ namespace lagexploit { CatVar toggle(CV_SWITCH, "se_toggle", "0", "Toggle sequence exploit"); +CatVar shoot(CV_SWITCH, "se_shoot", "0", + "Allows instant revving up or shooting two shots at once"); +CatVar cloak(CV_SWITCH, "se_cloak", "0", "Instant decloak/cloak"); CatVar key(CV_KEY, "se_key", "0", "Sequence exploit key"); CatVar master_switch(CV_SWITCH, "se_master", "1", "Enable sequence exploit", "Master switch for the sequence exploit\nDisabling this " @@ -124,8 +127,66 @@ void CreateMove() return; if (!master_switch) return; - int amount = 0; - if (key.KeyDown()) + int amount = 0; + static bool bWasHolding = false; + bool bIsHolding = ((g_pUserCmd->buttons & IN_ATTACK) || + (g_pUserCmd->buttons & IN_ATTACK2)); + if (!LOCAL_E->m_bAlivePlayer) + return; + if (cloak && shoot) + { + if (g_pLocalPlayer->weapon()->m_iClassID == CL_CLASS(CTFKnife)) + { + + if ((g_pUserCmd->buttons & IN_ATTACK) && !bWasHolding && + HasCondition(LOCAL_E)) + { + g_pUserCmd->buttons &= ~IN_ATTACK; + g_pUserCmd->buttons |= IN_ATTACK2; + amount = 2 * 90; + } + } + else if (CanShoot() && bIsHolding && !bWasHolding) + amount = 1 * 90; + else if (bWasHolding && !bIsHolding) + amount = 1 * 90; + + bWasHolding = (g_pUserCmd->buttons & IN_ATTACK) || + (g_pUserCmd->buttons & IN_ATTACK2); + } + else if (!cloak) + { + if (shoot) + { + if (CanShoot() && bIsHolding && !bWasHolding) + amount = 1 * 90; + else if (bWasHolding && !bIsHolding) + amount = 1 * 90; + bWasHolding = (g_pUserCmd->buttons & IN_ATTACK) || + (g_pUserCmd->buttons & IN_ATTACK2); + } + } + else if (!shoot) + { + if (cloak) + { + if (g_pLocalPlayer->weapon()->m_iClassID == CL_CLASS(CTFKnife)) + { + + if ((g_pUserCmd->buttons & IN_ATTACK) && !bWasHolding && + HasCondition(LOCAL_E)) + { + g_pUserCmd->buttons &= ~IN_ATTACK; + g_pUserCmd->buttons |= IN_ATTACK2; + amount = 2 * 90; + } + } + bWasHolding = (g_pUserCmd->buttons & IN_ATTACK) || + (g_pUserCmd->buttons & IN_ATTACK2); + } + } + + if (key.KeyDown() || exticks) amount = int(value); if (!amount)