#include <stdio.h>
#include <windows.h>
// Klavye tuşları için makro tanımları
#define KEY_W 0x57
#define KEY_A 0x41
#define KEY_S 0x53
#define KEY_D 0x44
#define KEY_SPACE 0x20
// Klavye tuşlarını basıp bırakmak için fonksiyon
void pressKey(WORD key, BOOL release) {
INPUT input;
input.type = INPUT_KEYBOARD;
input.ki.wScan = 0;
input.ki.time = 0;
input.ki.dwExtraInfo = 0;
input.ki.wVk = key;
input.ki.dwFlags = 0; // Tuşa bas
SendInput(1, &input, sizeof(INPUT));
if (release) {
input.ki.dwFlags = KEYEVENTF_KEYUP; // Tuşu bırak
SendInput(1, &input, sizeof(INPUT));
}
}
// Fare tuşlarını basıp bırakmak için fonksiyon
void pressMouseButton(DWORD button, BOOL release) {
INPUT input;
input.type = INPUT_MOUSE;
input.mi.dx = 0;
input.mi.dy = 0;
input.mi.mouseData = 0;
input.mi.dwFlags = MOUSEEVENTF_ABSOLUTE;
if (button == 1) {
input.mi.dwFlags |= MOUSEEVENTF_LEFTDOWN;
} else if (button == 2) {
input.mi.dwFlags |= MOUSEEVENTF_RIGHTDOWN;
}
SendInput(1, &input, sizeof(INPUT));
if (release) {
if (button == 1) {
input.mi.dwFlags = MOUSEEVENTF_LEFTUP;
} else if (button == 2) {
input.mi.dwFlags = MOUSEEVENTF_RIGHTUP;
}
SendInput(1, &input, sizeof(INPUT));
}
}
int main() {
// PUBG için örnek bir makro:
// Yürüme (W tuşuna bas ve bırak)
pressKey(KEY_W, TRUE);
Sleep(500); // 500 milisaniye bekleme
// Fareyi hareket ettirme ve atış yapma (Sol fare tuşuna bas ve bırak)
pressMouseButton(1, TRUE);
Sleep(100);
// Atış yapma (Boşluk tuşuna bas ve bırak)
pressKey(KEY_SPACE, TRUE);
Sleep(100);
return 0;
}