Gh0stGenesis Posted October 7, 2009 Posted October 7, 2009 i want the start button on form 1 to open up the $window_main heres the code expandcollapse popup;*** Farmville Bot ; v2009-07-30 - Now has a GUI, a target button, and optional avoidance of spawning square. ; v2009-07-31 - Added a Mouse Speed variable, made the GUI look better ; v2009-08-23 - Reworked the entire script to use hotkeys and a variable harvest area ; v2009-08-24 - Finished the rewrite, cleaned and compacted the code, added Help button ; Just some things to remember... ; When zoomed all the way out, the below are true... ; Moving across columns, x+25, y-12 ; Moving down rows, x+25, y+12 ;*** Design Goals ; 1. Create a better looking interface ; Includes #include <GUIConstantsEx.au3> #include <EditConstants.au3> #include <GUIConstants.au3> #include <ButtonConstants.au3> #include <EditConstants.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> #include <ImageListConstants.au3> #include <GUIConstantsEx.au3> #include <EditConstants.au3> #include <GUIConstants.au3> #include <ButtonConstants.au3> #include <EditConstants.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> #include <ImageListConstants.au3> #Region ### START Koda GUI section ### Form=c:\documents and settings\zerobeat\my documents\autoit projects\farmville\form1.kxf $Form1_1 = GUICreate("Gh0st Genesis Bot", 371, 371, 193, 125) $Pic1 = GUICtrlCreatePic("C:\Documents and Settings\ZeroBeat\My Documents\My Pictures\gui.JPG", 0, 0, 369, 369, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS)) GUICtrlSetCursor (-1, 3) $Start = GUICtrlCreateButton("Start", 104, 200, 169, 33, 0) $Exit = GUICtrlCreateButton("Exit", 104, 248, 169, 33, 0) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd ;=========================== ; Define a few (global) variables $script_x = 0 $script_y = 0 $script_speed = 25 $script_size_columns = 4 $script_size_rows = 4 $script_running = 0 ; Hotkeys HotKeySet("{F3}", "set_position") HotKeySet("{F2}", "start_script") HotKeySet("{F9}", "stop_script") ; Hotkey Functions Func set_position() $script_x = MouseGetPos(0) $script_y = MouseGetPos(1) GUICtrlSetData($label_coordinate_x, $script_x) GUICtrlSetData($label_coordinate_y, $script_y) EndFunc Func start_script() GUICtrlSetColor($graphic_background, "0x33FF33") ;~ GUICtrlSetBkColor($button_help, "0x33FF33") $script_running = 1 EndFunc Func stop_script() GUICtrlSetColor($graphic_background, "0xF0F0F0") ;~ GUICtrlSetBkColor($button_help, "0xF0F0F0") $script_running = 0 EndFunc $window_main = GUICreate("Farmville Bot", 200, 165) $graphic_background = GUICtrlCreateGraphic(0, 0, 200, 165) GUICtrlSetState($graphic_background, $GUI_DISABLE) GUICtrlCreateGroup("Coordinates", 5, 5, 75, 60) GUICtrlCreateLabel("X:", 20, 25, 50) GUICtrlCreateLabel("Y:", 20, 40, 50) $label_coordinate_x = GUICtrlCreateLabel($script_x, 40, 25, 30) $label_coordinate_y = GUICtrlCreateLabel($script_y, 40, 40, 30) $button_help = GUICtrlCreateButton("Help", 15, 95, 75, 45) GUICtrlCreateGroup("Size", 90, 5, 105, 61) GUICtrlCreateLabel("Columns:", 98, 20) $input_size_columns = GUICtrlCreateInput($script_size_columns, 145, 18, 40, 20) $updown_size_columns = GUICtrlCreateUpdown($input_size_columns) GUICtrlSetLimit($updown_size_columns, 20, 1) GUICtrlCreateLabel("Rows:", 98, 42) $input_size_rows = GUICtrlCreateInput($script_size_rows, 145, 40, 40, 20) $updown_size_rows = GUICtrlCreateUpdown($input_size_rows) GUICtrlSetLimit($updown_size_rows, 20, 1) GUICtrlCreateGroup("Mouse Speed", 110, 75, 85, 85) $input_speed = GUICtrlCreateInput($script_speed, 125, 95, 50, 20, $ES_CENTER) $updown_speed = GUICtrlCreateUpdown($input_speed) GUICtrlSetLimit($updown_speed, 50, 1) $button_speed_1 = GUICtrlCreateButton("1", 115, 120, 25, 15) $button_speed_5 = GUICtrlCreateButton("5", 140, 120, 25, 15) $button_speed_10 = GUICtrlCreateButton("10", 165, 120, 25, 15) $button_speed_15 = GUICtrlCreateButton("15", 115, 140, 25, 15) $button_speed_25 = GUICtrlCreateButton("25", 140, 140, 25, 15) $button_speed_50 = GUICtrlCreateButton("50", 165, 140, 25, 15) $window_help = GUICreate("Help", 170, 65, -1, -1, -1, 0, $window_main) GUICtrlCreateLabel("F3 = Set starting coordinates", 10, 5) GUICtrlCreateLabel("F2 = Start the script", 10, 25) GUICtrlCreateLabel("F9 = Stop the script", 10, 45) GUISetState(@SW_SHOW, $window_main) While 1 If $script_running Then ; Seriously, why is this even necessary...? $script_size_columns = GUICtrlRead($input_size_columns) $script_size_rows = GUICtrlRead($input_size_rows) farm() EndIf $script_speed = GUICtrlRead($input_speed) $gui_msg = GUIGetMsg(1) Select Case $gui_msg[0] = $GUI_EVENT_CLOSE If $gui_msg[1] = $window_main Then ExitLoop ElseIf $gui_msg[1] = $window_help Then GUISetState(@SW_HIDE, $window_help) EndIf Case $gui_msg[0] = $button_help GUISetState(@SW_SHOW, $window_help) Case $gui_msg[0] = $button_speed_1 GUICtrlSetData($input_speed, "1") Case $gui_msg[0] = $button_speed_5 GUICtrlSetData($input_speed, "5") Case $gui_msg[0] = $button_speed_10 GUICtrlSetData($input_speed, "10") Case $gui_msg[0] = $button_speed_15 GUICtrlSetData($input_speed, "15") Case $gui_msg[0] = $button_speed_25 GUICtrlSetData($input_speed, "25") Case $gui_msg[0] = $button_speed_50 GUICtrlSetData($input_speed, "50") EndSelect Sleep(25) WEnd Func farm() ; Some (local) variables $current_x = $script_x $current_y = $script_y For $current_row = 1 To $script_size_rows Step 1 For $current_column = 1 To $script_size_columns Step 1 MouseClick("primary", $current_x, $current_y, 1, $script_speed) $current_x = $current_x + 25 $current_y = $current_y - 12 If $current_row = $script_size_rows / 2 Then If $current_column = $script_size_columns / 2 Then $current_x = $current_x + 25 $current_y = $current_y - 12 $current_column = $current_column + 1 EndIf EndIf If Not $script_running Then ExitLoop Next ; Reset to beginning of row $current_x = $current_x - (25 * $script_size_columns) $current_y = $current_y - (-12 * $script_size_columns) ; Advance to the next row $current_x = $current_x + 25 $current_y = $current_y + 12 If Not $script_running Then ExitLoop Next ; Stop running now stop_script() EndFunc ;------------- i realzied when i delete the first while statement both forms open--- im new to autoit--
FuryCell Posted October 13, 2009 Posted October 13, 2009 I see there is no case statement for $start. Also you should put the second GUI in a function so it can be called when start is pressed. HKTunes:Softpedia | GoogleCodeLyricToy:Softpedia | GoogleCodeRCTunes:Softpedia | GoogleCodeMichtaToolsProgrammer n. - An ingenious device that turns caffeine into code.
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