change how vks are stored

This commit is contained in:
2025-04-18 05:26:28 +01:00
parent 668a6eb38b
commit 64e94bf790
2 changed files with 20 additions and 11 deletions
+17 -8
View File
@@ -1,11 +1,12 @@
use crate::util::{self, consts::game::WINDOW_TITLE};
use std::time::{Duration, Instant};
use windows::Win32::UI::Input::KeyboardAndMouse::{
KEYBD_EVENT_FLAGS, MAP_VIRTUAL_KEY_TYPE, MapVirtualKeyW, VK_NUMPAD4, VK_NUMPAD6, keybd_event,
KEYBD_EVENT_FLAGS, MAP_VIRTUAL_KEY_TYPE, MapVirtualKeyW, VIRTUAL_KEY, VK_NUMPAD4, VK_NUMPAD6,
keybd_event,
};
pub const INTERVAL: Duration = Duration::from_secs(60);
const PRESS_KEYS: [u8; 2] = [VK_NUMPAD4.0 as u8, VK_NUMPAD6.0 as u8];
const PRESS_KEYS: [VIRTUAL_KEY; 2] = [VK_NUMPAD4, VK_NUMPAD6];
#[derive(Debug)]
pub struct AntiAfk {
@@ -36,17 +37,25 @@ pub fn can_activate() -> bool {
is_window_focused(WINDOW_TITLE) && !is_any_key_pressed(&PRESS_KEYS) && !is_cursor_visible()
}
pub fn send(vk_codes: &[u8]) {
vk_codes.iter().for_each(|vk_code: &u8| unsafe {
pub fn send(vk_codes: &[VIRTUAL_KEY]) {
vk_codes.iter().for_each(|vk_code| unsafe {
keybd_event(
*vk_code,
u8::try_from(MapVirtualKeyW(u32::from(*vk_code), MAP_VIRTUAL_KEY_TYPE(0))).unwrap(),
vk_code.0 as u8,
u8::try_from(MapVirtualKeyW(
u32::from(vk_code.0),
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.0 as u8,
u8::try_from(MapVirtualKeyW(
u32::from(vk_code.0),
MAP_VIRTUAL_KEY_TYPE(0),
))
.unwrap(),
KEYBD_EVENT_FLAGS(2),
0,
);