<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK v2: Скрипт не эмулирует клавиши]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=18294</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=18294&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK v2: Скрипт не эмулирует клавиши».]]></description>
		<lastBuildDate>Mon, 02 Sep 2024 15:18:39 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK v2: Скрипт не эмулирует клавиши]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=161549#p161549</link>
			<description><![CDATA[<p>Начните с малого, проверяйте понемногу код, когда появится косяк - исправляйте. В чём именно проблема?</p>]]></description>
			<author><![CDATA[null@example.com (__Михаил__)]]></author>
			<pubDate>Mon, 02 Sep 2024 15:18:39 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=161549#p161549</guid>
		</item>
		<item>
			<title><![CDATA[AHK v2: Скрипт не эмулирует клавиши]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=161548#p161548</link>
			<description><![CDATA[<p>Всем привет, дорогие пользователи форума! Я написал скрипт для Майнкрафта, и он работает, как ему вздумается, то есть не хочет эмулировать клавиши n, e, j, при этом Esc работает корректно. Я пытался сносить ахк, перезагружать скрипт и комп, но все бестолку. Вчера комп простоял буквально пол часа и все опять заработало, а сегодня - та же песня. <br /></p><div class="codebox"><pre><code>
coords := [
    [1768, 1240],
    [1821, 1240],
    [1876, 1240],
    [1932, 1240],
    [1987, 1240],
    [2038, 1240],
    [2093, 1240],
    [2147, 1240]
]
global Toggle := false
global Stack := true
WinActivate(&quot;Minecraft* 1.16.5 - Сетевая игра (сторонний сервер)&quot;)
Sleep(100)

G::ToggleScript()

ToggleScript() {
    global Toggle
    Toggle := !Toggle
    if (Toggle) {
        SetTimer(MainLoop, 100)  ; Запускаем основной цикл с интервалом 100 мс
    } else {
        SetTimer(MainLoop, 0)  ; Останавливаем основной цикл
    }
}

AutoSell(){
    ; Активировать окно по его названию
    WinActivate(&quot;Minecraft* 1.16.5 - Сетевая игра (сторонний сервер)&quot;)
    Sleep(500) ; Увеличенная задержка для надежности
	global Stack
    ; Первая продажа инвиза
    Loop 8
    {
        index := A_Index + 1
        SendInput(index)
        Sleep(50) ; Увеличенная задержка
        SendInput(&quot;n&quot;)
        Sleep(50) ; Увеличенная задержка
    }
    
    if !Toggle
        return
    
    ; Инвиз в хотбар
    SendInput(&quot;e&quot;)
    Sleep(100) ; Увеличенная задержка
    Send(&quot;+{Shift down}&quot;)
    Click(&quot;left&quot;, &quot;down&quot;)
    MouseMove(1714, 1240)
    Loop 8
    {
        coord := coords[A_Index]
        MouseMove(coord[1], coord[2])
        Sleep(100) ; Увеличенная задержка
    }
    Send(&quot;+{Shift up}&quot;)
    Click(&quot;left&quot;, &quot;up&quot;)
    
    MouseMove(1718, 1050)
    Sleep(100) ; Увеличенная задержка
    Click(&quot;left&quot;)
    Sleep(100) ; Увеличенная задержка
    
    MouseMove(1714, 1240)
    Sleep(100) ; Увеличенная задержка

    ; Зажать ПКМ
    Click(&quot;right&quot;, &quot;down&quot;)
    Sleep(100) ; Увеличенная задержка
    Loop 8
    {
        coord := coords[A_Index]
        MouseMove(coord[1], coord[2])
        Sleep(100) ; Увеличенная задержка
    }
    Click(&quot;right&quot;, &quot;up&quot;)
    Sleep(100) ; Увеличенная задержка
    MouseMove(1718, 1050)
    Sleep(100) ; Увеличенная задержка
    Click(&quot;left&quot;)
    SendInput(&quot;{Esc}&quot;)
    
    ; Повторная продажа
    Loop 8
    {
        index := A_Index + 1
        SendInput(index)
        Sleep(50) ; Увеличенная задержка
        SendInput(&quot;n&quot;)
        Sleep(50) ; Увеличенная задержка
    }
    
    if !Toggle
        return
    
    ; Предметы из хотбара обратно в инвентарь
    SendInput(&quot;e&quot;)
    Sleep(100) ; Увеличенная задержка
    Send(&quot;+{Shift down}&quot;)
    Click(&quot;left&quot;, &quot;down&quot;)
    MouseMove(1714, 1240)
    Loop 8
    {
        coord := coords[A_Index]
        MouseMove(coord[1], coord[2])
        Sleep(100) ; Увеличенная задержка
    }
    Send(&quot;+{Shift up}&quot;)
    Click(&quot;left&quot;, &quot;up&quot;)
    SendInput(&quot;{Esc}&quot;)
    
    if !Toggle
        return

    ; Инвиз в хотбар
    SendInput(&quot;e&quot;)
    Sleep(100) ; Увеличенная задержка
    Send(&quot;+{Shift down}&quot;)
    Click(&quot;left&quot;, &quot;down&quot;)
    MouseMove(1714, 1240)
    Loop 8
    {
        index := A_Index + 1
        SendInput(index)
        Sleep(50) ; Увеличенная задержка
        SendInput(&quot;n&quot;)
        Sleep(50) ; Увеличенная задержка
    }
    Send(&quot;+{Shift up}&quot;)
    Click(&quot;left&quot;, &quot;up&quot;)
    
    MouseMove(1718, 1050)
    Sleep(100) ; Увеличенная задержка
    Click(&quot;left&quot;)
    Sleep(100) ; Увеличенная задержка
    
    MouseMove(1714, 1240)
    Sleep(100) ; Увеличенная задержка

    ; Зажать ПКМ
    Click(&quot;right&quot;, &quot;down&quot;)
    Sleep(100) ; Увеличенная задержка
    Loop 8
    {
        coord := coords[A_Index]
        MouseMove(coord[1], coord[2])
        Sleep(100) ; Увеличенная задержка
    }
    Click(&quot;right&quot;, &quot;up&quot;)
    Sleep(100) ; Увеличенная задержка
    MouseMove(1718, 1050)
    Sleep(100) ; Увеличенная задержка
    Click(&quot;left&quot;)
    SendInput(&quot;{Esc}&quot;)
    
    if !Toggle
        return
    
    ; Повторная продажа
    Loop 8
    {
        index := A_Index + 1
        SendInput(index)
        Sleep(50) ; Увеличенная задержка
        SendInput(&quot;n&quot;)
        Sleep(50) ; Увеличенная задержка
    }
    
    if !Toggle
        return
    
    ; Открытие AH и снятие предметов
    Sleep(10000)
    SendInput(&quot;j&quot;)
    Sleep(500)
    MouseMove(1704, 1072)
    Sleep(100) ; Увеличенная задержка
    Click(&quot;left&quot;)
    MouseMove(1700, 797)
    Sleep(500)
    Send(&quot;+{Shift down}&quot;)
    Sleep(50)
    Click(&quot;left&quot;, &quot;down&quot;)
    MouseMove(1700, 796)
    Sleep(10000)
    Send(&quot;+{Shift up}&quot;)
    Click(&quot;left&quot;, &quot;up&quot;)
    SendInput(&quot;{Esc}&quot;)
    
    if !Toggle
        return
    
    ; Инвиз в хотбар 
    SendInput(&quot;e&quot;)
    Sleep(100) ; Увеличенная задержка
    Send(&quot;+{Shift down}&quot;)
    Click(&quot;left&quot;, &quot;down&quot;)
    MouseMove(1714, 1240)
    Loop 8
    {
        coord := coords[A_Index]
        MouseMove(coord[1], coord[2])
        Sleep(100) ; Увеличенная задержка
    }
    Send(&quot;+{Shift up}&quot;)
    Click(&quot;left&quot;, &quot;up&quot;)
    
    MouseMove(1718, 1050)
    Sleep(100) ; Увеличенная задержка
    Click(&quot;left&quot;)
    Sleep(100) ; Увеличенная задержка
    
    MouseMove(1714, 1240)
    Sleep(100) ; Увеличенная задержка

    ; Зажать ПКМ
    Click(&quot;right&quot;, &quot;down&quot;)
    Sleep(100) ; Увеличенная задержка
    Loop 8
    {
        coord := coords[A_Index]
        MouseMove(coord[1], coord[2])
        Sleep(100) ; Увеличенная задержка
    }
    Click(&quot;right&quot;, &quot;up&quot;)
    Sleep(100) ; Увеличенная задержка
    MouseMove(1718, 1050)
    Sleep(100) ; Увеличенная задержка
    Click(&quot;left&quot;)
    SendInput(&quot;{Esc}&quot;)
    Sleep(1000)
    SendInput(&quot;e&quot;)

    ; Заданный цвет (в формате RGB)
    Sleep(1000)
    x := 1702
    y := 1043
    targetColorHex := &quot;0xD16C48&quot;
    targetColor := targetColorHex + 0
    
    GetPixelColor(x, y) {
        return PixelGetColor(x, y)
    }
    
    pixelColor := GetPixelColor(x, y) + 0
    Sleep(500)
    if (pixelColor == targetColor) {
        SendInput(&quot;{Esc}&quot;)
        Sleep(500)
    } else {
        SendInput(&quot;{Esc}&quot;)
        Sleep(500)
        Stack := !Stack
    }
}



MainLoop(){ ;ОСНОВНОЙ КОД СКРИПТА
	global Stack
	Loop {
		if (Stack) {
			AutoSell()
		} else {
			break  ; Выйти из цикла, если Stack равно false
		}
		if (!Toggle) {
			break  ; Выйти из цикла, если Toggle выключен
		}
	}
    if !Toggle
        return
	Stack := !Stack
	WinActivate(&quot;Minecraft* 1.16.5 - Сетевая игра (сторонний сервер)&quot;)
	Send(&quot;e&quot;)
	Sleep(200)
	MouseMove(1980, 1050) ; Первый слот для замены
	Click(&quot;left&quot;)
	Sleep(100)
	MouseMove(1718, 1050)
	Click(&quot;left&quot;)
	Sleep(100)
    Send(&quot;{Esc}&quot;)

	Loop {
		if (Stack) {
			AutoSell()
		} else {
			break  ; Выйти из цикла, если Stack равно false
		}
		if (!Toggle) {
			break  ; Выйти из цикла, если Toggle выключен
		}
	}
    if !Toggle
        return
	Stack := !Stack
	WinActivate(&quot;Minecraft* 1.16.5 - Сетевая игра (сторонний сервер)&quot;)
	Send(&quot;e&quot;)
	Sleep(200)
	MouseMove(2022, 1050) ; Второй слот для замены
	Click(&quot;left&quot;)
	Sleep(100)
	MouseMove(1718, 1050)
	Click(&quot;left&quot;)
	Sleep(100)
    Send(&quot;{Esc}&quot;)

	
	Loop {
		if (Stack) {
			AutoSell()
		} else {
			break  ; Выйти из цикла, если Stack равно false
		}
		if (!Toggle) {
			break  ; Выйти из цикла, если Toggle выключен
		}
	}
    if !Toggle
        return
	Stack := !Stack
	WinActivate(&quot;Minecraft* 1.16.5 - Сетевая игра (сторонний сервер)&quot;)
	Send(&quot;e&quot;)
	Sleep(200)
	MouseMove(2070, 1050) ; Третий слот для замены
	Click(&quot;left&quot;)
	Sleep(100)
	MouseMove(1718, 1050)
	Click(&quot;left&quot;)
	Sleep(100)
    Send(&quot;{Esc}&quot;)
	
	
	Loop {
		if (Stack) {
			AutoSell()
		} else {
			break  ; Выйти из цикла, если Stack равно false
		}
		if (!Toggle) {
			break  ; Выйти из цикла, если Toggle выключен
		}
	}
    if !Toggle
        return
	Stack := !Stack
	WinActivate(&quot;Minecraft* 1.16.5 - Сетевая игра (сторонний сервер)&quot;)
	Send(&quot;e&quot;)
	Sleep(200)
	MouseMove(2130, 1050) ; Четвертый слот для замены
	Click(&quot;left&quot;)
	Sleep(100)
	MouseMove(1718, 1050)
	Click(&quot;left&quot;)
	Sleep(100)
    Send(&quot;{Esc}&quot;)
	
	
	Loop {
		if (Stack) {
			AutoSell()
		} else {
			break  ; Выйти из цикла, если Stack равно false
		}
		if (!Toggle) {
			break  ; Выйти из цикла, если Toggle выключен
		}
	}
    if !Toggle
        return
	Stack := !Stack
	WinActivate(&quot;Minecraft* 1.16.5 - Сетевая игра (сторонний сервер)&quot;)
	Send(&quot;e&quot;)
	Sleep(200)
	MouseMove(1980, 1100) ; Пятый слот для замены
	Click(&quot;left&quot;)
	Sleep(100)
	MouseMove(1718, 1050)
	Click(&quot;left&quot;)
	Sleep(100)
    Send(&quot;{Esc}&quot;)
	
	
	Loop {
		if (Stack) {
			AutoSell()
		} else {
			break  ; Выйти из цикла, если Stack равно false
		}
		if (!Toggle) {
			break  ; Выйти из цикла, если Toggle выключен
		}
	}
    if !Toggle
        return
	Stack := !Stack
	WinActivate(&quot;Minecraft* 1.16.5 - Сетевая игра (сторонний сервер)&quot;)
	Send(&quot;e&quot;)
	Sleep(200)
	MouseMove(2022, 1100) ; Шестой слот для замены
	Click(&quot;left&quot;)
	Sleep(100)
	MouseMove(1718, 1050)
	Click(&quot;left&quot;)
	Sleep(100)
    Send(&quot;{Esc}&quot;)
	
	
	Loop {
		if (Stack) {
			AutoSell()
		} else {
			break  ; Выйти из цикла, если Stack равно false
		}
		if (!Toggle) {
			break  ; Выйти из цикла, если Toggle выключен
		}
	}
    if !Toggle
        return
	Stack := !Stack
	WinActivate(&quot;Minecraft* 1.16.5 - Сетевая игра (сторонний сервер)&quot;)
	Send(&quot;e&quot;)
	Sleep(200)
	MouseMove(2070, 1100) ; Седьмой слот для замены
	Click(&quot;left&quot;)
	Sleep(100)
	MouseMove(1718, 1050)
	Click(&quot;left&quot;)
	Sleep(100)
    Send(&quot;{Esc}&quot;)
	
	
	Loop {
		if (Stack) {
			AutoSell()
		} else {
			break  ; Выйти из цикла, если Stack равно false
		}
		if (!Toggle) {
			break  ; Выйти из цикла, если Toggle выключен
		}
	}
    if !Toggle
        return
	Stack := !Stack
	WinActivate(&quot;Minecraft* 1.16.5 - Сетевая игра (сторонний сервер)&quot;)
	Send(&quot;e&quot;)
	Sleep(200)
	MouseMove(2130, 1100) ; Восьмой слот для замены
	Click(&quot;left&quot;)
	Sleep(100)
	MouseMove(1718, 1050)
	Click(&quot;left&quot;)
	Sleep(100)
    Send(&quot;{Esc}&quot;)
	
	
	Loop {
		if (Stack) {
			AutoSell()
		} else {
			break  ; Выйти из цикла, если Stack равно false
		}
		if (!Toggle) {
			break  ; Выйти из цикла, если Toggle выключен
		}
	}
    if !Toggle
        return
	Stack := !Stack
	WinActivate(&quot;Minecraft* 1.16.5 - Сетевая игра (сторонний сервер)&quot;)
	Send(&quot;e&quot;)
	Sleep(200)
	MouseMove(1980, 1160) ; Девятый слот для замены
	Click(&quot;left&quot;)
	Sleep(100)
	MouseMove(1718, 1050)
	Click(&quot;left&quot;)
	Sleep(100)
    Send(&quot;{Esc}&quot;)
	
	
	Loop {
		if (Stack) {
			AutoSell()
		} else {
			break  ; Выйти из цикла, если Stack равно false
		}
		if (!Toggle) {
			break  ; Выйти из цикла, если Toggle выключен
		}
	}
    if !Toggle
        return
	Stack := !Stack
	WinActivate(&quot;Minecraft* 1.16.5 - Сетевая игра (сторонний сервер)&quot;)
	Send(&quot;e&quot;)
	Sleep(200)
	MouseMove(2022, 1160) ; Десятый слот для замены
	Click(&quot;left&quot;)
	Sleep(100)
	MouseMove(1718, 1050)
	Click(&quot;left&quot;)
	Sleep(100)
    Send(&quot;{Esc}&quot;)
	
	
	Loop {
		if (Stack) {
			AutoSell()
		} else {
			break  ; Выйти из цикла, если Stack равно false
		}
		if (!Toggle) {
			break  ; Выйти из цикла, если Toggle выключен
		}
	}
    if !Toggle
        return
	Stack := !Stack
	WinActivate(&quot;Minecraft* 1.16.5 - Сетевая игра (сторонний сервер)&quot;)
	Send(&quot;e&quot;)
	Sleep(200)
	MouseMove(2070, 1160) ; Одиннадцатый слот для замены
	Click(&quot;left&quot;)
	Sleep(100)
	MouseMove(1718, 1050)
	Click(&quot;left&quot;)
	Sleep(100)
    Send(&quot;{Esc}&quot;)
	
	
	Loop {
		if (Stack) {
			AutoSell()
		} else {
			break  ; Выйти из цикла, если Stack равно false
		}
		if (!Toggle) {
			break  ; Выйти из цикла, если Toggle выключен
		}
	}
    if !Toggle
        return
	Stack := !Stack
	WinActivate(&quot;Minecraft* 1.16.5 - Сетевая игра (сторонний сервер)&quot;)
	Send(&quot;e&quot;)
	Sleep(200)
	MouseMove(2130, 1160) ; Двенадцатый слот для замены
	Click(&quot;left&quot;)
	Sleep(100)
	MouseMove(1718, 1050)
	Click(&quot;left&quot;)
	Sleep(100)
    Send(&quot;{Esc}&quot;)
	Pause
}
</code></pre></div><p>Код я писал с помошью ChatGPT, который в этих вопросах, мягко говоря, немного туповат. Кстати, при запуске скрипта, он в логах пишет, что он ОТРАВЛЯЕТ n, e и j. Что делать?</p>]]></description>
			<author><![CDATA[null@example.com (mbashkatov24)]]></author>
			<pubDate>Mon, 02 Sep 2024 07:46:00 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=161548#p161548</guid>
		</item>
	</channel>
</rss>
