Автор Тема: [Автоматизация] Макрос  (Прочитано 254 раз)

Maxlinus и 1 Гость просматривают эту тему.

Оффлайн TiranCool [?]

  • Новичок
  • *
  • Сообщений: 64
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
[Автоматизация] Макрос
« Создано: Сентябрь 12, 2018, 23:03:48 »
Версия AutoIt:3.5.4 3.
Код: AutoIt [Выделить]
#include <Misc.au3>
Opt("MouseClickDelay")
Opt("MouseClickDownDelay")
Opt("MouseCoordMode", 1)
Global $bPaused, $hDll, $aXY
OnAutoItExitRegister("_OnExit")
HotKeySet("{f5}", "_Start")
HotKeySet("{f6}", "_Pause")
HotKeySet("{0}", "_Exit")
$r=1
$t=''
$i=''
$hDll = DllOpen("user32.dll")
_Start()

While 1

    If _IsPressed("01", $hDll) Then
         $i+=2+$r
         $aXY = MouseGetPos()
         if $i>11 then $t+=50
                 if $t>190 then $t+=80
        MouseMove($aXY[0] , $aXY[1]+10+$t   ,2)

     EndIf
        Sleep(5)

WEnd

Func _Start()
    $bPaused = False
    EndFunc   ;

Func _Pause( $hDll)
    $bPaused = True
     $i=0
     $t=0
    While $bPaused
        Sleep(100)
    WEnd
EndFunc   ;

Func _OnExit()
    DllClose($hDll)
EndFunc   ;

Func _Exit()
    Exit
EndFunc   ;


 

Описание:При нажатии ЛКМ, мышь двигается вниз с определенным интервалом, но нужно обнулять значения переменной интенсивности при отжатии ЛКМ. Помогите пожалуйста.

Примечания:

Русское сообщество AutoIt

[Автоматизация] Макрос
« Отправлен: Сентябрь 12, 2018, 23:03:48 »

Помечен как лучший ответ пользователем TiranCool Отправлен Сентябрь 13, 2018, 18:18:26

Онлайн Alofa [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 1431
  • Репутация: 212
  • Пол: Мужской
  • Windows 7 /10 [x64]
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: [Автоматизация] Макрос
« Ответ #1, Отправлен: Сентябрь 13, 2018, 00:08:28 »
Код: AutoIt [Выделить]
#include <Misc.au3>
Global $bPaused, $aXY, $i, $t, $bPaused = False, $bExit = False
Global $hDll = DllOpen("user32.dll")
HotKeySet("{f5}", "_Start_Pause")
HotKeySet("{0}", "_Exit")

Do
    If $bPaused And _IsPressed("01", $hDll) Then
        $i += 3
        $aXY = MouseGetPos()
        If $i > 11 Then $t += 50
        If $t > 190 Then $t += 80
        MouseMove($aXY[0], $aXY[1] + 10 + $t, 2)
    Else
        $i = 0
        $t = 0
    EndIf
    Sleep(50)
Until $bExit

DllClose($hDll)

Func _Start_Pause()
    $bPaused = Not $bPaused
EndFunc   ;==>_Start_Pause

Func _Exit()
    $bExit = True
EndFunc   ;==>_Exit


Оффлайн TiranCool [?]

  • Новичок
  • *
  • Сообщений: 64

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: [Автоматизация] Макрос
« Ответ #2, Отправлен: Сентябрь 13, 2018, 22:19:52 »
В игре не работает(((, а на рабочем столе пашет, мой вариант в игре работает

Онлайн Alofa [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 1431
  • Репутация: 212
  • Пол: Мужской
  • Windows 7 /10 [x64]
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: [Автоматизация] Макрос
« Ответ #3, Отправлен: Сентябрь 14, 2018, 10:59:36 »
В игре не работает…
Мой код - это оптимизация вашего и отличается он только отсутствием Opt().

Русское сообщество AutoIt

Re: [Автоматизация] Макрос
« Ответ #3 Отправлен: Сентябрь 14, 2018, 10:59:36 »

Оффлайн TiranCool [?]

  • Новичок
  • *
  • Сообщений: 64

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: [Автоматизация] Макрос
« Ответ #4, Отправлен: Сентябрь 15, 2018, 11:48:50 »
Еще раз пробовал, срабатывает при первом проходе цикла  и прекращает свое действие, от имени администратора пробовал не помогло. Так же на рабочем столе при достижения середины монитора, он останавливается, может работает до середины монитора( горизонтально в любой точке). Не знаю почему, но мой скрипт работает из минусов не возвращается в исходную точку(не обновляются значения после отжима ЛКМ).

Русское сообщество AutoIt

Re: [Автоматизация] Макрос
« Ответ #4 Отправлен: Сентябрь 15, 2018, 11:48:50 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
12 Ответов
9375 Просмотров
Последний ответ Октябрь 15, 2010, 14:31:48
от Rouch
9 Ответов
4826 Просмотров
Последний ответ Июль 11, 2010, 22:47:05
от Kaster
6 Ответов
4293 Просмотров
Последний ответ Март 15, 2017, 12:06:30
от Stalevar
3 Ответов
7466 Просмотров
Последний ответ Май 01, 2014, 02:11:09
от erlik
1 Ответов
5925 Просмотров
Последний ответ Май 31, 2014, 09:35:10
от madmasles
0 Ответов
885 Просмотров
Последний ответ Июль 31, 2014, 18:30:02
от madmasles
4 Ответов
2288 Просмотров
Последний ответ Август 03, 2014, 03:27:24
от Dima1337
1 Ответов
2328 Просмотров
Последний ответ Октябрь 11, 2014, 07:40:36
от alex33
5 Ответов
1443 Просмотров
Последний ответ Декабрь 17, 2015, 13:27:51
от Erozio
3 Ответов
412 Просмотров
Последний ответ Ноябрь 27, 2017, 07:47:32
от pvnn