Welohabi Posted February 8, 2011 Share Posted February 8, 2011 Hello, I believe this is a simple problem... but I am very new to AutoIT and anything of this nature in general.I have a piece of code here that checks for a certain pixel color And then clicks a specific location. If PixelGetColor ( 770, 594 ) = 0xFFBA27 then MouseMove( X, Y, Z) MouseClick("left")I would like to make an array with 12 options or maybe 12 constants. So they can be used in place of the MouseMove coordinates RANDOMLY(No repeats) in the code above. For a total of 12 Different possible mouse clicks.1 (260,500)2 (352,500)3 (450,500)4 (540,500)5 (270,600)6 (370,600)7 (450,600)8 (540,600)9 (270,735)10 (360,735)11 (445,735)12 (535,735)Then I would like to add a Random() command to the whole code so that it plays 1-4 times, each time picking a different random coordinate.Thanks in advance to anyone that can help.. Link to comment Share on other sites More sharing options...
Triblade Posted February 8, 2011 Share Posted February 8, 2011 (edited) Sounds like you need a combination between array's and the random() function.Edit: Didn't read the post well... But post an example first! We won't help otherwise.I know you haven't said anything in the likes of bots and game automatisation, but this script sure sounds like that.In that case, read this! http://www.autoitscript.com/forum/forum-2/announcement-12-game-bots-and-automation/ Edited February 8, 2011 by Triblade My active project(s): A-maze-ing generator (generates a maze) My archived project(s): Pong3 (Multi-pinger) Link to comment Share on other sites More sharing options...
Tvern Posted February 8, 2011 Share Posted February 8, 2011 If you make an array with the values you want, you can shuffle it and just run through it as often as you want, before re-shuffling.There was a nice and fast algorith by another user, but for some reason all his post have been deleted and his username has been changed, so I'll link to my own, slower UDF Link to comment Share on other sites More sharing options...
Welohabi Posted February 10, 2011 Author Share Posted February 10, 2011 (edited) Ok well this is what I have so far...Just a Snippet from the code dim $X1 = 270 dim $Y1 = 500 dim $X2 = 350 dim $Y2 = 600 dim $X3 = 450 dim $Y3 = 735 dim $X4 = 540 Dim $i1 = Random( 1, 12, 1) Switch $i1 Case 1 MouseClick("left", $X1, $Y1) Sleep (100) Case 2 MouseClick("left", $X1, $Y2) Sleep (100) Case 3 MouseClick("left", $X1, $Y3) Sleep (100) Case 4 MouseClick("left", $X2, $Y1) Sleep (100) Case 5 MouseClick("left", $X2, $Y2) Sleep (100) Case 6 MouseClick("left", $X2, $Y3) Sleep (100) Case 7 MouseClick("left", $X3, $Y1) Sleep (100) Case 8 MouseClick("left", $X3, $Y2) Sleep (100) Case 9 ;Fixed MouseClick("left", $X3, $Y3) Sleep (100) Case 10 MouseClick("left", $X4, $Y1) Sleep (100) Case 11 ;Fixed MouseClick("left", $X4, $Y2) Sleep (100) Case 12 MouseClick("left", $X4, $Y3) EndSwitchThis does what i want it to... but it just keeps repeating. I want it to select one case at a time, 1-4 times, and then continue with the rest of the script. I need to figure out a way to maybe turn this into a function, and then Put it use using something like :If PixelGetColor ( 770, 618 ) = 0xFFBA27 then Execute (This function) <==I want this to play randomly 1-4 times...Thanks for your help Edited February 10, 2011 by Welohabi Link to comment Share on other sites More sharing options...
Welohabi Posted February 10, 2011 Author Share Posted February 10, 2011 Ok well this works... But it Selects 4 Mouse click and then moves on... How to make it randomly play $i1 - $14 expandcollapse popupdim $X1 = 270 dim $Y1 = 500 dim $X2 = 350 dim $Y2 = 600 dim $X3 = 450 dim $Y3 = 735 dim $X4 = 540 Dim $i1 = Random( 1, 12, 1) Dim $i2 = Random( 1, 12, 1) Dim $i3 = Random( 1, 12, 1) Dim $i4 = Random( 1, 12, 1) If PixelGetColor ( 770, 618 ) = 0xFFBA27 then Switch $i1 Case 1 MouseClick("left", $X1, $Y1) Sleep (100) Case 2 MouseClick("left", $X1, $Y2) Sleep (100) Case 3 MouseClick("left", $X1, $Y3) Sleep (100) Case 4 MouseClick("left", $X2, $Y1) Sleep (100) Case 5 MouseClick("left", $X2, $Y2) Sleep (100) Case 6 MouseClick("left", $X2, $Y3) Sleep (100) Case 7 MouseClick("left", $X3, $Y1) Sleep (100) Case 8 MouseClick("left", $X3, $Y2) Sleep (100) Case 9 MouseClick("left", $X3, $Y3) Sleep (100) Case 10 MouseClick("left", $X4, $Y1) Sleep (100) Case 11 MouseClick("left", $X4, $Y2) Sleep (100) Case 12 MouseClick("left", $X4, $Y3) EndSwitch Sleep (500) Switch $i2 Case 1 MouseClick("left", $X1, $Y1) Sleep (100) Case 2 MouseClick("left", $X1, $Y2) Sleep (100) Case 3 MouseClick("left", $X1, $Y3) Sleep (100) Case 4 MouseClick("left", $X2, $Y1) Sleep (100) Case 5 MouseClick("left", $X2, $Y2) Sleep (100) Case 6 MouseClick("left", $X2, $Y3) Sleep (100) Case 7 MouseClick("left", $X3, $Y1) Sleep (100) Case 8 MouseClick("left", $X3, $Y2) Sleep (100) Case 9 MouseClick("left", $X3, $Y3) Sleep (100) Case 10 MouseClick("left", $X4, $Y1) Sleep (100) Case 11 MouseClick("left", $X4, $Y2) Sleep (100) Case 12 MouseClick("left", $X4, $Y3) EndSwitch Sleep (500) Switch $i3 Case 1 MouseClick("left", $X1, $Y1) Sleep (100) Case 2 MouseClick("left", $X1, $Y2) Sleep (100) Case 3 MouseClick("left", $X1, $Y3) Sleep (100) Case 4 MouseClick("left", $X2, $Y1) Sleep (100) Case 5 MouseClick("left", $X2, $Y2) Sleep (100) Case 6 MouseClick("left", $X2, $Y3) Sleep (100) Case 7 MouseClick("left", $X3, $Y1) Sleep (100) Case 8 MouseClick("left", $X3, $Y2) Sleep (100) Case 9 MouseClick("left", $X3, $Y3) Sleep (100) Case 10 MouseClick("left", $X4, $Y1) Sleep (100) Case 11 MouseClick("left", $X4, $Y2) Sleep (100) Case 12 MouseClick("left", $X4, $Y3) EndSwitch Sleep (500) Switch $i4 Case 1 MouseClick("left", $X1, $Y1) Sleep (100) Case 2 MouseClick("left", $X1, $Y2) Sleep (100) Case 3 MouseClick("left", $X1, $Y3) Sleep (100) Case 4 MouseClick("left", $X2, $Y1) Sleep (100) Case 5 MouseClick("left", $X2, $Y2) Sleep (100) Case 6 MouseClick("left", $X2, $Y3) Sleep (100) Case 7 MouseClick("left", $X3, $Y1) Sleep (100) Case 8 MouseClick("left", $X3, $Y2) Sleep (100) Case 9 MouseClick("left", $X3, $Y3) Sleep (100) Case 10 MouseClick("left", $X4, $Y1) Sleep (100) Case 11 MouseClick("left", $X4, $Y2) Sleep (100) Case 12 MouseClick("left", $X4, $Y3) EndSwitch Sleep (500) MouseMove( 695, 600, 0) MouseClick("left") endif Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now