Jump to content
Sign in to follow this  
Milkyourcow2

Help would be Appreciated!

Recommended Posts

Milkyourcow2

So basically, I need to click on a coordinate after two keys are pressed in order, not at the same time.
For example, If I press F4 and then click somewhere a second later, click again at a specific coordiate.

I would also like it to choose one of two random coordinates (for my purposes, left and right.)  So far this is what I have:
 

#include<misc.au3>
sleep("3000") ; time to switch to relevant window

While 1 == 1
   If _isPressed ("73") then ; If F4 is pressed
   Do
      Sleep(10)
   Until _IsPressed("01") ; Until Mouse is clicked
   EndIf


   If Random(0, 1, 1) Then ; Return an integer between 0 and 1.
      $MousePos = MouseGetPos()
      MouseClick ("primary", 840,480,0)
      MouseMove ("$MousePos", 0)
   Else
      $MousePos = MouseGetPos()
      MouseClick ("primary", 770,470,0)
      MouseMove ("$MousePos", 0)
   EndIf
Wend

Right now it's flinging my cursor to the top left and keeping it there, so I have to end the program with task manager using my keyboard.  Without "While 1 == 1/WEnd", it just moves my mouse without waiting for the buttons to be pressed.

Can anyone enlighten me as to how to finish this up?

 


Share this post


Link to post
Share on other sites
Danyfirex

mousegetpos+mouseclick.

Saludos

Share this post


Link to post
Share on other sites
CoolBreeze

Maybe this can help you,

#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.12.0
 Author:         CoolBreeze
 Year:           2014

#ce ----------------------------------------------------------------------------

#include <misc.au3>


Local $mousePos, $mousePos_memo[2], $save_coords[2]

; Hotkeys
HotKeySet("{F4}", "_coordSave")
HotKeySet("{DEL}", "_clear")
HotKeySet("{ESC}", "_exit")


ToolTip("Press [F4] - to save position", 10, 10)


While 1
    If _IsPressed ("01") Then ;Left mouse button
        If $save_coords[0] <> "" And $save_coords[1] <> "" Then
            Sleep(100) ;to prevent mousedown effect during move!  tested in ms paint
            MouseClick("left", $save_coords[0], $save_coords[1], 1)
        EndIf
    EndIf


    $mousePos = MouseGetPos()

    If $mousePos[0] <> $mousePos_memo[0] OR $mousePos[1] <> $mousePos_memo[1]  Then
        ToolTip("Mouse position: " & $mousePos[0] & " x " & $mousePos[1])
        ConsoleWrite( $mousePos[0] & "," & $mousePos[1] & @CR)
    EndIf

    $mousePos_memo = $mousePos

    Sleep(10) ; tooltip flicker fix
WEnd



Func _coordSave()
    $mousePos = MouseGetPos()
    $save_coords = $mousePos
    ToolTip("Position is saved at: " & $save_coords[0] & " x " & $save_coords[1])
EndFunc


Func _clear()
    $save_coords[0] = ""
    $save_coords[1] = ""
    ToolTip("Cleared!")
EndFunc


Func _exit()
    Exit
EndFunc

Boris

Edited by CoolBreeze

Share this post


Link to post
Share on other sites
JLogan3o13

@Milkyourcow2, can you please explain in detail what you are trying to automate? 99% of the time there is a much easier way to accomplish what you're after without having to resort to MouseMoves and MouseClicks.

  • Like 1

√-1 2^3 ∑ π, and it was delicious!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×