improvements

This commit is contained in:
2025-04-10 08:26:24 +01:00
parent 7f795ba52e
commit c3a1e864a7
4 changed files with 72 additions and 70 deletions
+11 -12
View File
@@ -7,6 +7,7 @@ use windows::Win32::UI::Input::KeyboardAndMouse::{
pub const INTERVAL: Duration = Duration::from_secs(60);
const VK_NUMPAD4: u8 = 0x64;
const VK_NUMPAD6: u8 = 0x66;
const PRESS_KEYS: [u8; 2] = [VK_NUMPAD4, VK_NUMPAD6];
#[derive(Debug)]
pub struct AntiAfk {
@@ -25,30 +26,28 @@ impl Default for AntiAfk {
impl AntiAfk {
pub fn activate(&mut self) {
if util::is_window_focused(GTA_WINDOW_TITLE)
&& !util::is_key_pressed(VK_NUMPAD4 as i32)
&& !util::is_key_pressed(VK_NUMPAD6 as i32)
if util::win::is_window_focused(GTA_WINDOW_TITLE)
&& !util::win::is_any_key_pressed(&PRESS_KEYS)
{
send(VK_NUMPAD4);
send(VK_NUMPAD6);
send(&PRESS_KEYS);
}
self.interval = Instant::now();
}
}
pub fn send(vk_code: u8) {
unsafe {
pub fn send(vk_codes: &[u8]) {
vk_codes.iter().for_each(|vk_code: &u8| unsafe {
keybd_event(
vk_code,
u8::try_from(MapVirtualKeyW(u32::from(vk_code), MAP_VIRTUAL_KEY_TYPE(0))).unwrap(),
*vk_code,
u8::try_from(MapVirtualKeyW(u32::from(*vk_code), MAP_VIRTUAL_KEY_TYPE(0))).unwrap(),
KEYBD_EVENT_FLAGS(0),
0,
);
keybd_event(
vk_code,
u8::try_from(MapVirtualKeyW(u32::from(vk_code), MAP_VIRTUAL_KEY_TYPE(0))).unwrap(),
*vk_code,
u8::try_from(MapVirtualKeyW(u32::from(*vk_code), MAP_VIRTUAL_KEY_TYPE(0))).unwrap(),
KEYBD_EVENT_FLAGS(2),
0,
);
}
});
}