AutoIt help.

Posts 1–9 of 9 · Page 1 of 1
AutoIt help.
I posted a few days ago about making a clicker. Well i started thinking and searching around and i think i know what i need. Any help would be great!!

Using Autoit.....

I need the mouse to be clicked at location 637,690 (WHEN) this color (0xB10B3C) is in the following locations:


550,609
550,583
550,556
550,554
550,500
550,474
550,449
550,423
550,393
550,368
550,339
550,313
550,287
550,258

I've searched some tutorials but not 100% clear.

Thanks for any help.
Are you restricted to AutoIT? As far as I know, not many people in this section use AIT. If it's acceptable to use VB.NET/C# or even C++ for this, I'm sure you'll get a better response.
It doesnt matter how its made. I'll give it a go in c++ or vb since i know those alot better then autoit.

thanks
Okay here's how I would devise it in VB.NET, you can do it by creating a device context to the screen, but I prefer this method as you have less extern API calls.

[highlight=vb.net]
Import System.Runtime.InteropServices
'...

<DllImport("user32.dll")> _
Public Shared Sub mouse_event(ByVal dwFlags As UInt32, ByVal dx As UInt32, ByVal dy As UInt32, ByVal dwData As UInt32, ByVal dwExtraInfo As UIntPtr)
End Sub

Public Sub TryClick(ByVal clickPosition As Point, ByVal checkPositions As Point(), ByVal col As Color)
If ReadyToClick(checkPositions, col) Then 'make sure the positions hold the color.
Dim dx As Int32 = clickPosition.X * 65535 / Screen.PrimaryScreen.Bounds.Width 'calculate the absolute position of the x-axis
Dim dy As Int32 = clickPosition.Y * 65535 / Screen.PrimaryScreen.Bounds.Width ' " " " y-axis
mouse_event(&H8000 Or &H1 Or &H2 Or &H4, dx, dy, 0, UIntPtr.Zero) 'move the mouse to an absolute position and click.
End If
End Sub

Private Function CaptureScreen() As Bitmap
Dim screenSize As Size = Screen.PrimaryScreen.Bounds.Size 'calculate the size of the screen
Dim bmp As New Bitmap(screenSize.Width, screenSize.Height) 'make a buffer bitmap to hold the screen data
Using g As Graphics = Graphics.FromImage(bmp) 'create a graphics object to link to our bitmap
g.CopyFromScreen(Point.Empty, Point.Empty, screenSize) 'copy the screen data into the bitmap.
End Using
Return bmp
End Function

Private Function ReadyToClick(ByVal pts As Point(), ByVal c As Color) As Boolean
Dim screen As Bitmap = CaptureScreen()
For Each pt As Point In pts
If Not screen.GetPixel(pt.X, pt.Y) = c Then Return False 'if the color are the current point <> the correct color exit immediately
Next
Return True
End Function
[/highlight]

Now to use this I'd do something like the following:

[highlight=vb.net]
Private CheckPoints As Point() = New Point() {New Point(550, 609), _
New Point(550, 583), _
New Point(550, 556), _
New Point(550, 554), _
New Point(550, 500), _
New Point(550, 474), _
New Point(550, 449), _
New Point(550, 423), _
New Point(550, 393), _
New Point(550, 368), _
New Point(550, 339), _
New Point(550, 313), _
New Point(550, 287), _
New Point(550, 258)} 'array of points to look for the color at.

Private CheckColor As Color = Color.FromArgb(177, 11, 60) 'color to check for (in RBG)
Private ClickPosition As New Point(637, 690) 'position to click at when it's ready to do so

'...some method
TryClick(Me.ClickPosition, Me.CheckPoints, Me.CheckColor)
'...end method
[/highlight]

Enjoy.
ima give it a go an see what happens..
wtf is autoit
@Jason


I have been tring and tring to get this to working. Anyway you can lend a little more help.....
Kinda late but AutoIt is a language originally used for automation/macros like AutoHotKey.

@JusCaus Please elaborate, what is wrong? Are you getting an error? It's not working or what?
Quote Originally Posted by master131 View Post
Kinda late but AutoIt is a language originally used for automation/macros like AutoHotKey.

@JusCaus Please elaborate, what is wrong? Are you getting an error? It's not working or what?
@master131

I was getting errors, but i worked those out. debugged ran the program. It doesnt do anything at all. i loaded my game screen up and everything.
Posts 1–9 of 9 · Page 1 of 1

Post a Reply

Similar Threads

Tags for this Thread

None

Talk with us