Загрузка данных


Вот исправленный блок для мини-игры. Основные изменения: добавлены координаты клика (чтобы кликать в центр экрана, а не где попало), SendEvent (для гарантированной регистрации кликов в игре) и проверка цвета перед кликами (чтобы не кликать лишний раз, когда кнопка уже исчезла).

; ---------- МИНИ-ИГРА: БЫСТРЫЕ КЛИКИ (Click Fast) ----------
if bite {
    ; Координаты клика - центр экрана (подбери под свое разрешение)
    ; Для 1920x1080 это примерно 960, 540
    clickX := A_ScreenWidth // 2
    clickY := A_ScreenHeight // 2
    
    miss := 0
    ; Пока активен режим 2 и не было 5 промахов подряд
    while (mode = 2 && miss < 5) {
        
        ; ПРОВЕРКА: есть ли еще красная кнопка на экране?
        if !PixelSearch(&bx, &by, BX1, BY1, BX2, BY2, BiteColor, BiteTol) {
            ; Кнопки нет - выходим из цикла кликов
            break
        }
        
        ; Быстрые клики ЛКМ в центр экрана
        Loop 15 {
            ; Проверяем, не исчезла ли кнопка во время кликов
            if !PixelSearch(&bx, &by, BX1, BY1, BX2, BY2, BiteColor, BiteTol)
                break 2  ; Выход из обоих циклов сразу
            
            ; Используем SendEvent для надежности (игры часто не видят обычный Click)
            SendEvent "{Click " clickX " " clickY "}"
            Sleep ClickDelay
        }
        
        ; После серии кликов проверяем, осталась ли кнопка
        if PixelSearch(&bx, &by, BX1, BY1, BX2, BY2, BiteColor, BiteTol) {
            miss := 0  ; Кнопка еще есть - продолжаем кликать
        } else {
            miss++     ; Кнопка пропала - возможно, мы поймали рыбу
        }
    }
    
    ; Ожидание после поимки (если нужно)
    waited := 0
    while (mode = 2 && waited < AfterCatch) {
        Sleep 100
        waited += 100
    }
    
    if (mode = 2)
        CheckRod()
}

Что исправлено и почему:

1. 

Добавлены координаты клика (clickX, clickY) — теперь клики идут в центр экрана, где обычно находится зона мини-игры, а не в текущую позицию курсора.

2. 

SendEvent вместо Click — многие игры (особенно Roblox) не регистрируют стандартный Click от AutoHotkey. SendEvent эмулирует нажатие более "железно".

3. 

Проверка цвета ПЕРЕД кликами — в твоем коде сначала шли 10 кликов, а потом проверка. Если кнопка исчезла на 3-м клике, скрипт делал 7 лишних кликов. Теперь проверка идет перед каждой серией.

4. 

Break 2 — если во время кликов кнопка пропала, скрипт сразу выходит из всех циклов, а не продолжает кликать впустую.

5. 

Увеличено количество кликов до 15 за серию (можешь поменять обратно на 10, если будет слишком быстро).

Если клики все еще не регистрируются:

Замени строку SendEvent "{Click...}" на:

MouseClick "left", clickX, clickY, 1, 0

или на низкоуровневый вариант:

DllCall("mouse_event", "UInt", 0x02, "UInt", 0, "UInt", 0, "UInt", 0, "UPtr", 0) ; Left Down
Sleep 10
DllCall("mouse_event", "UInt", 0x04, "UInt", 0, "UInt", 0, "UInt", 0, "UPtr", 0) ; Left Up

-----
0.493977 ₽ · /balance_help