|
|
| (15 intermediate revisions by the same user not shown) |
| Line 1: |
Line 1: |
| − | First test.
| + | == Charcoal == |
| | + | Tested with 1 to 15, should do fine with 20+ |
| | | | |
| − | <pre>
| + | - Open and pin the cc oven windows on screen. |
| − | ;Ctrl+R to reload
| |
| − | ;Ctrl+P to pause
| |
| | | | |
| − | IfWinExist eGenesis Client
| + | - Start the macro |
| − | {
| |
| − | WinGet, GameWinHandle, ID, eGenesis Client
| |
| − | } else {
| |
| − | Msgbox, eGenesis client not running, exiting...
| |
| − | Exit
| |
| − | }
| |
| | | | |
| − | WinActivate, eGenesis Client
| + | - CTRL+R will reload the macro (use if you change the window positions or number of windows) |
| − | WinGetActiveStats, win_Title, Xmax, Ymax, win_Xpos, win_Ypos
| |
| − | StartXGUI := Xmax+win_Xpos-255
| |
| − | StartYGUI := win_Ypos+35
| |
| − | Gui, +AlwaysOnTop +ToolWindow -Border +Background
| |
| − | Gui, Add, Text,,Type in how many rows and columns `nof kettles you will be working with:
| |
| − | Gui, Add, Text, x10 y40, Rows:
| |
| − | Gui, Add, Edit,xp+35 yp-4 vnumRows, 4
| |
| − | Gui, Add, Text,xp+20 y40, Columns:
| |
| − | Gui, Add, Edit,xp+45 yp-4 vnumColumns, 4
| |
| − | Gui, Add, Button, x10 y70 gNext, Next »
| |
| − | Gui, Add, Button, x200 y5 gClose, Close
| |
| − | ; Generated using SmartGUI Creator 4.0
| |
| − | Gui, Show, X%StartXGUI% Y%StartYGUI% w240 h100, New GUI Window
| |
| − | Return
| |
| | | | |
| − | Next:
| + | - CTRL+S will start all visible ovens |
| − | Gui, submit
| |
| − | Gui, Destroy
| |
| − | ;Get Top Left
| |
| − | Gui, +AlwaysOnTop +ToolWindow -Border +Background
| |
| − | Gui, Add, Text,,Using F8F8 camera view make `nsure you can see all kettles.
| |
| − | Gui, Add, Text,,Position your mouse over `nthe topleft kettle and press the F2 key.
| |
| − | Gui, Add, Button, x200 y5 gClose, Close
| |
| − | Gui, Show, X%StartXGUI% Y%StartYGUI% w240 h100, New GUI Window
| |
| | | | |
| − | loop
| + | - CTRL+P will pause/resume the macro (use if you need to move the mouse) |
| − | {
| |
| − | WinActivate eGenesis Client
| |
| − | KeyWait, F2, D
| |
| − | KeyWait, F2
| |
| − | MouseGetPos, FirstX, FirstY, WinHandle
| |
| − | if (WinHandle = GameWinHandle)
| |
| − | {
| |
| − | Gosub, GotTopLeft
| |
| − | }
| |
| − | }
| |
| − | return
| |
| | | | |
| − | GotTopLeft:
| + | [http://www.atitd.org/wiki/tale5/images/b/b0/TakCharcoal.zip CC Ovens] |
| − | Gui, Destroy
| |
| − | ;Get Bottom Right
| |
| − | Gui, +AlwaysOnTop +ToolWindow -Border +Background
| |
| − | Gui, Add, Text,,Position your mouse over `nthe bottom right kettle `nand press the F2 key.
| |
| − | Gui, Add, Button, x200 y5 gClose, Close
| |
| − | Gui, Show, X%StartXGUI% Y%StartYGUI% w240 h100, New GUI Window
| |
| | | | |
| − | loop
| + | == Kettles == |
| − | {
| + | -F8F8 view |
| − | WinActivate eGenesis Client
| |
| − | KeyWait, F2, D
| |
| − | KeyWait, F2
| |
| − | MouseGetPos, LastX, LastY, WinHandle
| |
| − | if (WinHandle = GameWinHandle)
| |
| − | {
| |
| − | Gosub, GotBottomRight
| |
| − | }
| |
| − | }
| |
| − | return
| |
| | | | |
| − | GotBottomRight:
| + | -Zoom in such a way that you can see all kettles, make sure the top and bottom rows are not too close to top/bottom of screen. |
| − | Gui, Destroy
| |
| − | ;Open Windows
| |
| − | Gui, +AlwaysOnTop +ToolWindow -Border +Background
| |
| − | Gui, Add, Text,vTimeLeft,Leave your mouse alone, `nopening windows in 5 seconds.
| |
| − | Gui, Add, Button, x200 y5 gClose, Close
| |
| − | Gui, Show, X%StartXGUI% Y%StartYGUI% w240 h100, New GUI Window
| |
| | | | |
| − | SmallPause := 5
| + | -If the macro fails to arrange the windows restart with CTRL+R |
| − | Loop, %SmallPause%
| |
| − | {
| |
| − | GuiControl, Text, TimeLeft, Leave your mouse alone, `nopening windows in %SmallPause% seconds.
| |
| − | SmallPause --
| |
| − | Sleep 1000
| |
| − | }
| |
| | | | |
| − | GuiControl, Text, TimeLeft, Opening Windows Now.
| + | -Macro won't take over kettles that are already burning wood or have mats in them. |
| − | WinActivate eGenesis Client
| |
| | | | |
| − | topNotFound := true
| + | [http://www.atitd.org/wiki/tale5/images/f/f2/TakKettles.zip Kettles] |
| − | Loop, %numColumns%
| |
| − | {
| |
| − | curColumn := A_Index
| |
| − | openPosX := FirstX+(A_Index-1)*floor((LastX-FirstX)/(numColumns-1))
| |
| − | Loop, %numRows%
| |
| − | {
| |
| − | openPosY := FirstY+(A_Index-1)*floor((LastY-FirstY)/(numRows-1))
| |
| − | MouseClick,Right,openPosX,openPosY
| |
| − | sleep, 200
| |
| − | startSeaX := openPosX+5
| |
| − | finishSeaY := openPosY-200
| |
| − | If topNotFound
| |
| − | {
| |
| − | Loop, 20
| |
| − | {
| |
| − | curStartB := openPosY-(10*A_Index)
| |
| − | curStartT := openPosY-(10*A_Index)-10
| |
| − | PixelSearch,OutX,OutY,%startSeaX%,%curStartT%,%startSeaX%,%curStartB%,0x000000,Fast
| |
| − | if ErrorLevel < 1
| |
| − | {
| |
| − | break
| |
| − | }
| |
| − | }
| |
| − | PixelSearch,OutX,OutY,%startSeaX%,%curStartB%,%startSeaX%,%curStartT%,0x000000
| |
| − | curStartB := openPosY-OutY+3
| |
| − | curStartT := openPosY-OutY-3
| |
| − | topNotFound := false
| |
| − | }
| |
| − | startSeaYB := openPosY-curStartB
| |
| − | startSeaYT := openPosY-curStartT
| |
| − | PixelSearch,OutX,OutY,%startSeaX%,%startSeaYT%,%startSeaX%,%startSeaYB%,0x000000,50
| |
| − | arrX := 18+20*(numColumns)*(curColumn-1)+20*(A_Index-1)
| |
| − | MouseClick,Left,%OutX%,%OutY%,,,D
| |
| − | sleep 100
| |
| − | MouseMove,%arrX%,50
| |
| − | sleep 300
| |
| − | MouseClick,Left,,,,,U
| |
| − | sleep, 100
| |
| − | }
| |
| − | }
| |
| − | | |
| − | Close:
| |
| − | ExitApp
| |
| − | | |
| − | ^r::reload
| |
| − | ^p::Pause
| |
| − | </pre>
| |