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:Sithid/Macros/AutoIT/Slate"
From A Tale in the Desert
< User:Sithid | Macros | AutoIT
Jump to navigationJump to search| (One intermediate revision by the same user not shown) | |||
| Line 11: | Line 11: | ||
Author: Sithid | Author: Sithid | ||
Date: 07.12.08 | Date: 07.12.08 | ||
| − | Version: 0. | + | Version: 0.5 |
Script Function: | Script Function: | ||
| Line 67: | Line 67: | ||
PickSlate() | PickSlate() | ||
| − | Move( "RIGHT" ) | + | Move( "RIGHT" ) |
| + | |||
| + | PickSlate() | ||
| + | Move( "RIGHT" ) | ||
PickSlate() | PickSlate() | ||
Move( "UP" ) | Move( "UP" ) | ||
| + | PickSlate() | ||
| + | Move( "LEFT" ) | ||
| + | |||
PickSlate() | PickSlate() | ||
Move( "LEFT" ) | Move( "LEFT" ) | ||
| Line 85: | Line 91: | ||
Func Move( $key ) | Func Move( $key ) | ||
Send( "{" & $key & " down}" ) | Send( "{" & $key & " down}" ) | ||
| − | Sleep( | + | Sleep( 200 ) |
Send( "{" & $key & " up}" ) | Send( "{" & $key & " up}" ) | ||
| − | Sleep( | + | Sleep( 1000 ) |
EndFunc | EndFunc | ||
| Line 140: | Line 146: | ||
Exit | Exit | ||
EndFunc | EndFunc | ||
| − | <pre> | + | </pre> |
| − | |||
| − | |||
Latest revision as of 17:42, 9 January 2009
My basic slate macro, should work without any configuration. After running, switch to atitd, unpause, and follow messagebox instructions.
Note the macro is a bit buggy( delays are off, movement glitches and sometimes skips slate ), I havnt had time to fine tune it but it should work semi ok for you.
The Macro
#cs --------------------------------------------------------------------------------------
AutoIt Version 3.2.12.1
Author: Sithid
Date: 07.12.08
Version: 0.5
Script Function:
Slate Collection - Automagical
#ce --------------------------------------------------------------------------------------
#include <GUIConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Opt( "MustDeclareVars", 1 )
Global $Paused = False
Global $AtitdHandle = 0
Global $SlateCount = 0
Global $SlateHex = "FFFFFF"
Global $SlateLoc[2]
Global $SlateSet = False
Global $ReadyCheck = False
HotKeySet( "{ESC}", "Terminate" )
HotKeySet( "{PAUSE}", "TogglePause" )
HotKeySet( "{F1}", "SetSlate" )
HotKeySet( "{F2}", "SetReady" )
WinWaitActive( "eGenesis Client" );
$AtitdHandle = WinGetHandle( "eGenesis Client" )
TogglePause()
While 1
MsgBox( 0x0, "Slate Icon Position", "Please hover over your slate icon and press F1." )
While Not $SlateSet
Sleep( 100 )
WEnd
MsgBox( 0x0, "Ready Check", "Please move to the position you wish to start from and press F2." )
While Not $ReadyCheck
Sleep( 100 )
WEnd
Main()
WEnd
Func Main()
Do
PickSlate()
Move( "RIGHT" )
PickSlate()
Move( "RIGHT" )
PickSlate()
Move( "RIGHT" )
PickSlate()
Move( "UP" )
PickSlate()
Move( "LEFT" )
PickSlate()
Move( "LEFT" )
PickSlate()
Move( "LEFT" )
PickSlate()
Move( "UP" )
Until 1 = 2
EndFunc
Func Move( $key )
Send( "{" & $key & " down}" )
Sleep( 200 )
Send( "{" & $key & " up}" )
Sleep( 1000 )
EndFunc
Func PickSlate()
If CheckSlate( $SlateLoc, $SlateHex ) Then
Do
MouseClick( "right", $SlateLoc[0], $SlateLoc[1], 1, 5 )
MouseClick( "left", $SlateLoc[0], $SlateLoc[1], 1, 5 )
$SlateCount += 1
Sleep( 3000 )
Until Not CheckSlate( $SlateLoc, $SlateHex )
EndIf
EndFunc
Func CheckSlate( $pos, $hex )
Local $col = Hex( PixelGetColor( $pos[0], $pos[1] ), 6 )
If $col = $hex Then
Return True
EndIf
Return False
EndFunc
Func SetSlate()
If $Paused Then
Return
EndIf
$SlateLoc = MouseGetPos()
$SlateHex = Hex( PixelGetColor( $SlateLoc[0], $SlateLoc[1], $AtitdHandle ), 6 )
$SlateSet = True
EndFunc
Func SetReady()
If $Paused Then
Return
EndIf
$ReadyCheck = True
EndFunc
Func TogglePause()
$Paused = Not $Paused
While $Paused
Sleep(100 )
WEnd
EndFunc
Func Terminate()
Exit
EndFunc