#ifndef TRIGGERBOT_H
#define TRIGGERBOT_H
#include "Engine.h"
#include "Settings.h"
#include "Decrypt.h"
class Triggerbot {
public:
void run() {
bool autoAttacking = false;
while (true) {
if (autoAttacking && !GetAsyncKeyState(VK_LBUTTON)) {
Engine()->Memory()->Write<int>(Engine()->getClientModule()->dwBase + Engine()->Offsets()->dwAttack, 4);
autoAttacking = false;
}
if (Engine()->me.team == 2 || Engine()->me.team == 3) {
if (Settings()->triggerEnabled || GetAsyncKeyState(Settings()->trigger_holdkey)) {
Entity* inX = inCrosshair();
if (inX != nullptr && Engine()->me.weapon_ammo > 0 && inX->hp > 0) {
Engine()->Memory()->Write<int>(Engine()->getClientModule()->dwBase + Engine()->Offsets()->dwAttack, 5);
autoAttacking = true;
Sleep(35);
}
}
}
Sleep(1);
}
}
private:
Entity* inCrosshair() {
int idInX = Engine()->Memory()->Read<int>(Engine()->me.dwBase + Engine()->Offsets()->dwInCross);
if (idInX != 0) {
for (int i = 0; i < Engine()->iEnemies; i++) {
if (Engine()->entEnemies[i].id == idInX) {
return &Engine()->entEnemies[i];
}
}
}
return nullptr;
}
};
#endif