Тема: AHK: Нарисованные линии поверх окна
Здравствуйте. Помогите пожалуйста нарисовать линии вот таким образом с помощью AHK, если это возможно

и чтобы такое изображение отображалось по середины экрана в игре. Разрешение в игре 800x600.
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Здравствуйте. Помогите пожалуйста нарисовать линии вот таким образом с помощью AHK, если это возможно

и чтобы такое изображение отображалось по середины экрана в игре. Разрешение в игре 800x600.
Нашел у вас на форуме макрос и на его основе сделал как хотел
drawxhair(424,240)
Return
drawXhair(xcoord,ycoord)
{
loop
{
Splashimage 1:,% "CW00FF00 B W100 H1 Y" ycoord "X" xcoord
Splashimage 2:,% "CW00FF00 B W100 H1 Y" ycoord "X" xcoord-100
Splashimage 3:,% "CW00FF00 B H20 W1 X" xcoord "Y" ycoord-10
Splashimage 4:,% "CW00FF00 B H20 W1 X" xcoord-25 "Y" ycoord-10
Splashimage 5:,% "CW00FF00 B H20 W1 X" xcoord+25 "Y" ycoord-10
Splashimage 6:,% "CW00FF00 B H40 W1 X" xcoord+50 "Y" ycoord-20
Splashimage 7:,% "CW00FF00 B H40 W1 X" xcoord-50 "Y" ycoord-20
Splashimage 8:,% "CW00FF00 B H40 W1 X" xcoord-100 "Y" ycoord-20
Splashimage 9:,% "CW00FF00 B H40 W1 X" xcoord+100 "Y" ycoord-20
sleep 5
}
}но он мигает, а это отвлекает и даже мешает. Можно как то сделать чтобы оно хотя бы не так часто мигало в игре?

Path:="c:\d7b6bd4d83ae.png"
#If UseOnce:=True And UseOnce=""
Enter::
Gui, -Caption +AlwaysOnTop +Lastfound +ToolWindow
Gui, Color, FE0000
WinSet, TransColor, FE0000
Gui, Add, Picture,, % Path
Gui, Show, % "x"(A_ScreenWidth//2)-(188/2)
. " y"(A_ScreenHeight//2)-(57//2)
ReturnДелаю рисунок и сохраняю его с названием d7b6bd4d83ae и расширением png по такому пути c:\
Когда пытаюсь запустить скрипт то пишет ошибку
Обновите интерпретатор до последней версии.

То же самое происходит, если задать координаты Gui через переменные, значение которым вычислять с использованием "/", - как ошибочная все равно указывается та же строка "Gui, Show". Другие операции деления в скрипте, если они не связаны с вычислением координат Gui, ошибки не вызывают.
Стоит заменить (188/2) на (188//2) или (99) или (33*3) - все работает.
Я в шоке, мой гуманитарий головного мозга прогрессирует
???
Обновите интерпретатор до последней версии.
Changed Gui Show to allow floating-point numbers.
Обновил. Скрипт запускается. Рисунок появляется при нажатии Enter, но когда захожу в игру, запускаю скрипт и нажимаю Enter то игру сворачивает, а когда разворачиваю то рисунка там не видно. В винде рисунок видно.
Запускайте игру в оконном режиме.
Запускаю в оконном режиме, появляется рисунок, но окно игры на задний план сразу и когда я активирую окно то рисунок исчезает.
Кстати спасибо большое за рабочий скрипт)
@Dworkin
Запускайте игру в оконном режиме.
Path:="c:\d7b6bd4d83ae.png"
OnExit, ExitScript
#If UseOnce:=True And UseOnce=""
Enter::
WinGetPos, X, Y, W, H, % "ahk_id"hWnd:=WinActive("A")
WinMove, % "ahk_id"hWnd,, 0, 0, A_ScreenWidth, A_ScreenHeight
WinSet, Style, -0xC00000, % "ahk_id"hWnd
Gui, -Caption +AlwaysOnTop +Lastfound +ToolWindow HwndGUIhWnd
Gui, Color, FE0000
WinSet, TransColor, FE0000
Gui, Add, Picture,, % Path
Gui, Show, % "x"(A_ScreenWidth//2)-(188//2)
. " y"(A_ScreenHeight//2)-(57//2)
WinSet, ExStyle, +0x80020, % "ahk_id"GUIhWnd
WinActivate, % "ahk_id"hWnd
Return
ExitScript:
WinMove, % "ahk_id"hWnd,, X, Y, W, H
WinSet, Style, +0xC00000, % "ahk_id"hWnd
ExitAppХм. Захожу в игру в окном режиме, запускаю скрипт, в игре нажимаю ентер, игра становиться в оконном режиме на весь экран, мигает рисунок от скрипта и все...рисунок не видно, ну хоть игра в переднем плане остаеться
Добавьте в код WinSet, AlwaysOnTop, Off:
...
WinSet, Style, -0xC00000, % "ahk_id"hWnd
WinSet, AlwaysOnTop, Off, % "ahk_id"hWnd
Gui, -Caption +AlwaysOnTop +Lastfound +ToolWindow HwndGUIhWnd
...Добавьте в код WinSet, AlwaysOnTop, Off:
... WinSet, Style, -0xC00000, % "ahk_id"hWnd WinSet, AlwaysOnTop, Off, % "ahk_id"hWnd Gui, -Caption +AlwaysOnTop +Lastfound +ToolWindow HwndGUIhWnd ...
Спасибо огромное, теперь нормально заработало)
Еще один маленький вопросик если можно). Как можно сделать прозрачный фон(линии видно, а белое вокруг нет)?
Ну а мой рисунок из третьего поста, зачем по Вашему я в него альфа-канал добавил и выложил? ![]()
я примерно сделал рисунок, а теперь когда все работает я хотел бы сделать другой рисунок более ровный)
Подскажите пожалуйста в какой программе можно убрать фон как вы?
Пользуюсь Adobe Photoshop.
Скажи пожалуйста как поменять координаты чтобы рисунок был на таких координатах 424,240?
Это координаты в игре при разрешении 800x600
...
Gui, Show, % "x"(A_ScreenWidth//2)-(188//2)
. " y"(A_ScreenHeight//2)-(57//2)
...Тут всё, что нужно.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться