The Wiki for Tale 4 is in read-only mode and is available for archival and reference purposes only. Please visit the current Tale 11 Wiki in the meantime.
If you have any issues with this Wiki, please post in #wiki-editing on Discord or contact Brad in-game.
Difference between revisions of "User:Cegaiel/Macros/Flax"
From A Tale in the Desert
< User:Cegaiel | Macros
Jump to navigationJump to search (New page: <pre> #SingleInstance force ^r::reload ; Reload the script when you make changes reload return !s:: suspend toggle return !q:: ExitApp return ^!w:: InitGui() return ButtonFLAX: Gui, S...) |
|||
| Line 1: | Line 1: | ||
<pre> | <pre> | ||
#SingleInstance force | #SingleInstance force | ||
| + | |||
| + | ;Ctrl+Alt+W to start script | ||
| + | ;Plant a 3,4,5 x 3,4,5 bed, wait about 10 seconds, then move and plant | ||
| + | ;another set of beds. Soons as it gets done, run back to your first set to weed. | ||
| + | ;By the time you weed your first set, its time for the 2nd. | ||
| + | |||
^r::reload | ^r::reload | ||
Latest revision as of 02:30, 25 April 2010
#SingleInstance force
;Ctrl+Alt+W to start script
;Plant a 3,4,5 x 3,4,5 bed, wait about 10 seconds, then move and plant
;another set of beds. Soons as it gets done, run back to your first set to weed.
;By the time you weed your first set, its time for the 2nd.
^r::reload
; Reload the script when you make changes
reload
return
!s::
suspend toggle
return
!q::
ExitApp
return
^!w::
InitGui()
return
ButtonFLAX:
Gui, Submit
; Validate input
if (dimension > 5) {
MsgBox "Make sure your number of objects setting is maxed in video options"
}
Gui, Destroy
Flax()
return
InitGui()
{
;global cycles
global weedings
global dimension
Gui, Add, Text,, Plot dimensions (NxN):
Gui, Add, DropDownList, vdimension Choose1a, 3|4|5
Gui, Add, Text,, Screen set and locked from previous flaxing?`nNo = Automatically zoom in to correct position.`nYes = Skip this step.
Gui, Add, DropDownList, vLocked Choose1, Yes|No
Gui, Add, Button, Default, FLAX
Gui, Show
}
Flax()
{
global Xcenter
global Ycenter
global width
global cycles
global dimension
global Locked
if (Locked == "No")
{
message := "Please close your friends list and minimize chat and stat tabs in order to ensure proper macroage.`n"
message .= "Also disable camera moves very fast and camera moves unreasonably fast.`n`n"
message .= "Pin the plant menu at the very top left corner of the screen`n`n"
message .= "IN CASE OF EMERGENCY: HIT ALT-Q"
MsgBox,,, %message%, 5
}
; Wait for the window to become active, then get the window stats
WinWait, eGenesis Client,
IfWinNotActive, eGenesis Client, , WinActivate, eGenesis Client,
WinWaitActive, eGenesis Client,
WinGetActiveStats, win_Title, Xmax, Ymax, win_Xpos, win_Ypos
if (Locked == "No")
{
Send {F5}{F8}{F8}
MouseMove, 0,0
Sleep 5000
MouseMove, 0, 0
Sleep 5000
}
Xcenter := Xmax//2 - 3
Ycenter := Ymax//2 + 16
MouseMove, Xcenter, Ycenter, 0
if (Locked == "No")
{
Loop 9 {
MouseClick, WheelDown
Sleep 1000
}
}
;Flax beds are ~55 coords wide at this zoom level
width := 55
Loop 1
{
Sleep 500
i = 0
Loop {
i += 1
Plant_Row("right", dimension)
Move("down")
if (i >= dimension)
break
i += 1
Plant_Row("left", dimension)
Move("down")
if (i >= dimension)
break
}
Sleep 1000
Move("left", half_dim)
Move("up", half_dim)
Locked = "Yes"
; end of cycle loop
}
; end of function
}
Move(direction, count = 1) {
global width
global Xcenter
global Ycenter
distance := width * count
time := 650 * count
MouseMove, Xcenter, Ycenter, 0
if (direction == "right") {
MouseClick,, distance, 0,, 0,, R
} else if (direction == "left") {
MouseClick,, -(distance), 0,, 0,, R
} else if (direction == "down") {
MouseClick,, 0, distance,, 0,, R
} else if (direction == "up") {
MouseClick,, 0, -(distance),, 0,, R
}
Sleep %time%
}
Plant_Row(direction, num)
{
;Look at 40,40 to see if the pinup menu is there. If you pinup menu is not at 40,40, then adjust...
PixelSearch, Px, Py, 40, 40, 40, 40, 0xF2EBD3, 50, Fast|RGB
if ErrorLevel = 0
{
MouseClick,, 40, 40,, 0
if (num <= 0) {
return
}
num -= 1
Loop %num% {
Move(direction)
MouseClick,, 40, 40,, 0
}
} else {
Msgbox, Plant menu, pinned in upper left corner, not found!`n`nExiting script. Restart script with Ctrl+Alt+W after you pin up the menu!
Exit
}
return
}
^p::Pause