Full Tilt Timebank Clicker Tool (Stacked): Free
ill be working on that today although aero/off prob. wont help but we'll see...
maybe i can do something w/ the graphics card
maybe i can do something w/ the graphics card
Turning aero theme off removes flicker for me (W7) without changing process priority.
Can anyone test my fulltilt timebank clicker version for creating lags/flicker?
Code:
#SingleInstance, Force #NoEnv Settitlematchmode, 2 OnExit exitSub time_x:=0.9093 time_y:=0.7200 t1:=0xdedbde v:=25 once:=true loop { ifwinnotexist,FullTiltPoker ahk_class QWidget { Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel Process, Priority, %FTP%, High SetAffinity(FTP) } } else { Process, Exist, FullTiltPoker.exe Process, Priority, %FTP%, Normal sleep,10000 reload } if once { id:=WinExist("Logged In ahk_class QWidget","","Full Tilt") if id { t2:=PixelColorA(time_x,time_y,id) once:=false } } check(time_x,time_y) sleep,1000 } ;----------------------------------------------------------------------------------------------------- check(tx,ty) { global time_x,time_y,t1,t2,v winget,listft,list,Logged In ahk_class QWidget,,Full Tilt loop %listft% { id:=listft%A_index% t:=PixelColorA(time_x,time_y,id) if (CompareColors(t,t1,v)=false) & (CompareColors(t,t2,v)=false) { relFTClientPoint(id, tx, ty) DllCall("SetCapture","Uint",id) PostLeftDoubleClick(tx, ty, id, 0) DllCall("ReleaseCapture") } } } return ;----------------------------------------------------------------------------------------------------- relFTClientPoint(id, ByRef x, ByRef y) { SysGet, xbord, 32 SysGet, ybord, 33 SysGet, cap, 4 WinGetPos, , , w, h, ahk_id%id% w := w - (2*xbord) h := h - (2*ybord) - cap Transform, X, Floor, W*x Transform, Y, Floor, H*y } return ;----------------------------------------------------------------------------------------------------- PostLeftDoubleClick(x, y, table_id, activate=1) { ; ### Max1mums: Send the double left click, then the mouse-up messages, ; some windows can get activated on the down left click so we will use ; left doubleclick instead, don't use on objects which have any functions ; binded to doubleclick unless you want to make doubleclick on them ; NOTE: This is relative to the top left of the client area and NOT the top left of the ; window (ie: It *doesn't* include the title-bar like AHK's MouseClick does!!!). If activate WinActivate, ahk_id%table_id% PostMessage, 0x203 , 0, ((y<<16)^x), , ahk_id%table_id% ; without 0x001 as lparam which is Lbutton down PostMessage, 0x202 , 0, ((y<<16)^x), , ahk_id%table_id% } return ;----------------------------------------------------------------------------------------------------- PixelColorA(colxa,colya,id) { critical SysGet, xbord, 32 SysGet, ybord, 33 SysGet, cap, 4 ; Set up a DC hdc_frame := DllCall( "GetDC", UInt, id ) hdc_buffer := DllCall("gdi32.dll\CreateCompatibleDC", UInt, hdc_frame) WinGetPos, X, Y, W, H, ahk_id %id% hbm_buffer := DllCall("gdi32.dll\CreateCompatibleBitmap", UInt,hdc_frame, Int,w, Int,h) DllCall( "gdi32.dll\SelectObject", UInt,hdc_buffer, UInt,hbm_buffer) DllCall( "PrintWindow", "UInt" , id , "UInt" , hdc_buffer , "UInt" , 0 ) WinGetPos, X, Y, W, H, ahk_id %id% ;Dllcall("Invalidatergn", "uint", id, "uint",Dllcall("SetWindowRgn", "uint", id, "uint",DllCall("gdi32.dll", "uint", "setRectRgn", "uint", x, "uint", y, "uint", w, "uint", h), "uint", 1), "uint", 1) WinGet,ctrls,ControlList,ahk_id %id% Loop,Parse,ctrls,`n { class:=A_LoopField ControlGet,ctrlid,Hwnd,,%class%,ahk_id %id% ControlGet,visible,Visible,,,ahk_id %ctrlid% If visible=1 { ; ControlGetPos,ctrlx,ctrly,ctrlw,ctrlh,%class%,ahk_id %id% ; Dllcall("Invalidatergn", "uint", ctrlid, "uint",Dllcall("SetWindowRgn", "uint", ctrlid, "uint",DllCall("gdi32.dll", "uint", "setRectRgn", "uint", ctrlx, "uint", ctrly, "uint", ctrlw, "uint", ctrlh), "uint", 1), "uint", 1) ; WinSet, Redraw, , ahk_id%ctrlid% DllCall("RedrawWindow",uint,ctrlid,uint,0,uint,0,uint, 1|16|32|64|2048) } } ;WinSet, Redraw, , ahk_id%id% DllCall("RedrawWindow",uint,id,uint,0,uint,0,uint, 1|16|32|64|1024) w := w - (2*xbord) h := h - (2*ybord) - cap Transform, x, Floor, W*colxa + xbord Transform, y, Floor, H*colya + ybord + cap pix := DllCall("GetPixel", UInt, hdc_buffer, Int, x , Int, y) SetFormat, IntegerFast, hex pix += 0 ; (Sets Var which previously contained 11 to be 0xb) pix .= "" ; Necessary due to the "fast" mode. SetFormat, IntegerFast, d DllCall( "gdi32.dll\DeleteObject", "uint", hbm_buffer ) DllCall( "gdi32.dll\ReleaseDC" , "uint", hdc_frame ) DllCall( "gdi32.dll\DeleteDC" , "uint", hdc_frame ) DllCall( "gdi32.dll\DeleteDC" , "uint", hdc_buffer ) return pix } ;----------------------------------------------------------------------------------------------------- CompareColors(ByRef bgr1, ByRef bgr2, ByRef variation) { c1 := bgr1 & 0xff c2 := bgr2 & 0xff if (abs(c1 - c2) > variation) return false c1 := (bgr1 >> 8) & 0xff c2 := (bgr2 >> 8) & 0xff if (abs(c1 - c2) > variation) return false c1 := (bgr1 >> 16) & 0xff c2 := (bgr2 >> 16) & 0xff if (abs(c1 - c2) > variation) return false return true } ;----------------------------------------------------------------------------------------------------- SetAffinity(pid, cpu=1) { h := DllCall("OpenProcess", "UInt", 0x1F0FFF, "Int", false, "UInt", pid) DllCall("SetProcessAffinityMask", "UInt", h, "UInt", cpu) DllCall("CloseHandle", "UInt" h) return } ;----------------------------------------------------------------------------------------------------- exitSub: Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel Process, Priority, %FTP%, Normal SetAffinity(FTP) } exitApp ;-----------------------------------------------------------------------------------------------------
Does this work for cascaded tiles and a mix of pot limit and No limit full ring.
Should work for any FT table and any table position.
Added option to choose time delay for pressing Time button, added GUI.
Code:
#SingleInstance, Force #NoEnv Settitlematchmode, 2 OnExit exitSub StringTrimRight, thisahk, A_ScriptName, 4 SetWorkingDir %A_ScriptDir% Menu, Tray, NoStandard Menu, Tray, Add, Settings, menugui Menu, Tray, Add, Reload, reload Menu, Tray, Default, Settings Menu, Tray, Add, Exit, ExitSub boost:=false SysGet, xbord, 32 SysGet, ybord, 33 SysGet, cap, 4 time_x:=0.9093 time_y:=0.7200 t1:=0xdedbde v:=25 once:=true tablequeue= ddlist= Loop 14 ddlist:=ddlist . A_index . "|" gosub,getini if flicker1 { ifwinnotexist,FullTiltPoker ahk_class QWidget { Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel Process, Priority, %FTP%, High } } else { Process, Priority, FullTiltPoker.exe, Normal sleep,10000 reload } } else { Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel Process, Priority, %FTP%, Normal } } if flicker2 { Process, Exist, AutoHotkey.exe if (ErrorLevel) { Ahk := ErrorLevel ; SetAffinity(Ahk,0) SetAffinity(Ahk) } Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel ; SetAffinity(FTP,0) SetAffinity(FTP) } } ;;;;;;;;;;;;End of init;;;;;;;;;;;;;; settimer,clickwithdelay,100 loop { if once { id:=WinExist("Logged In ahk_class QWidget","","Full Tilt") if id { t2:=PixelColorA(time_x,time_y,id) once:=false } } check(time_x,time_y) sleep,500 } ;----------------------------------------------------------------------------------------------------- movetolist(winid,time) { global tablequeue listAdd(tablequeue, winid . "-" . time) } return ;----------------------------------------------------------------------------------------------------- removefromlist(winid) { global tablequeue Loop, Parse, tablequeue, `, { if InStr(A_loopfield,winid) listDelItem(tablequeue, A_Loopfield) } } return ;----------------------------------------------------------------------------------------------------- clickwithdelay: Loop, Parse, tablequeue, `, { interval:=interval1*1000 stringsplit,tab,A_loopfield,- if abs(tab2-A_TickCount)>interval { tx:=time_x ty:=time_y relFTClientPoint(tab1, tx, ty) DllCall("SetCapture","Uint",tab1) PostLeftDoubleClick(tx, ty, tab1, 0) DllCall("ReleaseCapture") listDelItem(tablequeue, A_Loopfield) } } return ;----------------------------------------------------------------------------------------------------- check(tx,ty) { global time_x,time_y,t1,t2,v,tablequeue winget,listft,list,Logged In ahk_class QWidget,,Full Tilt loop %listft% { id:=listft%A_index% t:=PixelColorA(time_x,time_y,id) if (CompareColors(t,t1,v)=false) & (CompareColors(t,t2,v)=false) { if !InStr(tablequeue,id) { time:=A_TickCount movetolist(id,time) } } else if InStr(tablequeue,id) removefromlist(id) } } return ;----------------------------------------------------------------------------------------------------- relFTClientPoint(id, ByRef x, ByRef y) { global xbord,ybord,cap WinGetPos, , , w, h, ahk_id%id% x:=floor(W-2*xbord)*x y:=floor(H-(2*ybord)-cap)*y } return ;----------------------------------------------------------------------------------------------------- PostLeftDoubleClick(x, y, table_id, activate=1) { ; ### Max1mums: Send the double left click, then the mouse-up messages, ; some windows can get activated on the down left click so we will use ; left doubleclick instead, don't use on objects which have any functions ; binded to doubleclick unless you want to make doubleclick on them ; NOTE: This is relative to the top left of the client area and NOT the top left of the ; window (ie: It *doesn't* include the title-bar like AHK's MouseClick does!!!). If activate WinActivate, ahk_id%table_id% PostMessage, 0x203 , 0, ((y<<16)^x), , ahk_id%table_id% ; without 0x001 as lparam which is Lbutton down PostMessage, 0x202 , 0, ((y<<16)^x), , ahk_id%table_id% } return ;----------------------------------------------------------------------------------------------------- PixelColorA(colxa,colya,id) { global boost,xbord,ybord,cap if boost critical,6 setwindelay, -1 hdc_frame := DllCall( "GetDC", "UInt", id ) hdc_buffer := DllCall("gdi32.dll\CreateCompatibleDC", "UInt", hdc_frame) WinGetPos,,,W,H,ahk_id %id% hbm_buffer := DllCall("gdi32.dll\CreateCompatibleBitmap", "UInt",hdc_frame, "Int",w, "Int",h) DllCall( "gdi32.dll\SelectObject", "UInt",hdc_buffer, "UInt",hbm_buffer) DllCall( "PrintWindow", "UInt" , id , "UInt" , hdc_buffer , "UInt" , 0 ) WinGet,ctrls,ControlList,ahk_id %id% Loop,Parse,ctrls,`n { class:=A_LoopField ControlGet,ctrlid,Hwnd,,%class%,ahk_id %id% ControlGet,visible,Visible,,,ahk_id %ctrlid% If visible=1 DllCall("RedrawWindow","UInt",ctrlid,"UInt",0,"UInt",0,"UInt", 1|16|32|64|2048) } DllCall("RedrawWindow","UInt",id,"UInt",0,"UInt",0,"UInt", 1|16|32|64|1024) x:=floor(((W-2*xbord)*colxa) + xbord) y:=floor(((H-(2*ybord)-cap)*colya) + ybord + cap) pix := DllCall("GetPixel", UInt, hdc_buffer, "Int", x, "Int", y) SetFormat, IntegerFast, hex pix += 0 pix .= "" SetFormat, IntegerFast, d DllCall( "gdi32.dll\DeleteObject", "Uint", hbm_buffer ) DllCall( "gdi32.dll\ReleaseDC", "Uint", hdc_frame ) DllCall( "gdi32.dll\DeleteDC", "Uint", hdc_frame ) DllCall( "gdi32.dll\DeleteDC", "Uint", hdc_buffer ) if boost { critical,off sleep,-1 } return pix } ;----------------------------------------------------------------------------------------------------- CompareColors(ByRef bgr1, ByRef bgr2, ByRef variation) { c1 := bgr1 & 0xff c2 := bgr2 & 0xff if (abs(c1 - c2) > variation) return false c1 := (bgr1 >> 8) & 0xff c2 := (bgr2 >> 8) & 0xff if (abs(c1 - c2) > variation) return false c1 := (bgr1 >> 16) & 0xff c2 := (bgr2 >> 16) & 0xff if (abs(c1 - c2) > variation) return false return true } ;----------------------------------------------------------------------------------------------------- SetAffinity(pid, cpu=1) { h := DllCall("OpenProcess", "UInt", 0x1F0FFF, "Int", false, "UInt", pid) DllCall("SetProcessAffinityMask", "UInt", h, "UInt", cpu) DllCall("CloseHandle", "UInt" h) return } ;----------------------------------------------------------------------------------------------------- listAdd( byRef list, item, del="," ) { list:=( list!="" ? ( list . del . item ) : item ) return list } ;----------------------------------------------------------------------------------------------------- listDelItem( byRef list, item, del=",") { ifEqual, item,, return list list:=del . list . del StringReplace, list, list, %item%%del% StringTrimLeft, list, list, 1 StringTrimRight, list, list, 1 return list } ;----------------------------------------------------------------------------------------------------- BuildGui: Gui, color, white Gui, font, cOlive ;Gui, add, tab, h340 w240, General|Advanced Settings Gui, add, tab, h340 w240, General Gui, add, Text, w200 y45 x15, Time delay for pressing Time button Gui, add, DropDownList, w50 y40 x190 vInterval1, %ddlist% Gui, add, text,cRed y105 x85, Use these options Gui, add, text,cRed y120 x50, if you experience flicker problem Gui, add, Checkbox, y140 x60 Checked%flicker1% Vflicker1 Gui, add, text, y155 x25,set FullTilt process Gui, add, text, y170 x25,priority to high Gui, add, Checkbox, y140 x180 Checked%flicker2% Vflicker2 Gui, add, text, y155 x125,set affinity to cpu1 only Gui, add, text, y170 x125,for FullTilt process Gui, add, text, y185 x125,(Dual-core/HT cpu) Gui, add, text, y215 x25,Turning aero theme (Vista/W7) might help Gui, add, text, y230 x25,if these settings don't work Gui, Add, Button, x75 y260 w55 h20 gSave,Submit Gui, Add, Button, x135 y260 w55 h20 gCancel,Cancel Gosub, GetIni Gui, show, w256, %thisahk% Return ;----------------------------------------------------------------------------------------------------- GetIni: IfNotExist, %thisahk%.ini gosub, CreateIni IniRead, Interval1, %thisahk%.ini, Settings, Interval1 StringReplace, ddlist, ddlist, %interval1%, %Interval1%| GuiControl, , Interval1, |%ddlist% StringReplace, ddlist, ddlist, %interval1%|, %Interval1% IniRead, flicker1, %thisahk%.ini, Settings, flicker1, 0 IniRead, flicker2, %thisahk%.ini, Settings, flicker2, 0 Return ;----------------------------------------------------------------------------------------------------- MakeIni: IniWrite, %Interval1%, %thisahk%.ini, Settings, Interval1 IniWrite, %flicker1%, %thisahk%.ini, Settings, flicker1 IniWrite, %flicker2%, %thisahk%.ini, Settings, flicker2 Return ;----------------------------------------------------------------------------------------------------- CreateIni: flicker1:=false flicker2:=false Interval1:=1 gosub, MakeIni return ;----------------------------------------------------------------------------------------------------- GuiClose: gosub, cancel return ;----------------------------------------------------------------------------------------------------- menuGui: gosub, getini gosub, buildgui Gui, Submit,nohide return ;----------------------------------------------------------------------------------------------------- reload: reload return ;----------------------------------------------------------------------------------------------------- Save: Gui, Submit FileDelete, %thisahk%.ini gosub, MakeIni Reload return ;----------------------------------------------------------------------------------------------------- Cancel: Gui, Destroy Return ;----------------------------------------------------------------------------------------------------- exitSub: if flicker { Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel Process, Priority, %FTP%, Normal SetAffinity(FTP) } } FileDelete, %thisahk%.ini gosub, makeini exitApp return ;-----------------------------------------------------------------------------------------------------
Well anyone, does it work fine?
I'm willing to try it out ... so the Time Bank Clicker is a separate app from the Poker Companion program? Do they work together just fine?
It's my own version, not a part of anything and it is absolutely free, just leave your opinion about script's work for me.
Added auto "I'm back" option, added hotkeys for quick register/unregister (join/unjoin waiting list for cash tables).
Code:
#SingleInstance, Force #NoEnv Settitlematchmode, 2 OnExit exitSub StringTrimRight, thisahk, A_ScriptName, 4 SetWorkingDir %A_ScriptDir% Menu, Tray, NoStandard Menu, Tray, Add, Settings, menugui Menu, Tray, Add Menu, Tray, Add, Reload, reload Menu, Tray, Default, Settings Menu, Tray, Add Menu, Tray, Add, Exit, ExitSub boost:=false SysGet, xbord, 32 SysGet, ybord, 33 SysGet, cap, 4 time_x:=0.9093 time_y:=0.7200 time_x1:=0.8808 t1:=0xdedbde v:=25 back_x:=0.6534 back_y:=0.9862 back_x1:=0.5859 back1:=0x181818 v1:=10 once:=true tablequeue= ddlist= Loop 14 ddlist:=ddlist . A_index . "|" gosub,getini ifwinnotexist,FullTiltPoker ahk_class QWidget { if flicker1 { winwait,Logged In ahk_class QWidget Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel Process, Priority, %FTP%, High } } else { Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel Process, Priority, %FTP%, Normal } } if flicker2 { winwait,Logged In ahk_class QWidget Process, Exist, AutoHotkey.exe if (ErrorLevel) { Ahk := ErrorLevel ; SetAffinity(Ahk,0) SetAffinity(Ahk) } Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel ; SetAffinity(FTP,0) SetAffinity(FTP) } } } ;;;;;;;;;;;;End of init;;;;;;;;;;;;;; settimer,clickwithdelay,100 loop { if once Colorinit() check() sleep,500 } ;----------------------------------------------------------------------------------------------------- Colorinit() { local id,t,col id:=WinExist("Logged In ahk_class QWidget","","Full Tilt") if id { t:=PixelColorA(time_x,time_y,time_x1,time_y,id) stringsplit,col,t,- if (CompareColors(col1,col2,v1)=false) t2:=col2 else t2:=col1 t:=PixelColorA(back_x,back_y,back_x1,back_y,id) stringsplit,col,t,- if (CompareColors(col1,col2,v1)=false) back2:=col2 else back2:=col1 once:=false } } return ;----------------------------------------------------------------------------------------------------- check() { local listft,id,t,col winget,listft,list,Logged In ahk_class QWidget,,Full Tilt loop %listft% { id:=listft%A_index% t:=PixelColorA(time_x,time_y,back_x,back_y,id) stringsplit,col,t,- if (CompareColors(col1,t1,v)=false) & (CompareColors(col1,t2,v)=false) { if !InStr(tablequeue,id) movetolist(id,A_TickCount) } else if InStr(tablequeue,id) removefromlist(id) if dealmein if (CompareColors(col2,back1,v1)=false) & (CompareColors(col2,back2,v1)=false) PostclickFT(back_x,back_y,id,0) } } return ;----------------------------------------------------------------------------------------------------- relFTClientPoint(id, ByRef x, ByRef y, client=1) { global xbord,ybord,cap WinGetPos,,,w,h,ahk_id%id% w-=2*xbord h-=(2*ybord)+cap x:=floor(W*x) y:=floor(H*y) if !client { x+=xbord y+=ybord+cap } } return ;----------------------------------------------------------------------------------------------------- PostLeftDoubleClick(x, y, table_id, activate=1) { ; ### Max1mums: Send the double left click, then the mouse-up messages, ; some windows can get activated on the down left click so we will use ; left doubleclick instead, don't use on objects which have any functions ; binded to doubleclick unless you want to make doubleclick on them ; NOTE: This is relative to the top left of the client area and NOT the top left of the ; window (ie: It *doesn't* include the title-bar like AHK's MouseClick does!!!). If activate WinActivate, ahk_id%table_id% PostMessage, 0x203 , 0, ((y<<16)^x), , ahk_id%table_id% ; without 0x001 as lparam which is Lbutton down PostMessage, 0x202 , 0, ((y<<16)^x), , ahk_id%table_id% PostMessage, 0x202 , 0, ((y<<16)^x), , ahk_id%table_id% } return ;----------------------------------------------------------------------------------------------------- PostclickFT(x,y,winid,activate=1) { relFTClientPoint(winid, x, y) DllCall("SetCapture","Uint",winid) PostLeftDoubleClick(x, y, winid, activate) DllCall("ReleaseCapture") } return ;----------------------------------------------------------------------------------------------------- clickwithdelay: Loop, Parse, tablequeue, `, { interval:=interval1*1000 stringsplit,tab,A_loopfield,- if abs(tab2-A_TickCount)>interval { PostclickFT(time_x,time_y,tab1,0) listDelItem(tablequeue, A_Loopfield) } } return ;----------------------------------------------------------------------------------------------------- PixelColorA(colxa,colya,back_x,back_y,id) { global boost,xbord,ybord,cap if boost critical,6 setwindelay, -1 hdc_frame := DllCall( "GetDC", "UInt", id ) hdc_buffer := DllCall("gdi32.dll\CreateCompatibleDC", "UInt", hdc_frame) WinGetPos,,,W,H,ahk_id %id% hbm_buffer := DllCall("gdi32.dll\CreateCompatibleBitmap", "UInt",hdc_frame, "Int",w, "Int",h) DllCall( "gdi32.dll\SelectObject", "UInt",hdc_buffer, "UInt",hbm_buffer) DllCall( "PrintWindow", "UInt" , id , "UInt" , hdc_buffer , "UInt" , 0 ) WinGet,ctrls,ControlList,ahk_id %id% Loop,Parse,ctrls,`n { class:=A_LoopField ControlGet,ctrlid,Hwnd,,%class%,ahk_id %id% ControlGet,visible,Visible,,,ahk_id %ctrlid% If visible=1 DllCall("RedrawWindow","UInt",ctrlid,"UInt",0,"UInt",0,"UInt", 1|16|32|64|2048) } DllCall("RedrawWindow","UInt",id,"UInt",0,"UInt",0,"UInt", 1|16|32|64|1024) x:=floor(((W-2*xbord)*colxa) + xbord) y:=floor(((H-(2*ybord)-cap)*colya) + ybord + cap) pix := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) x:=floor(((W-2*xbord)*back_x) + xbord) y:=floor(((H-(2*ybord)-cap)*back_y) + ybord + cap) pixback:=DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) SetFormat, IntegerFast, hex pix += 0 pix .= "" pixback += 0 pixback .= "" SetFormat, IntegerFast, d pix.="-" . pixback DllCall( "gdi32.dll\DeleteObject", "Uint", hbm_buffer ) DllCall( "gdi32.dll\ReleaseDC", "Uint", hdc_frame ) DllCall( "gdi32.dll\DeleteDC", "Uint", hdc_frame ) DllCall( "gdi32.dll\DeleteDC", "Uint", hdc_buffer ) if boost { critical,off sleep,-1 } return pix } ;----------------------------------------------------------------------------------------------------- CompareColors(ByRef bgr1, ByRef bgr2, ByRef variation) { c1 := bgr1 & 0xff c2 := bgr2 & 0xff if (abs(c1 - c2) > variation) return false c1 := (bgr1 >> 8) & 0xff c2 := (bgr2 >> 8) & 0xff if (abs(c1 - c2) > variation) return false c1 := (bgr1 >> 16) & 0xff c2 := (bgr2 >> 16) & 0xff if (abs(c1 - c2) > variation) return false return true } ;----------------------------------------------------------------------------------------------------- listAdd( byRef list, item, del="," ) { list:=( list!="" ? ( list . del . item ) : item ) return list } ;----------------------------------------------------------------------------------------------------- listDelItem( byRef list, item, del=",") { ifEqual, item,, return list list:=del . list . del StringReplace, list, list, %item%%del% StringTrimLeft, list, list, 1 StringTrimRight, list, list, 1 return list } ;----------------------------------------------------------------------------------------------------- movetolist(winid,time) { global tablequeue listAdd(tablequeue, winid . "-" . time) } return ;----------------------------------------------------------------------------------------------------- removefromlist(winid) { global tablequeue Loop, Parse, tablequeue, `, { if InStr(A_loopfield,winid) listDelItem(tablequeue, A_Loopfield) } } return ;----------------------------------------------------------------------------------------------------- SetAffinity(pid, cpu=1) { h := DllCall("OpenProcess", "UInt", 0x1F0FFF, "Int", false, "UInt", pid) DllCall("SetProcessAffinityMask", "UInt", h, "UInt", cpu) DllCall("CloseHandle", "UInt" h) return } ;----------------------------------------------------------------------------------------------------- register: ifwinactive, ahk_class QWidget { winget,id,id, A wingettitle,title,ahk_id%id% if instr(title,"Full Tilt Poker -") { reg_x :=0.9080 reg_y :=0.7357 PostclickFT(reg_x,reg_y,id,0) winwait,Tournament Buy-in ahk_class QWidget,,4 if !errorlevel { sleep,50 winget,id,id,Tournament Buy-in ahk_class QWidget wingetpos,,,,h,ahk_id%id% reg_x :=0.3608 if h<240 reg_y :=0.4876 else reg_y :=0.4193 PostclickFT(reg_x,reg_y,id,0) ifwinExist,Full Tilt Poker - Tournament ahk_class QWidget winclose,Full Tilt Poker - Tournament ahk_class QWidget } } } return ;----------------------------------------------------------------------------------------------------- unregister: ifwinactive, ahk_class QWidget { winget,id,id, A wingettitle,title,ahk_id%id% if instr(title,"Full Tilt Poker -") { reg_x:=0.9080 reg_y:=0.6709 PostclickFT(reg_x,reg_y,id,0) winwait,Full Tilt Poker - Tournament ahk_class QWidget,,4 if not errorlevel { winget,id,id, Full Tilt Poker - Tournament ahk_class QWidget reg_x :=0.8876 reg_y :=0.0776 PostclickFT(reg_x,reg_y,id,0) winwait,Tournament Buy-in ahk_class QWidget,,0.5 if not errorlevel { winclose,Tournament Buy-in ahk_class QWidget ifwinexist, Full Tilt Poker - Tournament ahk_class QWidget winclose, Full Tilt Poker - Tournament ahk_class QWidget } else { winwait, Full Tilt Poker ahk_class QWidget,,4 if not errorlevel winclose,Full Tilt Poker ahk_class QWidget ifwinexist, Full Tilt Poker - Tournament ahk_class QWidget winclose, Full Tilt Poker - Tournament ahk_class QWidget } } } } return ;----------------------------------------------------------------------------------------------------- BuildGui: Gui, color, white Gui, font, cOlive ;Gui, add, tab, h340 w240, General|Advanced Settings Gui, add, tab, h340 w240, General Gui, add, Text, w200 y45 x15, Time delay for pressing Time button Gui, add, DropDownList, w50 y40 x190 vInterval1, %ddlist% Gui, add, text, y65 x15, Click "Deal me in" automatically Gui, add, Checkbox, y65 x170 Checked%dealmein% Vdealmein Gui, Add, Text, x15 y85 ,Register (join/unjoin waiting list for cash tables) Gui, Add, Edit, x15 y100 w100 h20 vregister, %register% Gui, Add, Text, x15 y120 ,Unregister Gui, Add, Edit, x15 y135 w100 h20 vunregister, %unregister% Gui, add, text,cRed y165 x85, Use these options Gui, add, text,cRed y180 x50, if you experience flicker problem Gui, add, Checkbox, y200 x60 Checked%flicker1% Vflicker1 Gui, add, text, y215 x25,set FullTilt process Gui, add, text, y230 x25,priority to high Gui, add, Checkbox, y200 x180 Checked%flicker2% Vflicker2 Gui, add, text, y215 x125,set affinity to cpu1 only Gui, add, text, y230 x125,for FullTilt process Gui, add, text, y245 x125,(Dual-core/HT cpu) Gui, add, text, y275 x25,Turning aero theme off (Vista/W7) might help Gui, add, text, y290 x25,if these settings don't work Gui, Add, Button, x75 y315 w55 h20 gSave,Submit Gui, Add, Button, x135 y315 w55 h20 gCancel,Cancel Gosub, GetIni Gui, show, w256, %thisahk% Return ;----------------------------------------------------------------------------------------------------- GetIni: IfNotExist, %thisahk%.ini gosub, CreateIni IniRead, Interval1, %thisahk%.ini, Settings, Interval1 StringReplace, ddlist, ddlist, %interval1%, %Interval1%| GuiControl, , Interval1, |%ddlist% StringReplace, ddlist, ddlist, %interval1%|, %Interval1% IniRead, flicker1, %thisahk%.ini, Settings, flicker1, 0 IniRead, flicker2, %thisahk%.ini, Settings, flicker2, 0 IniRead, dealmein, %thisahk%.ini, Settings, dealmein, 0 IniRead, register, %thisahk%.ini, Settings, register,%A_Space% IniRead, unregister, %thisahk%.ini, Settings, unregister,%A_Space% if register Hotkey, %register%,register if unregister Hotkey, %unregister%,unregister Return ;----------------------------------------------------------------------------------------------------- MakeIni: IniWrite, %Interval1%, %thisahk%.ini, Settings, Interval1 IniWrite, %flicker1%, %thisahk%.ini, Settings, flicker1 IniWrite, %flicker2%, %thisahk%.ini, Settings, flicker2 IniWrite, %dealmein%, %thisahk%.ini, Settings, dealmein if register IniWrite, %register%, %thisahk%.ini, Settings, register if unregister IniWrite, %unregister%, %thisahk%.ini, Settings, unregister Return ;----------------------------------------------------------------------------------------------------- CreateIni: flicker1:=false flicker2:=false Interval1:=1 dealmein:=1 register=^r unregister=^u gosub, MakeIni return ;----------------------------------------------------------------------------------------------------- GuiClose: gosub, cancel return ;----------------------------------------------------------------------------------------------------- menuGui: gosub, getini gosub, buildgui Gui, Submit,nohide return ;----------------------------------------------------------------------------------------------------- reload: reload return ;----------------------------------------------------------------------------------------------------- Save: Gui, Submit FileDelete, %thisahk%.ini gosub, MakeIni Reload return ;----------------------------------------------------------------------------------------------------- Cancel: Gui, Destroy Return ;----------------------------------------------------------------------------------------------------- exitSub: if flicker1 { Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel Process, Priority, %FTP%, Normal ; SetAffinity(FTP) } } FileDelete, %thisahk%.ini gosub, makeini exitApp return ;-----------------------------------------------------------------------------------------------------
Added toggle "i'm back" hotkey, added hotkeys for join/unjoin waiting list on all open tables.
Code:
#SingleInstance, Force #NoEnv Settitlematchmode, 2 OnExit exitSub StringTrimRight, thisahk, A_ScriptName, 4 SetWorkingDir %A_ScriptDir% Menu, Tray, NoStandard Menu, Tray, Add, Settings, menugui Menu, Tray, Add Menu, Tray, Add, Reload, reload Menu, Tray, Default, Settings Menu, Tray, Add Menu, Tray, Add, Exit, ExitSub boost:=false SysGet, xbord, 32 SysGet, ybord, 33 SysGet, cap, 4 time_x:=0.9093 time_y:=0.7200 time_x1:=0.8808 t1:=0xdedbde v:=25 back_x:=0.6534 back_y:=0.9862 back_x1:=0.5859 back1:=0x181818 v1:=5 join_x:=0.6158 join_y:=0.9292 join_x1:=0.8261 join:=0xffffff v2:=5 once:=true tablequeue= ddlist= Loop 14 ddlist:=ddlist . A_index . "|" gosub,getini ifwinnotexist,FullTiltPoker ahk_class QWidget { if flicker1 { winwait,Logged In ahk_class QWidget Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel Process, Priority, %FTP%, High } } else { Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel Process, Priority, %FTP%, Normal } } if flicker2 { winwait,Logged In ahk_class QWidget Process, Exist, AutoHotkey.exe if (ErrorLevel) { Ahk := ErrorLevel ; SetAffinity(Ahk,0) SetAffinity(Ahk) } Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel ; SetAffinity(FTP,0) SetAffinity(FTP) } } } ;;;;;;;;;;;;End of init;;;;;;;;;;;;;; settimer,clickwithdelay,100 loop { if once Colorinit() check() sleep,500 } ;----------------------------------------------------------------------------------------------------- Colorinit() { local id,t,col id:=WinExist("Logged In ahk_class QWidget","","Full Tilt") if id { once:=false t:=PixelColorA(time_x,time_y,time_x1,time_y,join_x,id) stringsplit,col,t,- if (CompareColors(col1,col2,v1)=false) { t2:=col2 once:=true } else t2:=col1 t:=PixelColorA(back_x,back_y,back_x1,back_y,join_x,id) stringsplit,col,t,- if (CompareColors(col1,col2,v1)=false) { back2:=col2 once:=true } else back2:=col1 } } return ;----------------------------------------------------------------------------------------------------- check() { local listft,id,t,col winget,listft,list,Logged In ahk_class QWidget,,Full Tilt loop %listft% { id:=listft%A_index% t:=PixelColorA(time_x,time_y,back_x,back_y,join_x,id) stringsplit,col,t,- if (CompareColors(col1,t1,v)=false) & (CompareColors(col1,t2,v)=false) { if !InStr(tablequeue,id) movetolist(id,A_TickCount) } else if InStr(tablequeue,id) removefromlist(id) if dealmein if (CompareColors(col2,back1,v1)=false) & (CompareColors(col2,back2,v1)=false) & (CompareColors(col3,back2,v)=true) PostclickFT(back_x,back_y,id,0) } } return ;----------------------------------------------------------------------------------------------------- relFTClientPoint(id, ByRef x, ByRef y, client=1) { global xbord,ybord,cap WinGetPos,,,w,h,ahk_id%id% w-=2*xbord h-=(2*ybord)+cap x:=floor(W*x) y:=floor(H*y) if !client { x+=xbord y+=ybord+cap } } return ;----------------------------------------------------------------------------------------------------- PostLeftDoubleClick(x, y, table_id, activate=1) { ; ### Max1mums: Send the double left click, then the mouse-up messages, ; some windows can get activated on the down left click so we will use ; left doubleclick instead, don't use on objects which have any functions ; binded to doubleclick unless you want to make doubleclick on them ; NOTE: This is relative to the top left of the client area and NOT the top left of the ; window (ie: It *doesn't* include the title-bar like AHK's MouseClick does!!!). If activate WinActivate, ahk_id%table_id% critical,6 PostMessage, 0x203 , 0, ((y<<16)^x), , ahk_id%table_id% ; without 0x001 as lparam which is Lbutton down PostMessage, 0x202 , 0, ((y<<16)^x), , ahk_id%table_id% PostMessage, 0x202 , 0, ((y<<16)^x), , ahk_id%table_id% critical,off sleep,-1 } return ;----------------------------------------------------------------------------------------------------- PostclickFT(x,y,winid,activate=1,client=1) { relFTClientPoint(winid, x, y,client) DllCall("SetCapture","Uint",winid) PostLeftDoubleClick(x, y, winid, activate) DllCall("ReleaseCapture") } return ;----------------------------------------------------------------------------------------------------- clickwithdelay: Loop, Parse, tablequeue, `, { interval:=interval1*1000 stringsplit,tab,A_loopfield,- if abs(tab2-A_TickCount)>interval { PostclickFT(time_x,time_y,tab1,0) listDelItem(tablequeue, A_Loopfield) } } return ;----------------------------------------------------------------------------------------------------- PixelColorA(colx,coly,backx,backy,joinx,id,region=0) { global boost,xbord,ybord,cap if boost critical,6 setwindelay, -1 hdc_frame := DllCall( "GetDC", "UInt", id ) hdc_buffer := DllCall("gdi32.dll\CreateCompatibleDC", "UInt", hdc_frame) WinGetPos,,,W,H,ahk_id %id% hbm_buffer := DllCall("gdi32.dll\CreateCompatibleBitmap", "UInt",hdc_frame, "Int",w, "Int",h) DllCall( "gdi32.dll\SelectObject", "UInt",hdc_buffer, "UInt",hbm_buffer) DllCall( "PrintWindow", "UInt" , id , "UInt" , hdc_buffer , "UInt" , 0 ) DllCall("RedrawWindow","UInt",id,"UInt",0,"UInt",0,"UInt", 1|16|32|64|1024) x:=floor(((W-2*xbord)*colx) + xbord) y:=floor(((H-(2*ybord)-cap)*coly) + ybord + cap) pix1= pix1 := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) x:=floor(((W-2*xbord)*backx) + xbord) y:=floor(((H-(2*ybord)-cap)*backy) + ybord + cap) pix2:=DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) x:=floor(((W-2*xbord)*joinx) + xbord) pix3:=DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) SetFormat, IntegerFast, hex pix1 += 0 pix1 .= "" pix2 += 0 pix2 .= "" pix3 += 0 pix3 .= "" SetFormat, IntegerFast, d pix1.="-" . pix2 . "-" . pix3 if region { x:=floor(((W-2*xbord)*joinx) + xbord) y:=floor(((H-(2*ybord)-cap)*backy) + ybord + cap) pix1.="*" loop 70 { delta:=A_index loop 15 { delta1:=A_index p := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x+delta , "Int", y+delta1) pix1.=p . "-" } } } DllCall( "gdi32.dll\DeleteObject", "Uint", hbm_buffer ) DllCall( "gdi32.dll\ReleaseDC", "Uint", hdc_frame ) DllCall( "gdi32.dll\DeleteDC", "Uint", hdc_frame ) DllCall( "gdi32.dll\DeleteDC", "Uint", hdc_buffer ) if boost { critical,off sleep,-1 } return pix1 } ;----------------------------------------------------------------------------------------------------- CompareColors(ByRef bgr1, ByRef bgr2, ByRef variation) { c1 := bgr1 & 0xff c2 := bgr2 & 0xff if (abs(c1 - c2) > variation) return false c1 := (bgr1 >> 8) & 0xff c2 := (bgr2 >> 8) & 0xff if (abs(c1 - c2) > variation) return false c1 := (bgr1 >> 16) & 0xff c2 := (bgr2 >> 16) & 0xff if (abs(c1 - c2) > variation) return false return true } ;----------------------------------------------------------------------------------------------------- listAdd( byRef list, item, del="," ) { list:=( list!="" ? ( list . del . item ) : item ) return list } ;----------------------------------------------------------------------------------------------------- listDelItem( byRef list, item, del=",") { ifEqual, item,, return list list:=del . list . del StringReplace, list, list, %item%%del% StringTrimLeft, list, list, 1 StringTrimRight, list, list, 1 return list } ;----------------------------------------------------------------------------------------------------- movetolist(winid,time) { global tablequeue listAdd(tablequeue, winid . "-" . time) } return ;----------------------------------------------------------------------------------------------------- removefromlist(winid) { global tablequeue Loop, Parse, tablequeue, `, { if InStr(A_loopfield,winid) listDelItem(tablequeue, A_Loopfield) } } return ;----------------------------------------------------------------------------------------------------- SetAffinity(pid, cpu=1) { h := DllCall("OpenProcess", "UInt", 0x1F0FFF, "Int", false, "UInt", pid) DllCall("SetProcessAffinityMask", "UInt", h, "UInt", cpu) DllCall("CloseHandle", "UInt" h) return } ;----------------------------------------------------------------------------------------------------- register: ifwinactive, ahk_class QWidget { winget,id,id, A wingettitle,title,ahk_id%id% if instr(title,"Full Tilt Poker -") { reg_x :=0.9080 reg_y :=0.7357 PostclickFT(reg_x,reg_y,id,0) winwait,Tournament Buy-in ahk_class QWidget,,4 if !errorlevel { sleep,50 winget,id,id,Tournament Buy-in ahk_class QWidget wingetpos,,,,h,ahk_id%id% reg_x :=0.3608 if h<240 reg_y :=0.4876 else reg_y :=0.4193 PostclickFT(reg_x,reg_y,id,0) ifwinExist,Full Tilt Poker - Tournament ahk_class QWidget winclose,Full Tilt Poker - Tournament ahk_class QWidget } } } return ;----------------------------------------------------------------------------------------------------- unregister: ifwinactive, ahk_class QWidget { winget,id,id, A wingettitle,title,ahk_id%id% if instr(title,"Full Tilt Poker -") { reg_x:=0.9080 reg_y:=0.6709 PostclickFT(reg_x,reg_y,id,0) winwait,Full Tilt Poker - Tournament ahk_class QWidget,,4 if not errorlevel { winget,id,id, Full Tilt Poker - Tournament ahk_class QWidget reg_x :=0.8876 reg_y :=0.0776 PostclickFT(reg_x,reg_y,id,0) winwait,Tournament Buy-in ahk_class QWidget,,0.5 if not errorlevel { winclose,Tournament Buy-in ahk_class QWidget ifwinexist, Full Tilt Poker - Tournament ahk_class QWidget winclose, Full Tilt Poker - Tournament ahk_class QWidget } else { winwait, Full Tilt Poker ahk_class QWidget,,4 if not errorlevel winclose,Full Tilt Poker ahk_class QWidget ifwinexist, Full Tilt Poker - Tournament ahk_class QWidget winclose, Full Tilt Poker - Tournament ahk_class QWidget } } } } return ;----------------------------------------------------------------------------------------------------- Toggledealmein: If (dealmein=true) { dealmein:=false T=Off } else { dealmein:=true T=On } Gui, 2:Add, Text,, Auto Deal me in: %T% Gui, 2:+ToolWindow Gui, 2:Show, w150 h20 Sleep, 1000 Gui, 2:Destroy return ;----------------------------------------------------------------------------------------------------- Joinwaitlist: winget,listft,list,Logged In ahk_class QWidget,,Full Tilt loop %listft% { id:=listft%A_index% t:=PixelColorA(join_x,back_y,back_x,join_y,join_x1,id,1) stringsplit,st,t,* stringsplit,col,st1,- if (CompareColors(col1,back1,v1)=false) & (CompareColors(col1,back2,v1)=false) if !instr(st2,"16777215") & !instr(st2,"67284200") & !instr(st2,"111670350") & !instr(st2,"148766710") PostclickFT(back_x,back_y,id,0) } return ;----------------------------------------------------------------------------------------------------- Unjoinwaitlist: winget,listft,list,Logged In ahk_class QWidget,,Full Tilt loop %listft% { id:=listft%A_index% t:=PixelColorA(join_x,back_y,join_x1,join_y,join_x1,id,1) stringsplit,st,t,* stringsplit,col,st1,- if (CompareColors(col1,back1,v1)=false) & (CompareColors(col1,back2,v1)=false) if instr(st2,"16777215") or instr(st2,"67284200") or instr(st2,"111670350") or instr(st2,"148766710") PostclickFT(back_x,back_y,id,0) } return ;----------------------------------------------------------------------------------------------------- BuildGui: Gui, color, white Gui, font, cOlive Gui, add, tab, h340 w240, General|Advanced Settings Gui, Tab, General Gui, add, Text, w200 y45 x15, Time delay for pressing Time button Gui, add, DropDownList, w50 y40 x190 vInterval1, %ddlist% Gui, add, text, y65 x15, Click "Deal me in" automatically Gui, add, Checkbox, y65 x170 Checked%dealmein% Vdealmein Gui, Add, Text, x15 y85 w120 h20 , Toggle Deal me in Gui, Add, Edit, x180 y82 w50 h20 vToggledealmein, %Toggledealmein% Gui, add, text,cRed y165 x85, Use these options Gui, add, text,cRed y180 x50, if you experience flicker problem Gui, add, Checkbox, y200 x60 Checked%flicker1% Vflicker1 Gui, add, text, y215 x25,set FullTilt process Gui, add, text, y230 x25,priority to high Gui, add, Checkbox, y200 x180 Checked%flicker2% Vflicker2 Gui, add, text, y215 x125,set affinity to cpu1 only Gui, add, text, y230 x125,for FullTilt process Gui, add, text, y245 x125,(Dual-core/HT cpu) Gui, add, text, y275 x25,Turning aero theme off (Vista/W7) might help Gui, add, text, y290 x25,if these settings don't work Gui, Add, Button, x75 y315 w55 h20 gSave,Submit Gui, Add, Button, x135 y315 w55 h20 gCancel,Cancel Gui, Tab, Advanced Settings Gui, Add, Text, x15 y35 ,Register Gui, Add, Edit, x180 y32 w50 h20 vregister, %register% Gui, Add, Text, x15 y52 ,(join/unjoin waiting list for cash tables) Gui, Add, Text, x15 y75 ,Unregister Gui, Add, Edit, x180 y72 w50 h20 vunregister, %unregister% Gui, Add, Text, x15 y100 ,Join waiting list on all tables Gui, Add, Edit, x180 y97 w50 h20 vjoinwaitlist, %joinwaitlist% Gui, Add, Text, x15 y125 ,Unjoin waiting list on all tables Gui, Add, Edit, x180 y122 w50 h20 vunjoinwaitlist, %unjoinwaitlist% Gui, Add, Button, x75 y315 w55 h20 gSave,Submit Gui, Add, Button, x135 y315 w55 h20 gCancel,Cancel Gosub, GetIni Gui, show, w256, %thisahk% Return ;----------------------------------------------------------------------------------------------------- GetIni: IfNotExist, %thisahk%.ini gosub, CreateIni IniRead, Interval1, %thisahk%.ini, Settings, Interval1 StringReplace, ddlist, ddlist, %interval1%, %Interval1%| GuiControl, , Interval1, |%ddlist% StringReplace, ddlist, ddlist, %interval1%|, %Interval1% IniRead, flicker1, %thisahk%.ini, Settings, flicker1, 0 IniRead, flicker2, %thisahk%.ini, Settings, flicker2, 0 IniRead, dealmein, %thisahk%.ini, Settings, dealmein, 0 IniRead, register, %thisahk%.ini, Settings, register,%A_Space% IniRead, unregister, %thisahk%.ini, Settings, unregister,%A_Space% IniRead, joinwaitlist, %thisahk%.ini, Settings, joinwaitlist,%A_Space% IniRead, Unjoinwaitlist, %thisahk%.ini, Settings, Unjoinwaitlist,%A_Space% if register Hotkey, %register%,register if unregister Hotkey, %unregister%,unregister if joinwaitlist Hotkey, %joinwaitlist%,joinwaitlist if Unjoinwaitlist Hotkey, %Unjoinwaitlist%,Unjoinwaitlist IniRead, Toggledealmein, %thisahk%.ini, Settings, Toggledealmein,%A_Space% If Toggledealmein { HotKey, IfWinActive, ahk_class QWidget Hotkey, %Toggledealmein%, Toggledealmein } Return ;----------------------------------------------------------------------------------------------------- MakeIni: IniWrite, %Interval1%, %thisahk%.ini, Settings, Interval1 IniWrite, %flicker1%, %thisahk%.ini, Settings, flicker1 IniWrite, %flicker2%, %thisahk%.ini, Settings, flicker2 IniWrite, %dealmein%, %thisahk%.ini, Settings, dealmein if register IniWrite, %register%, %thisahk%.ini, Settings, register if unregister IniWrite, %unregister%, %thisahk%.ini, Settings, unregister if joinwaitlist IniWrite, %joinwaitlist%, %thisahk%.ini, Settings, joinwaitlist if Unjoinwaitlist IniWrite, %Unjoinwaitlist%, %thisahk%.ini, Settings, Unjoinwaitlist if Toggledealmein IniWrite, %Toggledealmein%, %thisahk%.ini, Settings, Toggledealmein Return ;----------------------------------------------------------------------------------------------------- CreateIni: flicker1:=false flicker2:=false Interval1:=1 dealmein:=1 register=^r unregister=^u gosub, MakeIni return ;----------------------------------------------------------------------------------------------------- GuiClose: gosub, cancel return ;----------------------------------------------------------------------------------------------------- menuGui: gosub, getini gosub, buildgui Gui, Submit,nohide return ;----------------------------------------------------------------------------------------------------- reload: reload return ;----------------------------------------------------------------------------------------------------- Save: Gui, Submit FileDelete, %thisahk%.ini gosub, MakeIni Reload return ;----------------------------------------------------------------------------------------------------- Cancel: Gui, Destroy Return ;----------------------------------------------------------------------------------------------------- exitSub: if flicker1 { Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel Process, Priority, %FTP%, Normal ; SetAffinity(FTP) } } FileDelete, %thisahk%.ini gosub, makeini exitApp return ;-----------------------------------------------------------------------------------------------------
I tried it out, Max...
Quadcore Q6600, Vista x64, Aero theme.
It worked well (just the timer script), but I noticed that my timebank sometimes just never showed up. I tried running this w/ TableNinja and turning off the timebank in TN and just used yours. Not sure if that was caused by something else or the script (timebank just never showing up). Also, definitely had the flicker as well, although it was removed w/ the two checkboxes.
Will try to test it out some more.
Quadcore Q6600, Vista x64, Aero theme.
It worked well (just the timer script), but I noticed that my timebank sometimes just never showed up. I tried running this w/ TableNinja and turning off the timebank in TN and just used yours. Not sure if that was caused by something else or the script (timebank just never showing up). Also, definitely had the flicker as well, although it was removed w/ the two checkboxes.
Will try to test it out some more.
Don't think that could be caused by script or TN.
Thanks for the script it works nicely. There is a flicker sometimes but it doesn't bother me.
One issue I'm experiencing is when I join a new table, take a seat, it will choose to "play now" which means it will post a dead blind. I'd rather wait for the BB.
One issue I'm experiencing is when I join a new table, take a seat, it will choose to "play now" which means it will post a dead blind. I'd rather wait for the BB.
Script doesn't turn that option on or off for you.
Strange I must have messed up somewhere then. Will give it another try and see what happens.
edit: could you please explain all 6 settings in the INI file?
[Settings]
Interval1=1
flicker1=0
flicker2=0
dealmein=1
register=^r
unregister=^u
edit: could you please explain all 6 settings in the INI file?
[Settings]
Interval1=1
flicker1=0
flicker2=0
dealmein=1
register=^r
unregister=^u
These settings are being generated by script, you can't change them. But i can explain: Interval1 is time delay before pressing Time button, flicker1 sets fulltilt.exe priority to high if set to 1, flicker2 sets fulltilt.exe affinity to cpu1 only if set to 1, dealmein will automatically deal you in if set to 1, register and unregister are hotkeys for quick registration; there could also be joinwaitlist,Unjoinwaitlist,Toggledealmein in latest version, i guess there is no need to explain what they do.
I have doublechecked now and the problem I described DOES happens when the AHK is running (and only then).
I recorded it and I can post a video if you want, but I don't think this is needed. The problem is exactly as stated.
I recorded it and I can post a video if you want, but I don't think this is needed. The problem is exactly as stated.
Are you under Vista/W7? I've never run into that problem, will try to check it out though.
Max1mums, can this work on microgamming prima tables, if not can iu do a AHK for click the timer bank in this room?
I can find some guys to donate for this work
I can find some guys to donate for this work
What do you need exactly, timebank clicker and what else?
btw here is Prima betpot from me http://forumserver.twoplustwo.com/45...l#post15800499
btw here is Prima betpot from me http://forumserver.twoplustwo.com/45...l#post15800499
for me only the timebank clicker, i come from a latinamerican forum and i know some people who plays in prima and they have the same petition can iu send me a PM for the exactly details to the donation
Enable PMing first then ) Let me look if it will work with prima soft first.
Maximums i cant enable pm, if iu want send me a email with the details
thanks4giving, still can't recreate your problem, i believe script can press that button for you though, PM me your video so that i could see exact situation.
Feedback is used for internal purposes. LEARN MORE