FTCash - free script for FullTilt cash players.
jds1201, what's wrong exactly? Using "ssnl" adjustment and 100%pot will always give you 4xbb preflop open raise, mix=3xbb, trny=2.5xbb, changing pot percentage will change raise amount, formula for all other cases is
Code:
pot := ((pot + call)* (frac)) + call
FTCash v1.12
or from this link http://depositfiles.com/files/n0j4h4mz3
- Added alternative highlighter option (highligh all tables with action on hero)
Code:
; #### FTCash #### ; AHK version: 1.0.48.05 ; date: June 26,2010 version := "1.12" ; author: Max1mums (max1mums@overcards.com) #SingleInstance, Force #NoEnv #Persistent Settitlematchmode, 2 OnExit exitSub StringTrimRight, thisahk, A_ScriptName, 4 SetWorkingDir %A_ScriptDir% debug:=0 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, Suspend, Suspend Menu, Tray, Add, Pause, TogglePause Menu, Tray, Add Menu, Tray, Add, Edit, Edit Menu, Tray, Add Menu, Tray, Add, Exit, ExitSub OnMessage(0x112,"WM_SYSCOMMAND") WM_SYSCOMMAND(wParam) { if (A_Gui && wParam = 0xF020) ; SC_MINIMIZE { Gui, destroy return 0 } } boost:=false ; Border of the "Highlighter" border_color := "ff0000" border_coloralt := "00FF00" border_size := 5 trans := 255 SetBatchLines,1ms SetWinDelay,-1 SendMode Input SysGet, xbord, 32 SysGet, ybord, 33 SysGet, cap, 4 SysGet, border, 32 SysGet, caption, 4 ddlist= Loop 14 ddlist:=ddlist . A_index . "|" ddlist1= ddlist1.="ssnl" . "|" ddlist1.="trny" . "|" ddlist1.="mix" . "|" ddlist1.="----" . "|" gosub,getini 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) } Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel SetAffinity(FTP) } } Init() DllCall("dwmapi\DwmIsCompositionEnabled","int*",DwmIsEnabled) if !DwmIsEnabled { Gui, 11: Show, w1 h1 x1 y1, PokerWindow WinGet,PokerWindowID, id, PokerWindow hdc_frame := DllCall( "GetDC", "UInt",PokerWindowID) hdc_buffer := DllCall("gdi32.dll\CreateCompatibleDC","UInt",hdc_frame) hbm_buffer := DllCall("gdi32.dll\CreateCompatibleBitmap", "UInt",hdc_frame, "Int",A_screenwidth,"Int",A_screenheight) DllCall( "gdi32.dll\SelectObject", "UInt",hdc_buffer, "UInt",hbm_buffer) Gui, 11: Show,hide, w1 h1 x1 y1, PokerWindow } ;;;;;;;;;;;;End of init;;;;;;;;;;;;;; if Timebank settimer,clickwithdelay,100 if autopot OR Highlight OR MoveMouse settimer,act,45 if Highlight settimer,Highlighter,83 if dealmein settimer,dealin,1939 if Timebank settimer,clicktime,639 if MoveMouse settimer,MouseMove,119 settimer,BetPot,67 if activatetableundermouse settimer,activateundermouse,133 if Buyin settimer,autobuy,835 if limit or autotakeseat settimer,NewTable,267 if autotakeseat settimer,clickseatwithdelay,93 if closeOKwindow or leavetable settimer,closepopups,148 if TakeSeat settimer,TakeSeatFromWaitlist,77 return ;----------------------------------------------------------------------------------------------------- FoldFT(id) { PostclickFT(0.6218,0.9241,id) PostclickFT(0.6834,0.9358,id) PostclickFT(0.6834,0.9358,id) } return quickFoldFT(id) { PostclickFT(0.6424,0.9678,id) PostclickFT(0.6424,0.9678,id) } return CallFT(id) { PostclickFT(0.8032,0.9358,id) PostclickFT(0.8032,0.9358,id) } return RaiseFT(id) { PostclickFT(0.9356,0.9358,id) PostclickFT(0.9356,0.9358,id) } return Fold2anyFT(id) { global Racetrack WinGetTitle, title, ahk_id%id% StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 StringReplace,bb,bb,$,,1 if Racetrack { if bb<4 { click_x:=0.4325 click_y:=0.8937 } else { click_x:=0.4193 click_y:=0.9169 } } else { if bb<4 { click_x:=0.0088 click_y:=0.7472 } else { click_x:=0.0088 click_y:=0.7566 } } PostclickFT(click_x,click_y,id) } return ;----------------------------------------------------------------------------------------------------- fold: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=QWidget { FoldFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return quickfold: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=QWidget { quickFoldFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return call: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=QWidget { callFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return raise: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=QWidget { raiseFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return fold2any: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=QWidget { fold2anyFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return allin(id) { global Instant PostClickFT(0.9715,0.7632,id) if Instant raiseFT(id) } return ;----------------------------------------------------------------------------------------------------- pot1: sendmode event If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id wingetclass,class,ahk_id%id% if class=QWidget { if Round1 Roundsb:="smallblind" else Roundsb:=0.2 Pot(id,Pot1Pre A_space Pot1Flop A_space Pot1Turn A_space Pot1River, Roundsb, Open1, fix1) if autobet raiseFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return pot2: sendmode event If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id wingetclass,class,ahk_id%id% if class=QWidget { if Round2 Roundsb:="smallblind" else Roundsb:=0.2 Pot(id,Pot2Pre A_space Pot2Flop A_space Pot2Turn A_space Pot2River, Roundsb, Open2, fix2) if autobet raiseFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return pot3: sendmode event If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id wingetclass,class,ahk_id%id% if class=QWidget { if Round3 Roundsb:="smallblind" else Roundsb:=0.2 Pot(id,Pot3Pre A_space Pot3Flop A_space Pot3Turn A_space Pot3River, Roundsb, Open3, fix3) if autobet raiseFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return alt1: sendmode event If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id wingetclass,class,ahk_id%id% if class=QWidget { wingettitle,title,ahk_id%id% if !instr(title,"Full Tilt Poker -") { if sb1 sb:="sb" else sb:="" AlterAmount(id,"up", incr1, sb) } else { suspend,on send {%A_ThisHotkey%} suspend,off } } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return alt2: sendmode event If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id wingetclass,class,ahk_id%id% if class=QWidget { wingettitle,title,ahk_id%id% if !instr(title,"Full Tilt Poker -") { if sb2 sb:="sb" else sb:="" AlterAmount(id,"down", incr2, sb) } else { suspend,on send {%A_ThisHotkey%} suspend,off } } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return alt3: sendmode event If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id wingetclass,class,ahk_id%id% if class=QWidget { if !instr(title,"Full Tilt Poker -") { if sb3 sb:="sb" else sb:="" AlterAmount(id,"up", incr3, sb) } else { suspend,on send {%A_ThisHotkey%} suspend,off } } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return alt4: sendmode event If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id wingetclass,class,ahk_id%id% if class=QWidget { if !instr(title,"Full Tilt Poker -") { if sb4 sb:="sb" else sb:="" AlterAmount(id,"down", incr4, sb) } else { suspend,on send {%A_ThisHotkey%} suspend,off } } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return allin: Sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=QWidget { allin(ID) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return ;----------------------------------------------------------------------------------------------------- findtabletoact: Sendmode event WinGet, Id, ID, A wingetclass,class,ahk_id%id% if class!=QWidget { MousegetPos,,,ID wingetclass,class,ahk_id%id% } if class=QWidget findtabletoact() else { suspend,on send {%A_ThisHotkey%} suspend,off } return findtabletoact() { global DwmIsEnabled foldx:=0.6534 foldy:=0.9662 foldx1:=0.5965 foldy1:=0.9662 back_x:=0.6534 back_y:=0.9862 back_x1:=0.5965 back_y1:=0.9862 v:=20 winget,id,id,A if !DwmIsEnabled { fold:=PixelColor(foldx,foldy,id,0) bacgr:=PixelColor(foldx1,foldy1,id,0) deal:=PixelColor(back_x,back_y,id,0) deal1:=PixelColor(back_x1,back_y1,id,0) } else { col:=PixelColorA(foldx,foldy,foldx1,foldy1,0,id) stringsplit,col,col,- fold:=col1 bacgr:=col2 sleep,1 col:=PixelColorA(back_x,back_y,back_x1,back_y1,0,id) stringsplit,col,col,- deal:=col1 deal1:=col2 } if !((comparecolors(fold,bacgr,v)=0) & (comparecolors(deal,deal1,v)=1)) { winget,list,list,Logged In ahk_class QWidget,,Full Tilt loop %list% { id:=list%A_index% col:=PixelColorA(foldx,foldy,foldx1,foldy1,0,id) stringsplit,col,col,- fold:=col1 bacgr:=col2 sleep,1 col:=PixelColorA(back_x,back_y,back_x1,back_y1,0,id) stringsplit,col,col,- deal:=col1 deal1:=col2 if ((comparecolors(fold,bacgr,v)=0) & (comparecolors(deal,deal1,v)=1)) { winactivate,ahk_id%id% break } } } } return ;----------------------------------------------------------------------------------------------------- Init() { local list,id winget,list,list,Logged In ahk_class QWidget,,Full Tilt loop %list% { id:=list%A_index% seated%id%:=1 } } return ;----------------------------------------------------------------------------------------------------- BetPot: GroupAdd, FullTiltTables,Logged In ahk_class QWidget,,,Full Tilt if autopot { isbetboxnew() } return ;----------------------------------------------------------------------------------------------------- IsBetBoxNew() { global oldid,PotDefPre,PotDefFlop,PotDefTurn,PotDefRiver,RoundDef,OpenDef,FixDef,DwmIsEnabled winget winid,id,A wingetclass,class,A wingettitle,title,A if class=QWidget if instr(title, "Logged In") & instr(title, "/") { betboxX:=0.9687 betboxY:=0.8000 betboxY1:=0.8400 if !DwmIsEnabled { bet1:=PixelColor(betboxX,betboxY,winid,0) bet2:=PixelColor(betboxX,betboxY1,winid,0) } else { bet:=PixelColorA(betboxX,betboxY,betboxX,betboxY1,0,winid) stringsplit,bet,bet,- } if (winid<>oldid) { if bet1=0xffffff ;& (bet2!=0xffffff) { if bet2!=0xffffff { oldid:=winid if RoundDef Roundsb:="smallblind" else Roundsb:=0.2 sleep,15 Pot(winid,PotDefPre A_space PotDefFlop A_space PotDefTurn A_space PotDefRiver, Roundsb, OpenDef, FixDef) } } else oldid= } else { if bet1!=0xffffff oldid= } } else oldid= } return ;----------------------------------------------------------------------------------------------------- act: act() return act() { winget,list,list, / ahk_class QWidget,,Full Tilt wingetclass,class,A wingettitle,title,A ifwinnotactive,ahk_id%list1% { if class=QWidget if instr(title, "Logged In") if instr(title, "/") winactivate,ahk_id%list1% } } return ;----------------------------------------------------------------------------------------------------- activateundermouse: activatetableundermouse() return activatetableundermouse() { MousegetPos,,,WinID WinGetClass, class, ahk_id %WinID% WinGetTitle, title, ahk_id %WinID% if (class="QWidget") winactivate, ahk_id %WinID% } return ;----------------------------------------------------------------------------------------------------- ActivateBottomWindow: GroupActivate, FullTiltTables return ;----------------------------------------------------------------------------------------------------- SitOutNextAll: settimer,dealin,off WinGet, list, List,Logged In ahk_class QWidget,,Full Tilt Loop, %list% { Z:=list%A_Index% WinGetTitle, title, ahk_id%Z% StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 StringReplace,bb,bb,$,,1 if Racetrack { if bb<4 { sitx:=0.4263 sity:=0.9264 } else { sitx:=0.4125 sity:=0.9345 } } else { if bb<4 { sitx:=0.0031 sity:=0.7770 } else { sitx:=0.0031 sity:=0.7857 } } click_x:=sitx+0.0070 click_y:=sity+0.0070 WinGetPos,,, W, H, ahk_id %Z% if w>1000 Sittingout:=PixelColorA(0,0,0,sity,sitx,Z,1,15,15) else Sittingout:=PixelColorA(0,0,0,sity,sitx,Z,1,10,10) if !(instr(Sittingout,"-0-")) & !(instr(Sittingout,"1710618")) ; & !(instr(Sittingout,"16777215")) { PostClickFT(click_x, click_y, Z, 0) } } return ;----------------------------------------------------------------------------------------------------- RemoveSitout: if dealmein settimer,dealin,1639 WinGet, list, List,Logged In ahk_class QWidget,,Full Tilt Loop, %list% { Z:=list%A_Index% WinGetTitle, title, ahk_id%Z% StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 StringReplace,bb,bb,$,,1 if Racetrack { if bb<4 { sitx:=0.4263 sity:=0.9264 } else { sitx:=0.4125 sity:=0.9345 } } else { if bb<4 { sitx:=0.0031 sity:=0.7770 } else { sitx:=0.0031 sity:=0.7857 } } click_x:=sitx+0.0070 click_y:=sity+0.0070 WinGetPos,,, W, H, ahk_id %Z% if w>1000 Sittingout:=PixelColorA(0,0,0,sity,sitx,Z,1,15,15) else Sittingout:=PixelColorA(0,0,0,sity,sitx,Z,1,10,10) ; FileAppend, %Sittingout%`n`n, test.txt if (instr(Sittingout,"-0-")) || (instr(Sittingout,"1710618")) ; & !(instr(Sittingout,"16777215")) { PostClickFT(click_x, click_y, Z, 0) } } return ;----------------------------------------------------------------------------------------------------- uncheckpost: WinGet, list, List,Logged In ahk_class QWidget,,Full Tilt Loop, %list% { Z:=list%A_Index% WinGetTitle, title, ahk_id%Z% StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 StringReplace,bb,bb,$,,1 if Racetrack { if bb<4 { sitx:=0.4279 sity:=0.9744 } else { sitx:=0.4123 sity:=0.9753 } } else { sitx:=0.0042 sity:=0.8246 } click_x:=sitx+0.0070 click_y:=sity+0.0070 WinGetPos,,, W, H, ahk_id %Z% if w>1000 Sittingout:=PixelColorA(0,0,0,sity,sitx,Z,1,15,15) else if w<600 Sittingout:=PixelColorA(0,0,0,sity,sitx,Z,1,5,5) else Sittingout:=PixelColorA(0,0,0,sity,sitx,Z,1,10,10) if (instr(Sittingout,"-0-")) || (instr(Sittingout,"1710618")) ; & !(instr(Sittingout,"16777215")) { PostClickFT(click_x, click_y, Z, 0) } } return ;----------------------------------------------------------------------------------------------------- Layout1: ifwinactive,Logged In ahk_class QWidget,,Full Tilt WinGet, WinId, ID, A else MousegetPos,,,WinID wingetclass,class,ahk_id %WinID% wingettitle,title,ahk_id %WinID% if class=QWidget if !instr(title,"Full Tilt") { CX:=0.8261 CY:=0.0155 wingetpos,x1,y1,w,h,ahk_id%winid% coordmode,mouse,screen mousegetpos,x,y coordmode,mouse,relative DllCall("SetCursorPos", int, x1+w+10, int, y1+h+10) PostclickFT(cx,cy,winid,1) sleep 100 critical,6 send {Tab 7} sleep,25 Send {Enter} critical,off sleep,-1 DllCall("SetCursorPos", int, x, int, y) } return ;----------------------------------------------------------------------------------------------------- Layout2: ifwinactive,Logged In ahk_class QWidget,,Full Tilt WinGet, WinId, ID, A else MousegetPos,,,WinID wingetclass,class,ahk_id %WinID% wingettitle,title,ahk_id %WinID% if class=QWidget if !instr(title,"Full Tilt") { CX:=0.8261 CY:=0.0155 wingetpos,x1,y1,w,h,ahk_id%winid% coordmode,mouse,screen mousegetpos,x,y coordmode,mouse,relative DllCall("SetCursorPos", int, x1+w+10, int, y1+h+10) PostclickFT(cx,cy,winid,1) sleep 100 critical,6 send {Tab 8} sleep,25 Send {Enter} critical,off sleep,-1 DllCall("SetCursorPos", int, x, int, y) } return ;----------------------------------------------------------------------------------------------------- Layout3: ifwinactive,Logged In ahk_class QWidget,,Full Tilt WinGet, WinId, ID, A else MousegetPos,,,WinID wingetclass,class,ahk_id %WinID% wingettitle,title,ahk_id %WinID% if class=QWidget if !instr(title,"Full Tilt") { CX:=0.8261 CY:=0.0155 wingetpos,x1,y1,w,h,ahk_id%winid% coordmode,mouse,screen mousegetpos,x,y coordmode,mouse,relative DllCall("SetCursorPos", int, x1+w+10, int, y1+h+10) PostclickFT(cx,cy,winid,1) sleep 100 critical,6 send {Tab 9} sleep,25 Send {Enter} critical,off sleep,-1 DllCall("SetCursorPos", int, x, int, y) } return ;----------------------------------------------------------------------------------------------------- Highlighter: if HighLightA HighLighterA() else HighLighter() return HighLighter() { global OldX,OldY,OldW,OldH global highlighthero,last_table_id global border_color global border_size global trans global xbord,ybord global cap,DwmIsEnabled v:=25 ifwinactive, Logged In ahk_class QWidget,,Full Tilt { winget,id,id,A foldx:=0.6534 foldy:=0.9662 foldx1:=0.5965 foldy1:=0.9662 back_x:=0.6534 back_y:=0.9862 back_x1:=0.5965 back_y1:=0.9862 WinGetActiveStats,ActiveTitle, ActiveW, ActiveH, ActiveX, ActiveY if highlighthero=1 { if !DwmIsEnabled { fold:=PixelColor(foldx,foldy,id,0) bacgr:=PixelColor(foldx1,foldy1,id,0) deal:=PixelColor(back_x,back_y,id,0) deal1:=PixelColor(back_x1,back_y1,id,0) } else { tmp_buffer := DllCall("GetDCEx", "UInt", id,"UInt",0,"UInt",1) relFTClientPoint(id, foldx, foldy,0) fold := DllCall("GetPixel", "UInt", tmp_buffer, "Int", foldx, "Int", foldy) relFTClientPoint(id, foldx1, foldy1,0) bacgr := DllCall("GetPixel", "UInt", tmp_buffer, "Int", foldx1, "Int", foldy1) relFTClientPoint(id, back_x, back_y,0) deal := DllCall("GetPixel", "UInt", tmp_buffer, "Int", back_x, "Int", back_y) relFTClientPoint(id, back_x1, back_y1,0) deal1 := DllCall("GetPixel", "UInt", tmp_buffer, "Int", back_x1, "Int", back_y1) SetFormat, IntegerFast, hex fold += 0 fold .= "" bacgr += 0 bacgr .= "" deal += 0 deal .= "" deal1 += 0 deal1 .= "" SetFormat, IntegerFast, d DllCall( "gdi32.dll\ReleaseDC", "Uint", tmp_buffer ) DllCall( "gdi32.dll\DeleteDC", "Uint", tmp_buffer ) } } if ((id != last_table_id) || ((OldX <> ActiveX || OldY <> ActiveY || OldW <> ActiveW || OldH <> ActiveH))) || (highlighthero=1) { OldX := ActiveX OldY := ActiveY OldW := ActiveW OldH := ActiveH if (highlighthero=0) || ((highlighthero=1) & (comparecolors(fold,bacgr,v)=1) & (comparecolors(deal,deal1,v)=1)) || ((highlighthero=1) & (id != last_table_id)) { Gui, 2: Cancel Gui, 3: Cancel Gui, 4: Cancel Gui, 5: Cancel } WinGetPos, x, y, w, h, ahk_id%id% x := x + xbord y := y + xbord + cap w := w - (2*xbord) h := h - (2*xbord) - cap ;Outer ;x := x - border_size ;y := y - border_size ;w := w + 2*border_size ;h := h + 2*border_size ;Makes Border around urgent table if ((highlighthero=0) || ((highlighthero=1) & (comparecolors(fold,bacgr,v)=0) & (comparecolors(deal,deal1,v)=1))) ; & (comparecolors(fold,fold1,v)=0) ; & (comparecolors(join,deal1,v)=1)) { ;top guinum := 2 Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %border_color% WinSet, Transparent, %trans% Gui, %guinum%: -Caption Gui, %guinum%: Show, w%w% h%border_size% x%x% y%y% NoActivate ;left guinum++ Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %border_color% WinSet, Transparent, %trans% Gui, %guinum%: -Caption Gui, %guinum%: Show, w%border_size% h%h% x%x% y%y% NoActivate ;bottom guinum++ Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %border_color% WinSet, Transparent, %trans% Gui, %guinum%: -Caption y2 := y + h - border_size Gui, %guinum%: Show, w%w% h%border_size% x%x% y%y2% NoActivate ;right guinum++ Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %border_color% WinSet, Transparent, %trans% Gui, %guinum%: -Caption x2 := x + w - border_size Gui, %guinum%: Show, w%border_size% h%h% x%x2% y%y% NoActivate } } last_table_id := id } else { Gui, 2: Cancel Gui, 3: Cancel Gui, 4: Cancel Gui, 5: Cancel last_table_id= } } return ;----------------------------------------------------------------------------------------------------- HighLighterA() { global last_active_table_id,xbord,cap,highlightlist global border_color,border_coloralt global border_size global trans v:=35 ifwinactive,/ ahk_class QWidget,,Full Tilt { winget,winid,id,A if !(winid=last_active_table_id) Loop, Parse, highlightlist, `, { if instr(A_loopfield,winid) or instr(A_loopfield,last_active_table_id) { if instr(A_loopfield,winid) col:=border_coloralt else col:=border_color stringsplit,tab,A_loopfield,- num:=tab2 num1:=num+1 num2:=num+2 num3:=num+3 Gui, %num%: Color, %col% Gui, %num1%: Color, %col% Gui, %num2%: Color, %col% Gui, %num3%: Color, %col% } } winget,list,list,/ ahk_class QWidget,,Full Tilt loop %list% { id:=list%A_index% if DllCall( "IsWindowVisible", "UInt",id) { WinGetPos, x, y, w, h, ahk_id%id% x := x + xbord y := y + xbord + cap w := w - (2*xbord) h := h - (2*xbord) - cap if instr(highlightlist,id) Loop, Parse, highlightlist, `, { if instr(A_loopfield,id) { stringsplit,tab,A_loopfield,- if !((x=tab3) & (y=tab4) & (w=tab5) & (h=tab6)) { num:=tab2 num1:=num+1 num2:=num+2 num3:=num+3 Gui, %num%: Destroy Gui, %num1%: Destroy Gui, %num2%: Destroy Gui, %num3%: Destroy listDelItem(highlightlist, A_Loopfield) } } } foldx:=0.6534 foldy:=0.9662 foldx1:=0.5965 foldy1:=0.9662 back_x:=0.6534 back_y:=0.9862 back_x1:=0.5965 back_y1:=0.9862 if !DwmIsEnabled { fold:=PixelColor(foldx,foldy,id,0,1) bacgr:=PixelColor(foldx1,foldy1,id,0,1) deal:=PixelColor(back_x,back_y,id,0,1) deal1:=PixelColor(back_x1,back_y1,id,0,1) } else { tmp_buffer := DllCall("GetDCEx", "UInt", id,"UInt",0,"UInt",1) relFTClientPoint(id, foldx, foldy,0) fold := DllCall("GetPixel", "UInt", tmp_buffer, "Int", foldx, "Int", foldy) relFTClientPoint(id, foldx1, foldy1,0) bacgr := DllCall("GetPixel", "UInt", tmp_buffer, "Int", foldx1, "Int", foldy1) relFTClientPoint(id, back_x, back_y,0) deal := DllCall("GetPixel", "UInt", tmp_buffer, "Int", back_x, "Int", back_y) relFTClientPoint(id, back_x1, back_y1,0) deal1 := DllCall("GetPixel", "UInt", tmp_buffer, "Int", back_x1, "Int", back_y1) SetFormat, IntegerFast, hex fold += 0 fold .= "" bacgr += 0 bacgr .= "" deal += 0 deal .= "" deal1 += 0 deal1 .= "" SetFormat, IntegerFast, d DllCall( "gdi32.dll\ReleaseDC", "Uint", tmp_buffer ) DllCall( "gdi32.dll\DeleteDC", "Uint", tmp_buffer ) } if (comparecolors(fold,bacgr,v)=0) & (comparecolors(deal,deal1,v)=1) { if !instr(highlightlist,id) { free:=freeGui() if !(winid=id) col:=border_color else col:=border_coloralt movetolisthighlight(id,free,x,y,w,h) ;top guinum := free Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %col% WinSet, Transparent, %trans% Gui, %guinum%: -Caption Gui, %guinum%: Show, w%w% h%border_size% x%x% y%y% NoActivate ;left guinum++ Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %col% WinSet, Transparent, %trans% Gui, %guinum%: -Caption Gui, %guinum%: Show, w%border_size% h%h% x%x% y%y% NoActivate ;bottom guinum++ Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %col% WinSet, Transparent, %trans% Gui, %guinum%: -Caption y2 := y + h - border_size Gui, %guinum%: Show, w%w% h%border_size% x%x% y%y2% NoActivate ;right guinum++ Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %col% WinSet, Transparent, %trans% Gui, %guinum%: -Caption x2 := x + w - border_size Gui, %guinum%: Show, w%border_size% h%h% x%x2% y%y% NoActivate } } else { if instr(highlightlist,id) Loop, Parse, highlightlist, `, { if instr(A_loopfield,id) { stringsplit,tab,A_loopfield,- num:=tab2 num1:=num+1 num2:=num+2 num3:=num+3 Gui, %num%: Destroy Gui, %num1%: Destroy Gui, %num2%: Destroy Gui, %num3%: Destroy listDelItem(highlightlist, A_Loopfield) } } } } } last_active_table_id:=winid } else Loop, Parse, highlightlist, `, { stringsplit,tab,A_loopfield,- num:=tab2 num1:=num+1 num2:=num+2 num3:=num+3 Gui, %num%: Destroy Gui, %num1%: Destroy Gui, %num2%: Destroy Gui, %num3%: Destroy listDelItem(highlightlist, A_Loopfield) } } return freeGui() { Loop 99 { Gui, %a_index%: +lastfoundExist If ! WinExist() return a_index } } MouseMove: MoveMouse() return MoveMouse(x_mouse=0.7468, y_mouse=0.8735) { if IsWindowNew() { wingetclass,class,A wingetactivetitle,title if class=QWidget if !instr(title,"Full Tilt") { winget,id,id,A relFTClientPoint(id, x_mouse, y_mouse,0,1) DllCall("SetCursorPos", int, x_mouse, int, y_mouse) } } } return ;----------------------------------------------------------------------------------------------------- IsWindowNew() { global oldwinid,stealfocus winget,id,id,A wingetclass,class,ahk_id%oldwinid% if id!=%oldwinid% { oldwinid:=id if stealfocus return 1 else { if class=QWidget return 1 else return 0 } } else return 0 } ;----------------------------------------------------------------------------------------------------- clicktime: clicktime() return clicktime() { global tablequeue t1:=0xdedbde time_x:=0.9000 time_y:=0.7200 time_x1:=0.8858 v:=30 v1:=15 winget,listft,list,/ ahk_class QWidget,,Full Tilt loop %listft% { id:=listft%A_index% t:=PixelColorA(time_x,time_y,time_x1,time_y,0,id) stringsplit,col,t,- if (CompareColors(col1,t1,v1)=false) & (CompareColors(col1,col2,v)=false) { if !InStr(tablequeue,id) movetolist(id,A_TickCount) } else if InStr(tablequeue,id) removefromlist(id) } } return ;----------------------------------------------------------------------------------------------------- dealin: dealmein() return dealmein() { back_x:=0.6534 back_y:=0.9862 back_x1:=0.5859 back_x2:=0.6152 back1:=0x181818 v1:=10 v:=30 winget,listft,list,/ ahk_class QWidget,,Full Tilt loop %listft% { id:=listft%A_index% t:=PixelColorA(back_x,back_y,back_x1,back_y,back_x2,id) stringsplit,col,t,- if (CompareColors(col1,back1,v1)=false) & (CompareColors(col1,col2,v)=false) & (CompareColors(col2,col3,v)=true) { PostclickFT(0.7496,0.9862,id,0) PostclickFT(0.7496,0.9862,id,0) } } } return ;----------------------------------------------------------------------------------------------------- relFTClientPoint(id, ByRef x, ByRef y, client=1, screen=0) { global xbord,ybord,cap WinGetPos,x1,y1,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 } if screen { x+=x1 y+=y1 } } return ;----------------------------------------------------------------------------------------------------- PostLeftDoubleClick(x, y, table_id, activate=1) { 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 ;----------------------------------------------------------------------------------------------------- PostLeftclickFT(x,y,winid,activate=1,client=1) { relFTClientPoint(winid, x, y,client) DllCall("SetCapture","Uint",winid) PostLeftClick(x, y, winid, activate) DllCall("ReleaseCapture") } return ;----------------------------------------------------------------------------------------------------- clickwithdelay: clickdelay() return clickdelay() { global tablequeue time_x:=0.9000 time_y:=0.7200 Loop, Parse, tablequeue, `, { interval:=interval1*1000 stringsplit,tab,A_loopfield,- if A_TickCount-tab2>interval { PostclickFT(time_x,time_y,tab1,0) PostclickFT(time_x,time_y,tab1,0) listDelItem(tablequeue, A_Loopfield) } } } return ;----------------------------------------------------------------------------------------------------- PixelColor(colx,coly,id,client=1,screen=0) { relFTClientPoint(id,colx,coly,client,screen) if screen Coordmode,Pixel,screen PixelGetColor,color,colx,coly return color } ;----------------------------------------------------------------------------------------------------- PixelColorA(colx,coly,backx,backy,joinx,id,region=0,regionw=70,regionh=15) { global boost,xbord,ybord,cap,PokerWindowID,DwmIsEnabled,hdc_buffer if boost critical,6 setwindelay, -1 WinGetPos,,,W,H,ahk_id %id% if DwmIsEnabled { hdc_buffer := DllCall("GetDCEx", "UInt", id,"UInt",0,"UInt",1) } else { 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) if backx pix2:=DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) x:=floor(((W-2*xbord)*joinx) + xbord) if joinx pix3:=DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) SetFormat, IntegerFast, hex pix1 += 0 pix1 .= "" if backx { pix2 += 0 pix2 .= "" } if joinx { pix3 += 0 pix3 .= "" } SetFormat, IntegerFast, d if backx pix1.="-" . pix2 if joinx pix1.="-" . pix3 if region { x:=floor(((W-2*xbord)*joinx) + xbord) y:=floor(((H-(2*ybord)-cap)*backy) + ybord + cap) pix1.="*" loop %regionw% { delta:=A_index loop %regionh% { delta1:=A_index p := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x+delta , "Int", y+delta1) ;p1:=p ;SetFormat, IntegerFast, hex ;p += 0 ;p .= "" ;SetFormat, IntegerFast, d ;pix1.=p . "*" . p1 . "-" pix1.=p . "-" } } } sleep,1 DllCall( "gdi32.dll\ReleaseDC", "Uint", hdc_buffer ) if DwmIsEnabled 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 ;----------------------------------------------------------------------------------------------------- movetolistseat(winid,time) { global tablequeueseat listAdd(tablequeueseat, winid . "-" . time) } return ;----------------------------------------------------------------------------------------------------- movetolistwaitlist(winid,time) { global waitlistqueue listAdd(waitlistqueue, winid . "-" . time) } return ;----------------------------------------------------------------------------------------------------- movetolisthighlight(winid,number,x,y,w,h) { global highlightlist listAdd(highlightlist, winid . "-" . number . "-" . x . "-" . y . "-" . w . "-" . h) } 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) PostclickFT(reg_x,reg_y,id,0) } } return ;----------------------------------------------------------------------------------------------------- Toggledealmein: If (dealmein=true) { dealmein:=false T=Off } else { dealmein:=true T=On } Gui, 12:Add, Text,, Auto Deal me in: %T% Gui, 12:+ToolWindow Gui, 12:Show, w150 h20 Sleep, 1000 Gui, 12:Destroy return ;----------------------------------------------------------------------------------------------------- Joinwaitlist: Joinwaitlist() return Joinwaitlist() { join_x:=0.6158 join_x1:=0.5946 join_y1:=0.9862 join_y:=0.9292 join_x2:=0.8261 v:=20 winget,listft,list,Logged In ahk_class QWidget,,Full Tilt loop %listft% { id:=listft%A_index% wingetpos,,,w,,ahk_id%id% t:=PixelColorA(join_x,join_y1,join_x1,join_y1,0,id) stringsplit,col,t,- if (CompareColors(col1,col2,v)=false) { if w>600 t:=PixelColorA(0,0,0,join_y,join_x2,id,1,100,15) else t:=PixelColorA(0,0,0,join_y,join_x2,id,1,100,10) stringsplit,st,t,* if (!instr(st2,"16777215")) ; & !instr(st2,"67284200") & !instr(st2,"111670350") & !instr(st2,"148766710")) { PostclickFT(join_x,join_y1,id,0) PostclickFT(join_x,join_y1,id,0) } } } } return ;----------------------------------------------------------------------------------------------------- Unjoinwaitlist: Unjoinwaitlist() return Unjoinwaitlist() { join_x:=0.6158 join_x1:=0.5946 join_y1:=0.9862 join_y:=0.9292 join_x2:=0.8261 v:=20 winget,listft,list,Logged In ahk_class QWidget,,Full Tilt loop %listft% { id:=listft%A_index% wingetpos,,,w,,ahk_id%id% t:=PixelColorA(join_x,join_y1,join_x1,join_y1,0,id) stringsplit,col,t,- if (CompareColors(col1,col2,v)=false) { if w>600 t:=PixelColorA(0,0,0,join_y,join_x2,id,1,100,15) else t:=PixelColorA(0,0,0,join_y,join_x2,id,1,100,10) stringsplit,st,t,* if (instr(st2,"16777215")) ;or instr(st2,"67284200") or instr(st2,"111670350") or instr(st2,"148766710")) { PostclickFT(join_x,join_y1,id,0) PostclickFT(join_x,join_y1,id,0) } } } } return ;----------------------------------------------------------------------------------------------------- autobuy: autobuy() return autobuy() { global max,remembered,xbb,bbmultiplier winget,list,list, Get Chips ahk_class QWidget ifwinexist, Get Chips ahk_class QWidget { id:=list1 winget,id,id, Get Chips ahk_class QWidget winactivate,ahk_id%id% if max { PostleftclickFT(0.1137,0.5407,id,1,1) sleep,100 PostleftclickFT(0.3488,0.8740,id,0) PostleftclickFT(0.3488,0.8740,id,0) } if remembered { sleep,100 PostleftclickFT(0.3488,0.8740,id,0) PostleftclickFT(0.3488,0.8740,id,0) } if xbb { winget,listft,list,Logged In ahk_class QWidget,,Full Tilt wingettitle,title,ahk_id %listft1% StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 StringReplace,bb,bb,$,,1 bb*=bbmultiplier bb := Round(bb, 2) PostclickFT(0.5906,0.6100,id,1,1) PostLeftclickFT(0.5906,0.6100,id,1,1) cl:=clipboard clipboard:=bb setcontroldelay,-1 setkeydelay,1,1 sleep,10 ifwinnotactive,ahk_id%id% winactivate,ahk_id%id% controlfocus,,ahk_id %id% setkeydelay,-1,-1 ControlSend,,%bb%,ahk_id %id% sleep,-1 sleep,100 PostleftclickFT(0.3488,0.8740,id,0) PostleftclickFT(0.3488,0.8740,id,0) clipboard:=cl winwaitclose,ahk_id %id%,,0.5 if errorlevel { ControlSend,,{Esc},ahk_id %id% winclose,ahk_id %listft1% } } } } return ;----------------------------------------------------------------------------------------------------- NewTable: IsTableNew() return IsTableNew() { local list,id winget,list,list,Logged In ahk_class QWidget,,Full Tilt IfWinNotExist, Waiting List Options ahk_class QWidget IfWinNotExist, Get Chips ahk_class QWidget loop %list% { id:=list%A_index% if seated%id% is not number { if ((limit=0) || ((limit=1) & (list<=totalnumber))) { ;wingetpos,xstart%id%,ystart%id%,,,ahk_id%id% ;if move ;WinMove, ahk_id%id%,, xpos,ypos if autotakeseat { if !InStr(tablequeueseat,id) movetolistseat(id,A_TickCount) } seated%id%:=1 } else if ((limit=1) & (list>totalnumber)) winclose,ahk_id%id% } } } return ;----------------------------------------------------------------------------------------------------- clickseatwithdelay: clickdelayseat() return clickdelayseat() { global tablequeueseat ifwinnotexist, Get Chips ahk_class QWidget { Loop, Parse, tablequeueseat, `, { stringsplit,tab,A_loopfield,- if (A_TickCount-tab2>500) { ClickEmptySeat(tab1) listDelItem(tablequeueseat, A_Loopfield) } } } } return clickwaitlistwithdelay: clickdelaywaitlist() return clickdelaywaitlist() { global waitlistqueue ifwinnotexist, Get Chips ahk_class QWidget { Loop, Parse, waitlistqueue, `, { stringsplit,tab,A_loopfield,- if A_TickCount-tab2>300 { PostLeftClickFT(0.2469,0.7000,tab1,0) PostLeftClickFT(0.2469,0.7000,tab1,0) listDelItem(waitlistqueue, A_Loopfield) } } } } return ClickEmptySeat(id) { Global Racetrack wingettitle,title,ahk_id%id% racetrack9maxseats:="0.4920*0.8436,0.2199*0.8183,0.0933*0.5931,0.0933*0.3379,0.2863*0.2022,0.7009*0.2022,0.8924*0.3379,0.8939*0.5931,0.7626*0.8183" racetrack6maxseats:="0.4969*0.8758,0.3101*0.8505,0.0890*0.4965,0.2784*0.1954,0.6914*0.1954,0.8844*0.4965" classic9maxseats:="0.4953*0.8772,0.2480*0.8289,0.0666*0.6335,0.1061*0.3439,0.3356*0.2082,0.6552*0.2059,0.8814*0.3432,0.9194*0.6289,0.7359*0.8243" classic6maxseats:="0.4953*0.8804,0.0886*0.6459,0.1487*0.2942,0.4952*0.1931,0.8322*0.2873,0.9050*0.6367" if Racetrack { color1:=5190656 color2:=5059328 if instr(title,"6 max") seats:=racetrack6maxseats else seats:=racetrack9maxseats } else { color1:="-0-" color2:=16119285 if instr(title,"6 max") seats:=classic6maxseats else seats:=classic9maxseats } Loop, Parse, seats, `, { stringsplit,coord,A_loopfield,* col:=PixelColorA(0,0,0,coord2,coord1,id,1,5,5) if Racetrack { if instr(col,color1) || instr(col,color2) { clickx:=coord1 clicky:=coord2-0.04 PostLeftclickFT(clickx,clicky,id,0) PostLeftclickFT(clickx,clicky,id,0) return } } else { if (!instr(col,color1)) & (!instr(col,color2)) { clickx:=coord1 clicky:=coord2 PostLeftclickFT(clickx,clicky,id,0) PostLeftclickFT(clickx,clicky,id,0) return } } } PostLeftclickFT(0.6155,0.9862,id,0) PostLeftclickFT(0.6155,0.9862,id,0) } return ;----------------------------------------------------------------------------------------------------- closepopups: closepopups() return closepopups() { global xbord,cap,closeOKwindow,leavetable winget,list,list,ahk_class QWidget,,/ loop %list% { id:=list%A_index% wingettitle,title,ahk_id%id% if !instr(title,"Full Tilt") if !instr(title,"Get Chips") { wingetpos,,,w,h,ahk_id%id% w-=2*xbord h-=(2*xbord+cap) if ((h<120) & ((w=234) or (w=240) or (w=380) or (w=392))) ;or ((h<110) & (w=281)) { if closeOKwindow ControlSend,,{Enter},ahk_id%id% } else if ((w=265) or (w=267)) or ((h<120) & (w=281)) { if leavetable { PostLeftClickFT(0.4000,0.7273,id) PostLeftClickFT(0.4000,0.7273,id) } } } } } return ;----------------------------------------------------------------------------------------------------- TakeSeatFromWaitlist: TakeSeat() return TakeSeat() { local list,id,This_id IfWinExist, Waiting List Options ahk_class QWidget { WinGet, list, list, Waiting List Options ahk_class QWidget winget, tablelist,list,Logged In ahk_class QWidget,,Full Tilt Loop, %list% { This_id := list%A_Index% if (tablelist<totalnumber) or (limit=0) { settimer,NewTable,off PostLeftClickFT(0.2469,0.7000,this_id) winwait, / ahk_class QWidget,,0.5 if !errorlevel { winget,id,id seated%id%:=1 } if limit or autotakeseat settimer,NewTable,267 } else if (tablelist>=totalnumber) & (limit=1) { if remove { PostLeftClickFT(0.0843,0.8368,this_id) PostLeftClickFT(0.5000,0.7000,this_id) } if pressno PostLeftClickFT(0.5000,0.7000,this_id) else if pressnotyet PostLeftClickFT(0.7439,0.7000,this_id) } } } } return ;----------------------------------------------------------------------------------------------------- AlterAmount(id, dir="", frac=1, unit="") { WinGetTitle, title, ahk_id%id% amount := 0 StringTrimRight, tablename, title, ( StrLen(title) - (InStr(title, " - ")-1) ) IfWinExist, ahk_id%id% ahk_group FullTiltTables { StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 } StringReplace,bb,bb,$,,1 StringReplace,bb,bb,Ј,,1 StringReplace,bb,bb,Ђ,,1 StringReplace,bb,bb,€,,1 sb := sb(bb) If (unit = "" or unit = "bb") { unit := bb } Else If (unit = "sb") { unit := sb } Else If (unit = "pot") { pot := 0 call := 0 hero_bet := 0 street := "pre" hero_position := "" open := 0 max := 10000000 IfWinExist, ahk_id%id% ahk_group FullTiltTables { PotSizeFullTilt2(id, pot, call, sb, bb, hero_bet, street, hero_position, open, max) } pot := ((pot + call + hero_bet) )+ call unit := pot } amount := unit * frac if (dir="down") { amount := amount - (2*amount) } a:=floor(amount) if amount-a=0 amount:=a IfWinExist, ahk_id%id% ahk_group FullTiltTables { oldClipboard = %clipboard% clipboard = PostStarsClick(767, 440, id) Send ^a Send ^c ClipWait, 0.3 If !ErrorLevel t := clipboard clipboard = %oldClipBoard% t := t + amount if (t < 0) { t := 0 } t2 := Round(t, 0) t1 := Round(t, 2) t := Round(t, 3) if t-t1=0 t:=t1 if t-t2=0 t:=t2 PostStarsClick(767, 440, id) Send ^a Send %t% PostStarsClick(767, 440, id) } } Pot(id, frac=1, round_bet=0.2, open_adjust="", fixblinds=0) { global debug global attempts if attempts<=0 attempts:=1 pot := 0 call := 0 sb := 0 bb := 0 hero_bet := 0 street := "" hero_position := "" open := 1 max := 10000000 IfWinExist, ahk_id%id% ahk_group FullTiltTables { loop %attempts% { PotSizeFullTilt2(id, pot, call, sb, bb, hero_bet, street, hero_position, open, max) if pot>0 break sleep,20 } } Else { return } StringSplit, fr, frac, %A_SPACE% if (fr0 < 4) { times := 4 - fr0 Loop, %times% { n := 5 - A_Index fr%n% := fr%fr0% } } if (street = "pre") { frac:= Round(fr1/100,2) } else if (street = "flop") { frac:= Round(fr2/100,2) } else if (street = "turn") { frac:= Round(fr3/100,2) } else if (street = "river") { frac:= Round(fr4/100,2) } if (debug) { TrayTip, BetPot, Pot:`t`t%pot%`nCall:`t`t%call%`nHero_bet:`t%hero_bet%`n`nPosition:`t%hero_position%`n`nBlinds:`t$%sb%/$%bb%`n`nStreet:`t%street%`n`n%fr0%`n%fr1% %fr2% %fr3% %fr4%`n`n%frac%,10,17 } if (fixblinds AND open AND street="pre") { if (hero_position = "sb" ) { pot := pot - sb call := call + sb } else if (hero_position = "bb") { pot := pot - bb call := call + bb } } pot := ((pot + call + hero_bet)* (frac)) + call if (open=1 AND open_adjust="ssnl" ) { pot := pot + bb - sb } else if (open=1 AND open_adjust="trny" ) { pot := pot - bb } else if (open=1 AND open_adjust="mix" ) { if (bb=2) { pot := pot + bb - sb } ; pot := pot + bb + sb } if(round_bet = "smallblind") { ; if sb<1 ; pot := Round((Floor((pot / sb)) * sb),2) pot := Round((Round((pot / sb)) * sb),2) ; else ; pot := Round((Floor((pot / sb)) * sb),0) } else if(round_bet = "bigblind") { pot := Round((Floor((pot / bb)) * bb),2) } else if (round_bet < 1) { places := round_bet*10 pot := Round(pot, (places)) } else if (round_bet >= 1) { pot := Floor(pot / round_bet) * round_bet } p:=floor(pot) if pot-p=0 pot:=p IfWinExist, ahk_id%id% ahk_group FullTiltTables { PostStarsClick(767, 440, id) Send ^a Send %pot% } } PotSizeFullTilt2(id, ByRef pot, ByRef call, ByRef sb, ByRef bb, ByRef hero_bet, ByRef street, ByRef hero_position, ByRef open, ByRef max) { global deduct_rake,Racetrack rake := 0 notraked := 0 maxrake := 3 max := 7654321 setbatchlines,-1 WinGetTitle, title, ahk_id%id% StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 StringReplace,bb,bb,$,,1 sb := sb(bb) TotalPotDigitsPosX=393 TotalPotDigitsPosY=277 if Racetrack { MainPotDigitsPosX=334 MainPotDigitsPosY=183 } else { if !instr(title,"(6 max)") { MainPotDigitsPosX=285 MainPotDigitsPosY=335 } else { MainPotDigitsPosX=338 MainPotDigitsPosY=340 } } PotDigitsPosW=80 PotDigitsPosH=14 pot:=DigitSearchByPixelCount(TotalPotDigitsPosX,TotalPotDigitsPosY,PotDigitsPosW,PotDigitsPosH,Id) if pot is not number pot:=DigitSearchByPixelCount(MainPotDigitsPosX,MainPotDigitsPosY,PotDigitsPosW,PotDigitsPosH,Id) oldClipboard:=clipboard clipboard = wingetpos,,,w,,ahk_id%id% if w>=605 { PostStarsClick(707, 418, id) ;hit min PostStarsClick(707, 418, id) ;hit min PostStarsClick(707, 418, id) ;hit min } else { PostLeftClickFT(0.8705,0.8341,id,0) PostLeftClickFT(0.8705,0.8341,id,0) } PostStarsClick(767, 440, id) min := sb Send ^a Send ^c ClipWait, 0.3 If !ErrorLevel { min := clipboard clipboard = %oldClipBoard% } else { min := 2*bb } street := "pre" street := GetStreetFT(id,5) if (min = bb) { call := 0 } else if (min > bb) { call := min / 2 } else if (street != "pre") { call := bb } call2 := Round(call, 0) call1 := Round(call, 2) call := Round(call, 3) if call-call1=0 call:=call1 if call-call2=0 call:=call2 if (call != bb || street != "pre") { open := 0 } if call is not number call:=0 if hero_bet is not number hero_bet:=0 setbatchlines,1ms return } GetStreetFT(id,amount) { global DwmIsEnabled if !DwmIsEnabled CoordMode, Pixel, Screen street := "flop" x1 := 378 y1 := 214 x2 := 414 y2 := 260 if !DwmIsEnabled { relStarsScreenPoint(id, x1, y1) relStarsScreenPoint(id, x2, y2) pixels:=GetPixelCount(x1, y1, x2, y2, 0xffffff,amount) } else { relStarsWindowPoint(id, x1, y1) relStarsWindowPoint(id, x2, y2) pixels:=GetPixelCount(x1, y1, x2, y2, 0xffffff,amount,"",id) } If !pixels { street := "pre" return street } x1 := 485 y1 := 214 x2 := 520 y2 := 260 if !DwmIsEnabled { relStarsScreenPoint(id, x1, y1) relStarsScreenPoint(id, x2, y2) pixels:=GetPixelCount(x1, y1, x2, y2, 0xffffff,amount) } else { relStarsWindowPoint(id, x1, y1) relStarsWindowPoint(id, x2, y2) pixels:=GetPixelCount(x1, y1, x2, y2, 0xffffff,amount,"",id) } If pixels { street := "river" return street } x1 := 431 y1 := 214 x2 := 461 y2 := 260 if !DwmIsEnabled { relStarsScreenPoint(id, x1, y1) relStarsScreenPoint(id, x2, y2) pixels:=GetPixelCount(x1, y1, x2, y2, 0xffffff,amount) } else { relStarsWindowPoint(id, x1, y1) relStarsWindowPoint(id, x2, y2) pixels:=GetPixelCount(x1, y1, x2, y2, 0xffffff,amount,"",id) } If pixels { street := "turn" } return street } ; finds number of specified pixels in a region GetPixelCount(x1, y1, x2, y2, color,amount, options="",id=0) { global DwmIsEnabled if id hdc_buffer := DllCall("GetDCEx", "UInt", id,"UInt",0,"UInt",1) else CoordMode, Pixel, Screen pixels := (x2 - x1 + 1)*(y2 - y1 + 1) If ( pixels <= 0 ) { ErrorLevel = 1 return } count = 0 x = %x1% Loop { If ( x > x2 ) { break } y = %y1% Loop { If ( y > y2 ) { break } if !id PixelGetColor, c, x, y, %options% else { c := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) SetFormat, IntegerFast, hex c += 0 c .= "" SetFormat, IntegerFast, d } If ( c = color ) { count++ if count>%amount% { if id { DllCall( "gdi32.dll\ReleaseDC", "Uint", hdc_buffer ) DllCall( "gdi32.dll\DeleteDC", "Uint", hdc_buffer ) } return 1 } } y++ } x++ } if id { DllCall( "gdi32.dll\ReleaseDC", "Uint", hdc_buffer ) DllCall( "gdi32.dll\DeleteDC", "Uint", hdc_buffer ) } return 0 } sb(bb) { If bb = .25 sb := .10 else if bb = 15 sb = 10 else if bb = 0.05 sb = 0.02 else sb := bb/2 if (sb > 1) { sb := Round(sb, 0) } else { sb := Round(sb, 2) } return sb } StrRep(str,char,rep_char="",all=1) { StringReplace,str,str,%char%,%rep_char%,%all% return str } StrMid(str,str1,str2,startPos1=1,startPos2=1,caseSense=0){ If startPos1 = startPos1 = 1 If startPos2 = startPos2 = 1 StringTrimLeft,o,str,InStr(str,str1,cS,startPos1) + StrLen(str1) - 1 StringLeft,o,o,InStr(o,str2,caseSense,startPos2)-1 return o } IIf(_boolExpr, _exprTrue, _exprFalse) { If _boolExpr Return _exprTrue else return _exprFalse } relStarsClientPoint(id, ByRef x, ByRef y) { global border global caption rw := 792 rh := 546 WinGetPos, , , w, h, ahk_id%id% w := w - (2*border) h := h - (2*border) - caption x := Floor( (x / rw ) * w ) y := Floor( (y / rh) * h ) } relStarsWindowPoint(id, ByRef x, ByRef y) { global border global caption relStarsClientPoint(id, x, y) x := x + border y := y + border + caption } relStarsScreenPoint(id, ByRef x, ByRef y) { relStarsWindowPoint(id, x, y) WinGetPos, x1, y1, , , ahk_id%id% x += x1 y += y1 } reverse_calc_stars_client_area(cw, ByRef w, ByRef h) { global border global caption w := cw + (2*border) h := Floor(cw / 1.45) + (2*border) + caption } client_area(id, ByRef x, Byref y, ByRef w, Byref h) { WinGetPos, x, y, w, h, ahk_id%id% global border global caption x := x + border y := y + border + caption w := w - (2*border) h := h - (2*border) - caption return } PostStarsClick(x, y, id) { relStarsClientPoint(id, x, y) PostLeftClick(x, y, id) } PostLeftClick(x, y, table_id, activate=1) { ; ### JUK: Send the down left click, then the mouse-up messages. ; 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, 0x201, 0x0001, ((y<<16)^x), , ahk_id%table_id% PostMessage, 0x202 , 0, ((y<<16)^x), , ahk_id%table_id% } ;;;;;;;;;;;;;;;;;;;;PixelCount function source taken from PokerShortCuts;;;;;;;;;;;;;;;;;;;;; DigitSearchByPixelCount(X,Y,W,H,WinId) { global DwmIsEnabled DigitsColor=0xFFFFFF DigitsColorTolerance=0 FTMinimumPixelCountPerColumn := 2 FTMaximumAllowedNumPixelsInRowToBeBlank:=2 ; FT Pixel Count Digits for table (client width) 472-563 PixelCountDigits52254 := 0 PixelCountDigits276 := 1 PixelCountDigits35335 := 2 PixelCountDigits33335 := 2 PixelCountDigits23344 := 3 PixelCountDigits22276 := 4 PixelCountDigits53335 := 5 PixelCountDigits53321 := 6 PixelCountDigits23321 := 7 PixelCountDigits43344 := 8 PixelCountDigits23354 := 9 PixelCountDigits21 := "." PixelCountDigits3333332 := "A" PixelCountDigits333335 := "S" ; FT Pixel Count Digits for table (client width) 564-682 PixelCountDigits622265 := 0 PixelCountDigits287 := 1 PixelCountDigits333336 := 2 PixelCountDigits223355 := 3 PixelCountDigits22287 := 4 PixelCountDigits533346 := 5 PixelCountDigits533332 := 6 PixelCountDigits33321 := 7 PixelCountDigits533355 := 8 PixelCountDigits333354 := 9 PixelCountDigits21 := "." PixelCountDigits3433432 := "A" PixelCountDigits333346 := "S" ; FT Pixel Count Digits for table (client width) 683-841 PixelCountDigits6822865 := 0 PixelCountDigits2887 := 1 PixelCountDigits3544536 := 2 PixelCountDigits2433855 := 3 PixelCountDigits222787 := 4 PixelCountDigits653646 := 5 PixelCountDigits6833632 := 6 PixelCountDigits47521 := 7 PixelCountDigits5833855 := 8 PixelCountDigits3633865 := 9 PixelCountDigits221 := "." PixelCountDigits36636632 := "A" PixelCountDigits4644646 := "S" ; FT Pixel Count Special situation below 842-881 - looks like only the 2 digit is different here PixelCountDigits23444647 := 2 ; FT Pixel Count Digits for table (client width) 842-960 PixelCountDigits79222976 := 0 PixelCountDigits22998 := 1 PixelCountDigits33444647 := 2 PixelCountDigits22333966 := 3 PixelCountDigits2222998 := 4 PixelCountDigits5533757 := 5 PixelCountDigits68433743 := 6 PixelCountDigits465421 := 7 PixelCountDigits69333966 := 8 PixelCountDigits47334865 := 9 PixelCountDigits221 := "." PixelCountDigits2555355521 := "A" PixelCountDigits56333656 := "S" ; FT Pixel Count Digits for table (client width) 961-1040 PixelCountDigits684224865 := 0 PixelCountDigits22AA9 := 1 PixelCountDigits354435647 := 2 PixelCountDigits463337735 := 3 PixelCountDigits22222AA9 := 4 PixelCountDigits275335647 := 5 PixelCountDigits685335632 := 6 PixelCountDigits3555421 := 7 PixelCountDigits7A3333A77 := 8 PixelCountDigits365335865 := 9 PixelCountDigits332 := "." PixelCountDigits3556365532 := "A" PixelCountDigits475445746 := "S" ; FT Pixel Count Digits for table (client width) 1041-1119 PixelCountDigits8A42224A87 := 0 PixelCountDigits22CCB := 1 PixelCountDigits3544445649 := 2 PixelCountDigits4623337957 := 3 PixelCountDigits222222CCB := 4 PixelCountDigits2863335759 := 5 PixelCountDigits7954335743 := 6 PixelCountDigits35555421 := 7 PixelCountDigits5973337957 := 8 PixelCountDigits4753345976 := 9 PixelCountDigits332 := "." PixelCountDigits355653565532 := "A" PixelCountDigits5864446858 := "S" if !DwmIsEnabled { coordmode, pixel, Screen WindowScaledPos(X, Y, ClientScaleFactor, "Screen", WinId) PixelGetColor, ColorRGB,X,Y,RGB } else { hdc_buffer := DllCall("GetDCEx", "UInt", WinId,"UInt",0,"UInt",1) WindowScaledPos(X, Y, ClientScaleFactor, "Window", WinId) ColorRGB := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) SetFormat, IntegerFast, hex ColorRGB += 0 ColorRGB .= "" SetFormat, IntegerFast, d } W := Round(W * ClientScaleFactor) H := Round(H * ClientScaleFactor) CheckPrimaryColorFlag := 1 CheckAlternateColorFlag := 0 Y += Round(H/2) TopRowFound := 0 loop, % Round(H) { Xpos := X PixelCountInRow := 0 ScanWidth := Round(W*3/4) loop,% ScanWidth { Xpos += 1 if !DwmIsEnabled PixelGetColor, ColorRGB,Xpos,Y,RGB else { ColorRGB := DllCall("GetPixel", "UInt", hdc_buffer, "Int", Xpos, "Int", Y) SetFormat, IntegerFast, hex ColorRGB += 0 ColorRGB .= "" SetFormat, IntegerFast, d } if (CheckPrimaryColorFlag AND (ColorWithinTolerance(ColorRGB, DigitsColor, DigitsColorTolerance))) { PixelCountInRow++ if (PixelCountInRow > FTMaximumAllowedNumPixelsInRowToBeBlank) break } } if (Xpos == (X + ScanWidth)) { TopRowFound := 1 Y += 1 ; move back down to the top row of the font break } Y -= 1 } if NOT TopRowFound { return "" } DigitString:="" PixelCountForAllDigitsString := "" PixelCountForThisDigitString := "" loop, %W% { ColumnNum:= A_Index PixelCountInColumn:=0 FirstPixelPosition := 0 LastPixelPosition := 0 loop, %H% { RowNum:=A_Index if !DwmIsEnabled PixelGetColor, ColorRGB,X+ColumnNum-1,Y+RowNum-1,RGB else { ColorRGB := DllCall("GetPixel", "UInt", hdc_buffer, "Int", X+ColumnNum-1, "Int", Y+RowNum-1) SetFormat, IntegerFast, hex ColorRGB += 0 ColorRGB .= "" SetFormat, IntegerFast, d } if (ColorWithinTolerance(ColorRGB, DigitsColor, DigitsColorTolerance)) { if (!FirstPixelPosition) FirstPixelPosition := RowNum LastPixelPosition := RowNum PixelCountInColumn++ } } if (PixelCountInColumn >= FTMinimumPixelCountPerColumn) { LastMinusFirstPixelPosition := LastPixelPosition - FirstPixelPosition if (PixelCountInColumn > 9) { PixelCountInColumn := chr(64 + PixelCountInColumn - 9) } if PixelCountInColumn is alnum PixelCountForThisDigitString .= PixelCountInColumn } else { if (PixelCountForThisDigitString != "") { if (LastMinusFirstPixelPosition > 9) LastMinusFirstPixelPosition := chr(64 + LastMinusFirstPixelPosition - 9) if LastMinusFirstPixelPosition is alnum PixelCountForThisDigitString .= LastMinusFirstPixelPosition Temp := "PixelCountDigits" DigitString .= %Temp%%PixelCountForThisDigitString% PixelCountForAllDigitsString .= PixelCountForThisDigitString . A_Space PixelCountForThisDigitString := "" } } } Loop, { StringPosition := instr(DigitString,".") ; find the first decimal point if StringPosition { if ((strlen(DigitString) - StringPosition) > 2) StringReplace, DigitString, DigitString,.,, else break } else break } if DwmIsEnabled { DllCall( "gdi32.dll\ReleaseDC", "Uint", hdc_buffer ) DllCall( "gdi32.dll\DeleteDC", "Uint", hdc_buffer ) } if (DigitString) { PixelCountForAllDigitsStringReturned := PixelCountForAllDigitsString return DigitString } } ColorWithinTolerance(SampleColor, TestColor, Tolerance) { if (SampleColor == TestColor) return 1 If (Tolerance == 0) return (SampleColor == TestColor) SampleColorRed := SampleColor >> 16 TestColorRed := TestColor >> 16 SampleColorGreen:= SampleColor >> 8 & 0xff TestColorGreen := TestColor >> 8 & 0xff SampleColorBlue := SampleColor & 0xff TestColorBlue := TestColor & 0xff return ( ( (SampleColorRed + Tolerance >= TestColorRed) && (SampleColorRed - Tolerance <= TestColorRed) ) && ( (SampleColorGreen + Tolerance >= TestColorGreen) && (SampleColorGreen - Toleranc <= TestColorGreene) ) && ( (SampleColorBlue + Tolerance >= TestColorBlue) && (SampleColorBlue - Tolerance <= TestColorBlue) ) ) } WindowScaledPos(ByRef PosX, ByRef PosY, ByRef ClientScaleFactor, ScaleType="Screen", WinId="") { local TitleBarHeight, WindowBottomBorder, WindowSideBorder, WindowTopBorder ,WindowX,WindowY,WindowWidth,WindowHeight local ClientWidth, ClientHeight , ClientWidthScaleFactor, ClientHeightScaleFactor StandardClientWidth=794 StandardClientHeight=547 SysGet, TitleBarHeight, 4 SysGet, WindowBottomBorder, 32 SysGet, WindowSideBorder, 33 WindowTopBorder := TitleBarHeight + WindowBottomBorder WinGetPos,WindowX,WindowY,WindowWidth,WindowHeight,ahk_id%WinId% ClientWidth := WindowWidth - 2 * WindowSideBorder ClientHeight := WindowHeight - TitleBarHeight - 2 * WindowBottomBorder ClientWidthScaleFactor := ClientWidth / StandardClientWidth ClientHeightScaleFactor := ClientHeight / StandardClientHeight ClientScaleFactor := ClientWidthScaleFactor ; pass back the scaling factor in case the calling function needs it PosX := Round(PosX * ClientWidthScaleFactor) PosY := Round(PosY * ClientHeightScaleFactor) if (ScaleType == "Client") { return } else if (ScaleType == "Window") { PosX += WindowSideBorder PosY += WindowTopBorder } else if (ScaleType == "Screen") { PosX += WindowX + WindowSideBorder PosY += WindowY + WindowTopBorder } } NextWindow_Calc(ByRef perp, ByRef parallel, ByRef id, ByRef min, ByRef minID) { parallel /= 2 d := Sqrt(parallel*parallel+perp*perp) if (d < min) { min := d minID := id } } NextWindow_Activate(Byref id1, ByRef id2, Byref id3) { local id := id1 ? id1 : id2 ? id2 : id3 ? id3 : "" if !id return WinActivate, ahk_id %id% local window WinGetClass, window, ahk_id %id% window := "OnActivate_" . window if IsLabel(window) GoSub, %window% } NextWindow_Left() { WinGet, cId, ID, A WinGetPos, cX, cY, , cH,ahk_id%cId% cH_half := cH/2 min := A_ScreenWidth minRight := min maxY := 0 maxX := 0 WinGet windows, List, Logged In ahk_class QWidget,,Full Tilt Loop, %windows% { id := windows%A_Index% if (id == cID) continue WinGetPos, x, y, w, , ahk_id %id% dx := cX - x if (dx < 0) { dx := A_ScreenWidth - x - w if (dx < 0) dx := 0 dy := y - cY if (dy < 0) NextWindow_Calc(dy, dx, id, minRight, minRightID) } else if (dx > 9) { dy := abs(cY - y) if (dy < cH_half) NextWindow_Calc(dy, dx, id, min, minID) } if (y >= maxY) { if (x >= maxX || y > maxY + cH) { maxX := x maxY := y oppID := id } } } NextWindow_Activate(minId, minRightID, oppID) } NextWindow_Right() { WinGet, cId, ID,A WinGetPos, cX, cY, , cH,ahk_id%cId% cH_half := cH/2 min := A_ScreenWidth minLeft := min minY := min minX := min WinGet windows, List, Logged In ahk_class QWidget,,Full Tilt Loop, %windows% { id := windows%A_Index% if (id == cID) continue WinGetPos, x, y, w, , ahk_id %id% dx := x - cX if (dx < 0) { dx := x if (dx < 0) dx := 0 dy := cY - y if (dy < 0) NextWindow_Calc(dy, dx, id, minLeft, minLeftID) } else if (dx > 9) { dy := abs(cY - y) if (dy < cH_half) NextWindow_Calc(dy, dx, id, min, minID) } if (y <= minY) { if (x <= minX || y < minY - cH_half) { minX := x minY := y oppID := id } } } NextWindow_Activate(minId, minLeftID, oppID) } NextWindow_Up() { WinGet, cID, ID,A WinGetPos, cX, cY, cW,,ahk_id%cId% cW_half := cW/2 min := A_ScreenHeight minDown := min minX := min maxY := 0 WinGet windows, List, Logged In ahk_class QWidget,,Full Tilt Loop, %windows% { id := windows%A_Index% if (id == cID) continue WinGetPos, x, y, , h, ahk_id %id% dy := cY - y if (dy < 0) { dy := A_ScreenHeight - y - h if (dy < 0) dy := 0 dx := cX - x if (dx < 0) NextWindow_Calc(dx, dy, id, minDown, minDownId) } else if (dy > 9) { dx := abs(cX - x) if (dx < cW_half) NextWindow_Calc(dx, dy, id, min, minID) } if (x <= minX) { if (y >= maxY || x < minX - cW_half) { minX := x maxY := y oppID := id } } } NextWindow_Activate(minId, minDownID, oppID) } NextWindow_Down() { WinGet, cID, ID,A WinGetPos, cX, cY, cW,,ahk_id%cId% cW_half := cW/2 min := A_ScreenWidth minUp := min maxX := 0 minY := min WinGet windows, List, Logged In ahk_class QWidget,,Full Tilt Loop, %windows% { id := windows%A_Index% if (id == cID) continue WinGetPos, x, y, , , ahk_id %id% dy := y - cY dx := x - cX if (dy < 0) { dy := y if (dy < 0) dy := 0 dx := x - cX if (dx < 0) NextWindow_Calc(dx, dy, id, minUp, minUpID) } else if (dy > 9) { dx := abs(cX - x) if (dx < cW_half) NextWindow_Calc(dx, dy, id, min, minID) } if (x >= maxX) { if (y <= minY || x > maxX + cW_half) { maxX := x minY := y oppID := id } } } NextWindow_Activate(minId, minUpID, oppID) } NextWindow_Left: NextWindow_Left() return ;-------------------------------------------------------------------------------- NextWindow_Right: NextWindow_Right() return ;-------------------------------------------------------------------------------- NextWindow_Up: NextWindow_Up() return ;-------------------------------------------------------------------------------- NextWindow_Down: NextWindow_Down() return ;-------------------------------------------------------------------------------- BuildGui: Gui, color, white Gui, add, tab, h490 w300, General|Global hotkeys|BetPot|Table hotkeys|Time|Buy-in Gui, Tab, General Gui, add, text,cred y50 x35,Table view: Gui, Add, Radio, x36 y70 w180 h20 Checked%ClassicTheme% vClassicTheme, Classic Gui, Add, Radio, x36 y90 w180 h20 Checked%Racetrack% vRacetrack, Racetrack Gui, add, text,cRed y125 x85, Use these options Gui, add, text,cRed y140 x50, if you experience flicker problem Gui, add, Checkbox, y160 x60 Checked%flicker1% Vflicker1 Gui, add, text, y175 x25,set FullTilt process Gui, add, text, y190 x25,priority to high Gui, add, Checkbox, y160 x180 Checked%flicker2% Vflicker2 Gui, add, text, y175 x125,set affinity to cpu1 only Gui, add, text, y190 x125,for FullTilt process Gui, add, text, y205 x125,(Dual-core/HT cpu) Gui, add, text,cGreen y235 x25,Turning aero theme off (Vista/W7) might help Gui, add, text,cGreen y250 x25,if these settings don't work. Gui, Add, Radio, x26 y280 w220 h15 Checked%ActOnActiveTable% vActOnActiveTable, Send actions to active table Gui, Add, Radio, x26 y295 w220 h15 Checked%sendundermouse% vsendundermouse, Send actions to table under mouse Gui, add, text, y315 x25, Activate table under mouse Gui, add, Checkbox, y315 x220 Checked%activatetableundermouse% Vactivatetableundermouse Gui, add, text, y340 x105, Highlighter on Gui, add, Checkbox, y340 x180 Checked%Highlight% VHighlight Gui, Add, Radio, x25 y365 w90 h15 Checked%Highlightdef% vHighlightdef, Highlight table Gui, Add, Radio, x25 y390 w220 h15 Checked%highlightA% vhighlightA, Highlight all tables with action on hero Gui, Add,text, y355 x325, Gui, Add, Radio, x126 y360 w120 h15 Checked%highlightactive% vhighlightactive, Active Gui, Add, Radio, x126 y375 w120 h15 Checked%highlighthero% vhighlighthero, With action on hero Gui, add, text, y420 x25, Move mouse to action buttons Gui, add, Checkbox, y420 x220 Checked%MoveMouse% VMoveMouse Gui, add, text, y440 x65, Move mouse from nonfulltilt app Gui, add, Checkbox, y440 x220 Checked%stealfocus% Vstealfocus Gui, Add, Button, x75 y465 w55 h20 gSave,Submit Gui, Add, Button, x135 y465 w55 h20 gCancel,Cancel Gui, Tab, Global hotkeys Gui, Add, Text, x25 y75 ,Find table needing action Gui, Add, Edit, x220 y72 w50 h20 vfindtabletoact, %findtabletoact% Gui, Add, Text, x25 y115 ,join/unjoin waiting list (main lobby) Gui, Add, Edit, x220 y112 w50 h20 vregister, %register% Gui, Add, Text, x25 y140 ,Join waiting list on all tables Gui, Add, Edit, x220 y137 w50 h20 vjoinwaitlist, %joinwaitlist% Gui, Add, Text, x25 y165 ,Unjoin waiting list on all tables Gui, Add, Edit, x220 y162 w50 h20 vunjoinwaitlist, %unjoinwaitlist% Gui, Add, Text, x25 y215 ,Activate next table Gui, Add, Edit, x220 y212 w50 h20 vActivateBottomWindow, %ActivateBottomWindow% Gui, Add, Text, x25 y245 ,Custom layout 1 Gui, Add, Edit, x220 y242 w50 h20 vlayout1, %layout1% Gui, Add, Text, x25 y265 ,Custom layout 2 Gui, Add, Edit, x220 y262 w50 h20 vlayout2, %layout2% Gui, Add, Text, x25 y285 ,Custom layout 3 Gui, Add, Edit, x220 y282 w50 h20 vlayout3, %layout3% Gui, Add, Text, x25 y315 ,Suspend all hotkeys Gui, Add, Edit, x220 y312 w50 h20 vsuspend, %suspend% Gui, Add, Text, x25 y335 ,Pause/unpause Gui, Add, Edit, x220 y332 w50 h20 vTogglePause, %TogglePause% Gui, Add, Text, x90 y350 , Navigation Hotkeys Gui, Add, Text, x25 y370 , Up Gui, Add, Edit, x180 y370 w50 h20 vNextWindow_Up, %NextWindow_Up% Gui, Add, Text, x25 y390 , Down Gui, Add, Edit, x180 y390 w50 h20 vNextWindow_Down, %NextWindow_Down% Gui, Add, Text, x25 y410 , Left Gui, Add, Edit, x180 y410 w50 h20 vNextWindow_Left, %NextWindow_Left% Gui, Add, Text, x25 y430 , Right Gui, Add, Edit, x180 y430 w50 h20 vNextWindow_Right, %NextWindow_Right% Gui, Add, Button, x95 y460 w55 h20 gSave,Submit Gui, Add, Button, x155 y460 w55 h20 gCancel,Cancel Gui, Tab, Time Gui, add, Checkbox, y75 x200 Checked%Timebank% VTimebank Gui, add, text, y75 x25,Click Timebank automatically Gui, add, Text, w200 y95 x25, Time delay for pressing Time button Gui, add, DropDownList, w40 y90 x220 vInterval1, %ddlist% Gui, add, text, y135 x25, Click "Deal me in" automatically Gui, add, Checkbox, y135 x200 Checked%dealmein% Vdealmein Gui, Add, Text, x25 y155 w120 h20 , Toggle Deal me in Gui, Add, Edit, x180 y152 w50 h20 vToggledealmein, %Toggledealmein% Gui, Add, Text, x25 y180 ,Sitout on all tables Gui, Add, Edit, x180 y177 w50 h20 vSitOutNextAll, %SitOutNextAll% Gui, Add, Text, x25 y205 ,Remove sitout on all tables Gui, Add, Edit, x180 y202 w50 h20 vRemoveSitout, %RemoveSitout% Gui, Add, Text, x25 y235 ,Uncheck Auto-post on all tables Gui, Add, Edit, x180 y232 w50 h20 vuncheckpost, %uncheckpost% Gui, Add, Button, x75 y415 w55 h20 gSave,Submit Gui, Add, Button, x135 y415 w55 h20 gCancel,Cancel Gui, Tab, Table hotkeys Gui, Add, Edit, x180 y67 w50 h20 vfold, %fold% Gui, Add, Text, x25 y70 ,Fold Gui, Add, Edit, x180 y87 w50 h20 vcall, %call% Gui, Add, Text, x25 y90 ,Check/Call Gui, Add, Edit, x180 y107 w50 h20 vraise, %raise% Gui, Add, Text, x25 y110 ,Bet/Raise Gui, Add, Edit, x180 y127 w50 h20 vfold2any, %fold2any% Gui, Add, Text, x25 y130 ,Fold to any Gui, Add, Edit, x180 y147 w50 h20 vquickfold, %quickfold% Gui, Add, Text, x25 y150 ,Quick fold (Rush poker) Gui, Add, Edit, x180 y167 w50 h20 vallin, %allin% Gui, Add, Text, x25 y170 ,Allin Gui, add, Checkbox, y170 x240 Checked%Instant% VInstant,Instant Gui, Add, Button, x75 y315 w55 h20 gSave,Submit Gui, Add, Button, x135 y315 w55 h20 gCancel,Cancel Gui, Tab, Buy-in Gui, add, Checkbox, y60 x90 Checked%Buyin% VBuyin Gui, add, text, y60 x25,Auto Buy-in Gui, Add, Radio, x120 y50 w100 h20 Checked%max% vmax, Maximum Gui, Add, Radio, x120 y70 w120 h20 Checked%remembered% vremembered, Remembered/default Gui, Add, Radio, x120 y90 w20 h20 Checked%xbb% vxbb Gui, Add, Edit, x140 y90 w30 h20 vbbmultiplier, %bbmultiplier% Gui, Add, Text, x170 y93,BB Gui, add, Checkbox, y120 x190 Checked%TakeSeat% VTakeSeat Gui, add, text, y120 x25,Auto Take Seat (from waiting list) Gui, add, Checkbox, y165 x190 Checked%autoTakeSeat% VautoTakeSeat Gui, add, text, y165 x25,Auto Seat on new table Gui, add, Checkbox, y190 x190 Checked%leavetable% Vleavetable Gui, add, text, y190 x25,Auto leaving table confirmation Gui, Add, Text, x26 y265 ,Limit total number of tables to Gui, Add, Edit, x170 y262 w30 h20 vtotalnumber, %totalnumber% Gui, add, Checkbox, y265 x230 Checked%limit% Vlimit Gui, Add, Text, x16 y285 ,additionally press following button in seat available window: Gui, Add, Radio, x26 y305 w220 h15 Checked%remove% vremove, Remove me from all waiting lists Gui, Add, Radio, x26 y320 w220 h15 Checked%pressno% vpressno, No Gui, Add, Radio, x26 y335 w220 h15 Checked%pressnotyet% vpressnotyet, Not yet Gui, add, Checkbox, y390 x250 Checked%closeOKwindow% VcloseOKwindow Gui, add, text, y390 x25,Close FullTilt windows with just OK button Gui, Add, Button, x75 y435 w55 h20 gSave,Submit Gui, Add, Button, x135 y435 w55 h20 gCancel,Cancel Gui, Tab, BetPot Gui, add, Checkbox, y55 x180 Checked%autopot% Vautopot Gui, add, text, y55 x25,Auto put bet into bet box Gui, Add, Text, x15 y70 ,Pre* Gui, Add, Edit, x15 y85 w25 h20 vPotDefPre, %PotDefPre% Gui, Add, Text, x45 y70 ,Flop* Gui, Add, Edit, x45 y85 w25 h20 vPotDefFlop, %PotDefFlop% Gui, Add, Text, x75 y70 ,Turn* Gui, Add, Edit, x75 y85 w25 h20 vPotDefTurn, %PotDefTurn% Gui, Add, Text, x105 y70 ,River* Gui, Add, Edit, x105 y85 w25 h20 vPotDefRiver, %PotDefRiver% Gui, Add, Text, x140 y70 ,Open Gui, add, DropDownList, w45 y85 x140 vOpenDef, %ddlist1% Gui, Add, Text, x175 y70 ,Round(sb) Gui, add, Checkbox, y85 x200 Checked%RoundDef% VRoundDef Gui, Add, Text, x230 y70 ,Fix blinds Gui, add, Checkbox, y85 x250 Checked%FixDef% VFixDef Gui, Add, Edit, x60 y107 w80 h20 vpot1, %pot1% Gui, Add, Text, x15 y110 ,Pot1 Gui, Add, Text, x15 y130 ,Pre* Gui, Add, Edit, x15 y145 w25 h20 vPot1Pre, %Pot1Pre% Gui, Add, Text, x45 y130 ,Flop* Gui, Add, Edit, x45 y145 w25 h20 vPot1Flop, %Pot1Flop% Gui, Add, Text, x75 y130 ,Turn* Gui, Add, Edit, x75 y145 w25 h20 vPot1Turn, %Pot1Turn% Gui, Add, Text, x105 y130 ,River* Gui, Add, Edit, x105 y145 w25 h20 vPot1River, %Pot1River% Gui, Add, Text, x140 y130 ,Open Gui, add, DropDownList, w45 y145 x140 vOpen1, %ddlist1% Gui, Add, Text, x175 y130 ,Round(sb) Gui, add, Checkbox, y145 x200 Checked%Round1% VRound1 Gui, Add, Text, x230 y130 ,Fix blinds Gui, add, Checkbox, y145 x250 Checked%Fix1% VFix1 Gui, Add, Edit, x60 y167 w80 h20 vpot2, %pot2% Gui, Add, Text, x15 y170 ,Pot2 Gui, Add, Edit, x15 y190 w25 h20 vPot2Pre, %Pot2Pre% Gui, Add, Edit, x45 y190 w25 h20 vPot2Flop, %Pot2Flop% Gui, Add, Edit, x75 y190 w25 h20 vPot2Turn, %Pot2Turn% Gui, Add, Edit, x105 y190 w25 h20 vPot2River, %Pot2River% Gui, add, DropDownList, w45 y190 x140 vOpen2, %ddlist1% Gui, add, Checkbox, y190 x200 Checked%Round2% VRound2 Gui, add, Checkbox, y190 x250 Checked%Fix2% VFix2 Gui, Add, Edit, x60 y212 w80 h20 vpot3, %pot3% Gui, Add, Text, x15 y215 ,Pot3 Gui, Add, Edit, x15 y235 w25 h20 vPot3Pre, %Pot3Pre% Gui, Add, Edit, x45 y235 w25 h20 vPot3Flop, %Pot3Flop% Gui, Add, Edit, x75 y235 w25 h20 vPot3Turn, %Pot3Turn% Gui, Add, Edit, x105 y235 w25 h20 vPot3River, %Pot3River% Gui, add, DropDownList, w45 y235 x140 vOpen3, %ddlist1% Gui, add, Checkbox, y235 x200 Checked%Round3% VRound3 Gui, add, Checkbox, y235 x250 Checked%Fix3% VFix3 Gui, add, Checkbox, y260 x210 Checked%autobet% Vautobet Gui, add, text, y260 x55,Additionally press bet button Gui, Add, Edit, x80 y282 w40 h20 vincr1, %incr1% Gui, Add, Text, x15 y285 ,Increase by Gui, Add, Radio, x125 y280 w40 h15 Checked%bb1% vbb1,bb Gui, Add, Radio, x125 y295 w40 h15 Checked%sb1% vsb1,sb Gui, Add, Edit, x190 y282 w80 h20 valt1, %alt1% Gui, Add, Edit, x80 y312 w40 h20 vincr2, %incr2% Gui, Add, Text, x15 y315 ,Decrease by Gui, Add, Radio, x125 y310 w40 h15 Checked%bb2% vbb2,bb Gui, Add, Radio, x125 y325 w40 h15 Checked%sb2% vsb2,sb Gui, Add, Edit, x190 y312 w80 h20 valt2, %alt2% Gui, Add, Edit, x80 y342 w40 h20 vincr3, %incr3% Gui, Add, Text, x15 y345 ,Increase by Gui, Add, Radio, x125 y340 w40 h15 Checked%bb3% vbb3,bb Gui, Add, Radio, x125 y355 w40 h15 Checked%sb3% vsb3,sb Gui, Add, Edit, x190 y342 w80 h20 valt3, %alt3% Gui, Add, Edit, x80 y372 w40 h20 vincr4, %incr4% Gui, Add, Text, x15 y375 ,Decrease by Gui, Add, Radio, x125 y370 w40 h15 Checked%bb4% vbb4,bb Gui, Add, Radio, x125 y385 w40 h15 Checked%sb4% vsb4,sb Gui, Add, Edit, x190 y372 w80 h20 valt4, %alt4% Gui, Add, Text, x15 y400 ,Attempts to read Pot amount from screen Gui, Add, Edit, x230 y397 w25 h20 vattempts, %attempts% Gui, Add, Text, x15 y420 ,* Pot percent Gui, add, text,cRed y440 x35,BetPot function will work faster with aero theme off Gui, Add, Button, x75 y460 w55 h20 gSave,Submit Gui, Add, Button, x135 y460 w55 h20 gCancel,Cancel Gosub, GetIni Gui, show, w316, %thisahk% Return ;----------------------------------------------------------------------------------------------------- GetIni: Settitlematchmode,2 IfNotExist, %thisahk%.ini gosub, CreateIni IniRead, ClassicTheme,%thisahk%.ini, Options, ClassicTheme,0 IniRead, Racetrack,%thisahk%.ini, Options, Racetrack,0 IniRead, ActOnActiveTable, %thisahk%.ini, Options, ActOnActiveTable, 0 IniRead, sendundermouse, %thisahk%.ini, Options, sendundermouse, 0 IniRead, activatetableundermouse, %thisahk%.ini, Settings, activatetableundermouse, 0 IniRead, Highlight, %thisahk%.ini, Settings, Highlight, 0 IniRead, Highlightdef, %thisahk%.ini, Options, Highlightdef, 0 IniRead, HighlightA, %thisahk%.ini, Options, HighlightA, 0 IniRead, highlighthero, %thisahk%.ini, Options, highlighthero, 0 IniRead, highlightactive, %thisahk%.ini, Options, highlightactive, 0 IniRead, MoveMouse, %thisahk%.ini, Settings, MoveMouse, 0 IniRead, stealfocus, %thisahk%.ini, Settings, stealfocus, 0 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, Toggledealmein, %thisahk%.ini, Settings, Toggledealmein,%A_Space% If Toggledealmein { HotKey, IfWinActive, ahk_class QWidget Hotkey, %Toggledealmein%, Toggledealmein } IniRead, Timebank, %thisahk%.ini, Settings, Timebank, 0 IniRead, SitOutNextAll, %thisahk%.ini, Hotkeys, SitOutNextAll,%A_Space% IniRead, RemoveSitout, %thisahk%.ini, Hotkeys, RemoveSitout,%A_Space% IniRead, uncheckpost, %thisahk%.ini, Hotkeys, uncheckpost,%A_Space% if SitOutNextAll Hotkey, %SitOutNextAll%,SitOutNextAll if RemoveSitout Hotkey, %RemoveSitout%,RemoveSitout if uncheckpost Hotkey, %uncheckpost%,uncheckpost IniRead, findtabletoact, %thisahk%.ini, Hotkeys, findtabletoact,%A_Space% if findtabletoact Hotkey, %findtabletoact%,findtabletoact IniRead, register, %thisahk%.ini, Settings, register,%A_Space% IniRead, joinwaitlist, %thisahk%.ini, Settings, joinwaitlist,%A_Space% IniRead, Unjoinwaitlist, %thisahk%.ini, Settings, Unjoinwaitlist,%A_Space% if register Hotkey, %register%,register if joinwaitlist Hotkey, %joinwaitlist%,joinwaitlist if Unjoinwaitlist Hotkey, %Unjoinwaitlist%,Unjoinwaitlist IniRead, ActivateBottomWindow, %thisahk%.ini, Hotkeys, ActivateBottomWindow,%A_Space% if ActivateBottomWindow Hotkey, %ActivateBottomWindow%,ActivateBottomWindow IniRead, suspend, %thisahk%.ini, Hotkeys, suspend,%A_Space% if suspend Hotkey, %suspend%,suspend IniRead, TogglePause, %thisahk%.ini, Hotkeys, TogglePause,%A_Space% if TogglePause Hotkey, %TogglePause%,TogglePause IniRead, layout1, %thisahk%.ini, Hotkeys, layout1,%A_Space% if layout1 Hotkey, %layout1%,layout1 IniRead, layout2, %thisahk%.ini, Hotkeys, layout2,%A_Space% if layout2 Hotkey, %layout2%,layout2 IniRead, layout3, %thisahk%.ini, Hotkeys, layout3,%A_Space% if layout3 Hotkey, %layout3%,layout3 IniRead, NextWindow_Up,%thisahk%.ini, Hotkeys, NextWindow_Up,%A_Space% IniRead, NextWindow_Down,%thisahk%.ini, Hotkeys, NextWindow_Down,%A_Space% IniRead, NextWindow_Left,%thisahk%.ini, Hotkeys, NextWindow_Left,%A_Space% IniRead, NextWindow_Right,%thisahk%.ini, Hotkeys, NextWindow_Right,%A_Space% if NextWindow_Up { HotKey, IfWinActive, ahk_class QWidget Hotkey, %NextWindow_Up%, NextWindow_Up } if NextWindow_Down { HotKey, IfWinActive, ahk_class QWidget Hotkey, %NextWindow_Down%, NextWindow_Down } if NextWindow_Left { HotKey, IfWinActive, ahk_class QWidget Hotkey, %NextWindow_Left%, NextWindow_Left } if NextWindow_Right { HotKey, IfWinActive, ahk_class QWidget Hotkey, %NextWindow_Right%, NextWindow_Right } IniRead, fold, %thisahk%.ini, Hotkeys, fold,%A_Space% IniRead, call, %thisahk%.ini, Hotkeys, call,%A_Space% IniRead, raise, %thisahk%.ini, Hotkeys, raise,%A_Space% IniRead, fold2any, %thisahk%.ini, Hotkeys, fold2any,%A_Space% IniRead, quickfold, %thisahk%.ini, Hotkeys, quickfold,%A_Space% IniRead, allin, %thisahk%.ini, Hotkeys, allin,%A_Space% if fold { HotKey, IfWinActive Hotkey, %fold%,fold } if call { HotKey, IfWinActive Hotkey, %call%,call } if raise { HotKey, IfWinActive Hotkey, %raise%,raise } if fold2any { HotKey, IfWinActive Hotkey, %fold2any%,fold2any } if quickfold { HotKey, IfWinActive Hotkey, %quickfold%,quickfold } if allin { HotKey, IfWinActive Hotkey, %allin%,allin } IniRead, Instant, %thisahk%.ini, Settings, Instant, 0 IniRead, totalnumber, %thisahk%.ini, Variables, totalnumber, 0 IniRead, limit, %thisahk%.ini, Settings, limit, 0 IniRead, remove,%thisahk%.ini, Options, remove,0 IniRead, pressno,%thisahk%.ini, Options, pressno,0 IniRead, pressnotyet,%thisahk%.ini, Options, pressnotyet,0 IniRead, TakeSeat, %thisahk%.ini, Settings, TakeSeat, 0 IniRead, autoTakeSeat, %thisahk%.ini, Settings, autoTakeSeat, 0 IniRead, closeOKwindow, %thisahk%.ini, Settings, closeOKwindow, 0 IniRead, Buyin, %thisahk%.ini, Settings, Buyin, 0 IniRead, max, %thisahk%.ini, Settings, max, 0 IniRead, remembered, %thisahk%.ini, Settings, remembered, 0 IniRead, xbb, %thisahk%.ini, Settings, xbb, 0 IniRead, bbmultiplier, %thisahk%.ini, Variables, bbmultiplier,0 IniRead, leavetable, %thisahk%.ini, Settings, leavetable,0 IniRead, OpenDef, %thisahk%.ini, BetPotSettings, OpenDef StringReplace, ddlist1, ddlist1, %OpenDef%, %OpenDef%| GuiControl, , OpenDef, |%ddlist1% StringReplace, ddlist1, ddlist1, %OpenDef%|, %OpenDef% IniRead, RoundDef, %thisahk%.ini, BetPotSettings, RoundDef, 0 IniRead, FixDef, %thisahk%.ini, BetPotSettings, FixDef, 0 IniRead, PotDefPre, %thisahk%.ini, BetPotSettings, PotDefPre, 0 IniRead, PotDefFlop, %thisahk%.ini, BetPotSettings, PotDefFlop, 0 IniRead, PotDefTurn, %thisahk%.ini, BetPotSettings, PotDefTurn, 0 IniRead, PotDefRiver, %thisahk%.ini, BetPotSettings, PotDefRiver, 0 IniRead, Open1, %thisahk%.ini, BetPotSettings, Open1 StringReplace, ddlist1, ddlist1, %Open1%, %Open1%| GuiControl, , Open1, |%ddlist1% StringReplace, ddlist1, ddlist1, %Open1%|, %Open1% IniRead, Round1, %thisahk%.ini, BetPotSettings, Round1, 0 IniRead, Fix1, %thisahk%.ini, BetPotSettings, Fix1, 0 IniRead, Pot1Pre, %thisahk%.ini, BetPotSettings, Pot1Pre, 0 IniRead, Pot1Flop, %thisahk%.ini, BetPotSettings, Pot1Flop, 0 IniRead, Pot1Turn, %thisahk%.ini, BetPotSettings, Pot1Turn, 0 IniRead, Pot1River, %thisahk%.ini, BetPotSettings, Pot1River, 0 IniRead, pot1, %thisahk%.ini, BetPotHotkeys, pot1,%A_Space% if pot1 { HotKey, IfWinActive Hotkey, %pot1%,pot1 } IniRead, Open2, %thisahk%.ini, BetPotSettings, Open2 StringReplace, ddlist1, ddlist1, %Open2%, %Open2%| GuiControl, , Open2, |%ddlist1% StringReplace, ddlist1, ddlist1, %Open2%|, %Open2% IniRead, Round2, %thisahk%.ini, BetPotSettings, Round2, 0 IniRead, Fix2, %thisahk%.ini, BetPotSettings, Fix2, 0 IniRead, Pot2Pre, %thisahk%.ini, BetPotSettings, Pot2Pre, 0 IniRead, Pot2Flop, %thisahk%.ini, BetPotSettings, Pot2Flop, 0 IniRead, Pot2Turn, %thisahk%.ini, BetPotSettings, Pot2Turn, 0 IniRead, Pot2River, %thisahk%.ini, BetPotSettings, Pot2River, 0 IniRead, pot2, %thisahk%.ini, BetPotHotkeys, pot2,%A_Space% if pot2 { HotKey, IfWinActive Hotkey, %pot2%,pot2 } IniRead, Open3, %thisahk%.ini, BetPotSettings, Open3 StringReplace, ddlist1, ddlist1, %Open3%, %Open3%| GuiControl, , Open3, |%ddlist1% StringReplace, ddlist1, ddlist1, %Open3%|, %Open3% IniRead, Round3, %thisahk%.ini, BetPotSettings, Round3, 0 IniRead, Fix3, %thisahk%.ini, BetPotSettings, Fix3, 0 IniRead, Pot3Pre, %thisahk%.ini, BetPotSettings, Pot3Pre, 0 IniRead, Pot3Flop, %thisahk%.ini, BetPotSettings, Pot3Flop, 0 IniRead, Pot3Turn, %thisahk%.ini, BetPotSettings, Pot3Turn, 0 IniRead, Pot3River, %thisahk%.ini, BetPotSettings, Pot3River, 0 IniRead, pot3, %thisahk%.ini, BetPotHotkeys, pot3,%A_Space% if pot3 { HotKey, IfWinActive Hotkey, %pot3%,pot3 } IniRead, incr1, %thisahk%.ini, BetPotSettings, incr1, 0 IniRead, bb1, %thisahk%.ini, BetPotSettings, bb1, 0 IniRead, sb1, %thisahk%.ini, BetPotSettings, sb1, 0 IniRead, alt1, %thisahk%.ini, BetPotHotkeys, alt1, %A_Space% if alt1 { HotKey, IfWinActive, ahk_class QWidget Hotkey, %alt1%,alt1 } IniRead, incr2, %thisahk%.ini, BetPotSettings, incr2, 0 IniRead, bb2, %thisahk%.ini, BetPotSettings, bb2, 0 IniRead, sb2, %thisahk%.ini, BetPotSettings, sb2, 0 IniRead, alt2, %thisahk%.ini, BetPotHotkeys, alt2, %A_Space% if alt2 { HotKey, IfWinActive, ahk_class QWidget Hotkey, %alt2%,alt2 } IniRead, incr3, %thisahk%.ini, BetPotSettings, incr3, 0 IniRead, bb3, %thisahk%.ini, BetPotSettings, bb3, 0 IniRead, sb3, %thisahk%.ini, BetPotSettings, sb3, 0 IniRead, alt3, %thisahk%.ini, BetPotHotkeys, alt3, %A_Space% if alt3 { HotKey, IfWinActive, ahk_class QWidget Hotkey, %alt3%,alt3 } IniRead, incr4, %thisahk%.ini, BetPotSettings, incr4, 0 IniRead, bb4, %thisahk%.ini, BetPotSettings, bb4, 0 IniRead, sb4, %thisahk%.ini, BetPotSettings, sb4, 0 IniRead, alt4, %thisahk%.ini, BetPotHotkeys, alt4, %A_Space% if alt4 { HotKey, IfWinActive, ahk_class QWidget Hotkey, %alt4%,alt4 } IniRead, autopot, %thisahk%.ini, BetPotSettings, autopot, 0 IniRead, autobet, %thisahk%.ini, BetPotSettings, autobet, 0 IniRead, attempts, %thisahk%.ini, BetPotVariables, attempts, 0 Return ;----------------------------------------------------------------------------------------------------- MakeIni: If ClassicTheme IniWrite, %ClassicTheme%, %thisahk%.ini, Options, ClassicTheme If Racetrack IniWrite, %Racetrack%, %thisahk%.ini, Options, Racetrack if ActOnActiveTable IniWrite, %ActOnActiveTable%, %thisahk%.ini, Options, ActOnActiveTable if sendundermouse IniWrite, %sendundermouse%, %thisahk%.ini, Options, sendundermouse IniWrite, %activatetableundermouse%, %thisahk%.ini, Settings, activatetableundermouse IniWrite, %Highlight%, %thisahk%.ini, Settings, Highlight if Highlightdef IniWrite, %Highlightdef%, %thisahk%.ini, Options, Highlightdef if HighlightA IniWrite, %HighlightA%, %thisahk%.ini, Options, HighlightA if highlighthero IniWrite, %highlighthero%, %thisahk%.ini, Options, highlighthero if highlightactive IniWrite, %highlightactive%, %thisahk%.ini, Options, highlightactive IniWrite, %MoveMouse%, %thisahk%.ini, Settings, MoveMouse IniWrite, %stealfocus%, %thisahk%.ini, Settings, stealfocus 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 Toggledealmein IniWrite, %Toggledealmein%, %thisahk%.ini, Settings, Toggledealmein IniWrite, %Timebank%, %thisahk%.ini, Settings, Timebank if SitOutNextAll IniWrite, %SitOutNextAll%, %thisahk%.ini, Hotkeys, SitOutNextAll if RemoveSitout IniWrite, %RemoveSitout%, %thisahk%.ini, Hotkeys, RemoveSitout if uncheckpost IniWrite, %uncheckpost%, %thisahk%.ini, Hotkeys, uncheckpost if findtabletoact IniWrite, %findtabletoact%, %thisahk%.ini, Hotkeys, findtabletoact if register IniWrite, %register%, %thisahk%.ini, Settings, register if joinwaitlist IniWrite, %joinwaitlist%, %thisahk%.ini, Settings, joinwaitlist if Unjoinwaitlist IniWrite, %Unjoinwaitlist%, %thisahk%.ini, Settings, Unjoinwaitlist if ActivateBottomWindow IniWrite, %ActivateBottomWindow%, %thisahk%.ini, Hotkeys, ActivateBottomWindow if suspend IniWrite, %suspend%, %thisahk%.ini, Hotkeys, suspend if TogglePause IniWrite, %TogglePause%, %thisahk%.ini, Hotkeys, TogglePause if layout1 IniWrite, %layout1%, %thisahk%.ini, Hotkeys, layout1 if layout2 IniWrite, %layout2%, %thisahk%.ini, Hotkeys, layout2 if layout3 IniWrite, %layout3%, %thisahk%.ini, Hotkeys, layout3 If NextWindow_Up IniWrite, %NextWindow_Up%, %thisahk%.ini, Hotkeys, NextWindow_Up If NextWindow_Down IniWrite, %NextWindow_Down%, %thisahk%.ini, Hotkeys, NextWindow_Down If NextWindow_Left IniWrite, %NextWindow_Left%, %thisahk%.ini, Hotkeys, NextWindow_Left If NextWindow_Right IniWrite, %NextWindow_Right%, %thisahk%.ini, Hotkeys, NextWindow_Right if fold IniWrite, %fold%, %thisahk%.ini, Hotkeys, fold if call IniWrite, %call%, %thisahk%.ini, Hotkeys, call if raise IniWrite, %raise%, %thisahk%.ini, Hotkeys, raise if fold2any IniWrite, %fold2any%, %thisahk%.ini, Hotkeys, fold2any if quickfold IniWrite, %quickfold%, %thisahk%.ini, Hotkeys, quickfold if allin IniWrite, %allin%, %thisahk%.ini, Hotkeys, allin IniWrite, %Instant%, %thisahk%.ini, Settings, Instant IniWrite, %totalnumber%, %thisahk%.ini, Variables, totalnumber IniWrite, %limit%, %thisahk%.ini, Settings, limit If remove IniWrite, %remove%, %thisahk%.ini, Options, remove If pressno IniWrite, %pressno%, %thisahk%.ini, Options, pressno If pressnotyet IniWrite, %pressnotyet%, %thisahk%.ini, Options, pressnotyet IniWrite, %TakeSeat%, %thisahk%.ini, Settings, TakeSeat IniWrite, %autoTakeSeat%, %thisahk%.ini, Settings, autoTakeSeat IniWrite, %closeOKwindow%, %thisahk%.ini, Settings, closeOKwindow IniWrite, %Buyin%, %thisahk%.ini, Settings, Buyin if max IniWrite, %max%, %thisahk%.ini, Settings, max if remembered IniWrite, %remembered%, %thisahk%.ini, Settings, remembered if xbb IniWrite, %xbb%, %thisahk%.ini, Settings, xbb IniWrite, %bbmultiplier%, %thisahk%.ini, Variables, bbmultiplier IniWrite, %leavetable%, %thisahk%.ini, Settings, leavetable IniWrite, %OpenDef%, %thisahk%.ini, BetPotSettings, OpenDef IniWrite, %RoundDef%, %thisahk%.ini, BetPotSettings, RoundDef IniWrite, %FixDef%, %thisahk%.ini, BetPotSettings, FixDef IniWrite, %PotDefPre%, %thisahk%.ini, BetPotSettings, PotDefPre IniWrite, %PotDefFlop%, %thisahk%.ini, BetPotSettings, PotDefFlop IniWrite, %PotDefTurn%, %thisahk%.ini, BetPotSettings, PotDefTurn IniWrite, %PotDefRiver%, %thisahk%.ini, BetPotSettings, PotDefRiver IniWrite, %Open1%, %thisahk%.ini, BetPotSettings, Open1 IniWrite, %Round1%, %thisahk%.ini, BetPotSettings, Round1 IniWrite, %Fix1%, %thisahk%.ini, BetPotSettings, Fix1 IniWrite, %Pot1Pre%, %thisahk%.ini, BetPotSettings, Pot1Pre IniWrite, %Pot1Flop%, %thisahk%.ini, BetPotSettings, Pot1Flop IniWrite, %Pot1Turn%, %thisahk%.ini, BetPotSettings, Pot1Turn IniWrite, %Pot1River%, %thisahk%.ini, BetPotSettings, Pot1River if pot1 IniWrite, %pot1%, %thisahk%.ini, BetPotHotkeys, pot1 IniWrite, %Open2%, %thisahk%.ini, BetPotSettings, Open2 IniWrite, %Round2%, %thisahk%.ini, BetPotSettings, Round2 IniWrite, %Fix2%, %thisahk%.ini, BetPotSettings, Fix2 IniWrite, %Pot2Pre%, %thisahk%.ini, BetPotSettings, Pot2Pre IniWrite, %Pot2Flop%, %thisahk%.ini, BetPotSettings, Pot2Flop IniWrite, %Pot2Turn%, %thisahk%.ini, BetPotSettings, Pot2Turn IniWrite, %Pot2River%, %thisahk%.ini, BetPotSettings, Pot2River if pot2 IniWrite, %pot2%, %thisahk%.ini, BetPotHotkeys, pot2 IniWrite, %Open3%, %thisahk%.ini, BetPotSettings, Open3 IniWrite, %Round3%, %thisahk%.ini, BetPotSettings, Round3 IniWrite, %Fix3%, %thisahk%.ini, BetPotSettings, Fix3 IniWrite, %Pot3Pre%, %thisahk%.ini, BetPotSettings, Pot3Pre IniWrite, %Pot3Flop%, %thisahk%.ini, BetPotSettings, Pot3Flop IniWrite, %Pot3Turn%, %thisahk%.ini, BetPotSettings, Pot3Turn IniWrite, %Pot3River%, %thisahk%.ini, BetPotSettings, Pot3River if pot3 IniWrite, %pot3%, %thisahk%.ini, BetPotHotkeys, pot3 IniWrite, %incr1%, %thisahk%.ini, BetPotSettings, incr1 if bb1 IniWrite, %bb1%, %thisahk%.ini, BetPotSettings, bb1 if sb1 IniWrite, %sb1%, %thisahk%.ini, BetPotSettings, sb1 if alt1 IniWrite, %alt1%, %thisahk%.ini, BetPotHotkeys, alt1 IniWrite, %incr2%, %thisahk%.ini, BetPotSettings, incr2 if bb2 IniWrite, %bb2%, %thisahk%.ini, BetPotSettings, bb2 if sb2 IniWrite, %sb2%, %thisahk%.ini, BetPotSettings, sb2 if alt2 IniWrite, %alt2%, %thisahk%.ini, BetPotHotkeys, alt2 IniWrite, %incr3%, %thisahk%.ini, BetPotSettings, incr3 if bb3 IniWrite, %bb3%, %thisahk%.ini, BetPotSettings, bb3 if sb3 IniWrite, %sb3%, %thisahk%.ini, BetPotSettings, sb3 if alt3 IniWrite, %alt3%, %thisahk%.ini, BetPotHotkeys, alt3 IniWrite, %incr4%, %thisahk%.ini, BetPotSettings, incr4 if bb4 IniWrite, %bb4%, %thisahk%.ini, BetPotSettings, bb4 if sb4 IniWrite, %sb4%, %thisahk%.ini, BetPotSettings, sb4 if alt4 IniWrite, %alt4%, %thisahk%.ini, BetPotHotkeys, alt4 IniWrite, %autopot%, %thisahk%.ini, BetPotSettings, autopot IniWrite, %autobet%, %thisahk%.ini, BetPotSettings, autobet IniWrite, %attempts%, %thisahk%.ini, BetPotVariables, attempts Return ;----------------------------------------------------------------------------------------------------- CreateIni: Racetrack:=0 ClassicTheme:=1 ActOnActiveTable:=1 sendundermouse:=0 activatetableundermouse:=0 Highlight:=0 Highlightdef:=1 HighlightA:=0 highlightactive:=1 highlighthero:=0 MoveMouse:=0 stealfocus:=1 flicker1:=1 flicker2:=0 Interval1:=1 dealmein:=0 Timebank:=0 Instant:=0 register=^r NextWindow_Up=Up NextWindow_Down=Down NextWindow_Left=Left NextWindow_Right=Right limit:=0 remove:=0 pressno:=0 pressnotyet:=1 totalnumber:=12 TakeSeat:=0 autoTakeSeat:=0 closeOKwindow:=1 Buyin:=0 remembered:=1 bbmultiplier:=40 autopot:=0 autobet:=0 OpenDef=ssnl Open1=ssnl Open2=trny Open3=---- RoundDef:=1 Round1:=1 Round2:=1 Round3:=1 fixDef:=1 fix1:=1 fix2:=1 fix3:=1 PotDefPre:=75 PotDefFlop:=75 PotDefTurn:=66 PotDefRiver:=66 Pot1Pre:=75 Pot1Flop:=75 Pot1Turn:=66 Pot1River:=66 Pot2Pre:=100 Pot2Flop:=80 Pot2Turn:=80 Pot2River:=80 Pot3Pre:=100 Pot3Flop:=100 Pot3Turn:=100 Pot3River:=100 Pot1=mbutton Pot2=xbutton1 Pot3=xbutton2 incr1:=1 incr2:=1 incr3:=1 incr4:=1 bb1:=1 sb1:=0 bb2:=1 sb2:=0 bb3:=0 sb3:=1 bb4:=0 sb4:=1 alt1=wheelup alt2=wheeldown alt3=^wheelup alt4=^wheeldown attempts:=1 gosub, MakeIni gosub, buildgui return ;----------------------------------------------------------------------------------------------------- GuiClose: gosub, cancel return ;----------------------------------------------------------------------------------------------------- menuGui: gosub, getini winget,id,id, %thisahk% ahk_class AutoHotkeyGUI if !DllCall( "IsWindowVisible", "UInt",id) gosub, buildgui else winactivate,ahk_id%id% Gui, Submit,nohide return ;----------------------------------------------------------------------------------------------------- reload: reload return ;----------------------------------------------------------------------------------------------------- Save: Gui, Submit FileDelete, %thisahk%.ini gosub, MakeIni Reload return ;----------------------------------------------------------------------------------------------------- Cancel: Gui, Destroy Return ;----------------------------------------------------------------------------------------------------- TogglePause: pause,toggle return ;----------------------------------------------------------------------------------------------------- Suspend: suspend if A_IsSuspended=0 { T=Off } else { T=On } Gui, 13:Add, Text,,Suspend: %T% Gui, 13:+ToolWindow Gui, 13:Show, w150 h20 Sleep, 1500 Gui, 13:Destroy return ;----------------------------------------------------------------------------------------------------- Edit: edit return ;----------------------------------------------------------------------------------------------------- exitSub: DllCall( "gdi32.dll\ReleaseDC", "Uint", tmp_buffer ) DllCall( "gdi32.dll\DeleteDC", "Uint", tmp_buffer ) DllCall( "gdi32.dll\DeleteObject","Uint",hbm_buffer) DllCall( "gdi32.dll\ReleaseDC","Uint",hdc_buffer) DllCall( "gdi32.dll\DeleteDC","Uint",hdc_buffer) DllCall( "gdi32.dll\ReleaseDC","Uint",hdc_frame) DllCall( "gdi32.dll\DeleteDC","Uint",hdc_frame) if flicker1 { Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel Process, Priority, %FTP%, Normal } } exitApp return ;-----------------------------------------------------------------------------------------------------
i will reread the docs for bet pot and am sure i will be fine.
thanks again
not only did max1mums fix this problem i had above, but i had another problem that he solved after a bunch of PMs out of the thread.
high recommendation for using this and shipping max a donation instead of paying what i think are very high fees for TNFT. at least for the functionality i use, this works just as well if not better. great product and great service especially for a free product.
high recommendation for using this and shipping max a donation instead of paying what i think are very high fees for TNFT. at least for the functionality i use, this works just as well if not better. great product and great service especially for a free product.
Lots of functions are still not working, does it matter i use a custom theme?
tcs, background should be more or less monotone that's all i guess. It can be lack of administrator privileges issue.
cheers for the help btw
this is great work my man. i hope you get lots of donations.
after i clear the midyear bonus (50$ bonus yay, i am lazy ^^ ) i will ship you little somthing something.
after i clear the midyear bonus (50$ bonus yay, i am lazy ^^ ) i will ship you little somthing something.
Good luck then )
Is there any way to get the table to highlight on the outer border of the table like FTninja does?
crovax4444, rightclick script icon and choose edit, search for "outer" word, comment 4 lines above and uncomment 4 lines below.
Im struggling with the bet pot functions. If anyone could point me in the direction of the documentation i would appreciate it. I tried searching but mustnt have been doing it right.
Specifically, I don't understand what the Pot1, Pot2 and Pot3 settings are for, and if it is possible to round to big blind instead of small blind.
Specifically, I don't understand what the Pot1, Pot2 and Pot3 settings are for, and if it is possible to round to big blind instead of small blind.
Am I the only one who seems to have issues with this script on the deep ante tables? It works fine preflop, but for some reason postflop it stops working. Every other table is fine.
PM me your FTP sn too Max so I can donate to the cause. We really appreciate the work you've put into this.
PM me your FTP sn too Max so I can donate to the cause. We really appreciate the work you've put into this.
Aidan, you can find links to that info on the first page of this thread, it is not possible to round to big blind instead of small blind atm, but i'll add it as an option soon.
aislephive, title of 6max table with antes differs a bit, here is the fix http://depositfiles.com/files/17yhrcqcw
My nickname is Max1mumz on FullTilt.
aislephive, title of 6max table with antes differs a bit, here is the fix http://depositfiles.com/files/17yhrcqcw
My nickname is Max1mumz on FullTilt.
I have tried it, works fine so far, but one key seems to not works perfectly.
In table hotkeys, the key for check/call works only for the call but not for the check.
In table hotkeys, the key for check/call works only for the call but not for the check.
FTCash v1.13
Few minor fixes.
or from this link http://depositfiles.com/files/he0rml4ig
Few minor fixes.
Code:
; #### FTCash #### ; AHK version: 1.0.48.05 ; date: July 2,2010 version := "1.13" ; author: Max1mums (max1mums@overcards.com) #SingleInstance, Force #NoEnv #Persistent Settitlematchmode, 2 OnExit exitSub StringTrimRight, thisahk, A_ScriptName, 4 SetWorkingDir %A_ScriptDir% debug:=0 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, Suspend, Suspend Menu, Tray, Add, Pause, TogglePause Menu, Tray, Add Menu, Tray, Add, Edit, Edit Menu, Tray, Add Menu, Tray, Add, Exit, ExitSub OnMessage(0x112,"WM_SYSCOMMAND") WM_SYSCOMMAND(wParam) { if (A_Gui && wParam = 0xF020) ; SC_MINIMIZE { Gui, destroy return 0 } } boost:=false ; Border of the "Highlighter" border_color := "ff0000" border_coloralt := "00FF00" border_size := 5 trans := 255 SetBatchLines,1ms SetWinDelay,-1 SendMode Input SysGet, xbord, 32 SysGet, ybord, 33 SysGet, cap, 4 SysGet, border, 32 SysGet, caption, 4 ddlist= Loop 14 ddlist:=ddlist . A_index . "|" ddlist1= ddlist1.="ssnl" . "|" ddlist1.="trny" . "|" ddlist1.="mix" . "|" ddlist1.="----" . "|" gosub,getini 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) } Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel SetAffinity(FTP) } } Init() DllCall("dwmapi\DwmIsCompositionEnabled","int*",DwmIsEnabled) if !DwmIsEnabled { Gui, 98: Show, w1 h1 x1 y1, PokerWindow WinGet,PokerWindowID, id, PokerWindow hdc_frame := DllCall( "GetDC", "UInt",PokerWindowID) hdc_buffer := DllCall("gdi32.dll\CreateCompatibleDC","UInt",hdc_frame) hbm_buffer := DllCall("gdi32.dll\CreateCompatibleBitmap", "UInt",hdc_frame, "Int",A_screenwidth,"Int",A_screenheight) DllCall( "gdi32.dll\SelectObject", "UInt",hdc_buffer, "UInt",hbm_buffer) Gui, 98: Show,hide, w1 h1 x1 y1, PokerWindow } ;;;;;;;;;;;;End of init;;;;;;;;;;;;;; if Timebank settimer,clickwithdelay,100 if autopot OR Highlight OR MoveMouse settimer,act,45 if Highlight settimer,Highlighter,83 if dealmein settimer,dealin,1939 if Timebank settimer,clicktime,639 if MoveMouse settimer,MouseMove,119 settimer,BetPot,67 if activatetableundermouse settimer,activateundermouse,133 if Buyin settimer,autobuy,835 if limit or autotakeseat settimer,NewTable,267 if autotakeseat settimer,clickseatwithdelay,93 if closeOKwindow or leavetable settimer,closepopups,148 if TakeSeat settimer,TakeSeatFromWaitlist,277 return ;----------------------------------------------------------------------------------------------------- FoldFT(id) { PostclickFT(0.6218,0.9241,id) PostclickFT(0.6834,0.9358,id) PostclickFT(0.6834,0.9358,id) } return quickFoldFT(id) { PostclickFT(0.6424,0.9678,id) PostclickFT(0.6424,0.9678,id) } return CallFT(id) { PostclickFT(0.8032,0.9358,id) PostclickFT(0.8032,0.9358,id) } return RaiseFT(id) { PostclickFT(0.9356,0.9358,id) PostclickFT(0.9356,0.9358,id) } return Fold2anyFT(id) { global Racetrack WinGetTitle, title, ahk_id%id% StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 StringReplace,bb,bb,$,,1 if Racetrack { if bb<4 { click_x:=0.4325 click_y:=0.8937 } else { click_x:=0.4193 click_y:=0.9169 } } else { if bb<4 { click_x:=0.0088 click_y:=0.7472 } else { click_x:=0.0088 click_y:=0.7566 } } PostclickFT(click_x,click_y,id) } return ;----------------------------------------------------------------------------------------------------- fold: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=QWidget { FoldFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return quickfold: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=QWidget { quickFoldFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return call: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=QWidget { callFT(id) FoldFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return raise: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=QWidget { raiseFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return fold2any: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=QWidget { fold2anyFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return allin(id) { global Instant PostClickFT(0.9715,0.7632,id) if Instant raiseFT(id) } return ;----------------------------------------------------------------------------------------------------- pot1: sendmode event If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id wingetclass,class,ahk_id%id% if class=QWidget { if Round1 Roundsb:="smallblind" else Roundsb:=0.2 Pot(id,Pot1Pre A_space Pot1Flop A_space Pot1Turn A_space Pot1River, Roundsb, Open1, fix1) if autobet raiseFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return pot2: sendmode event If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id wingetclass,class,ahk_id%id% if class=QWidget { if Round2 Roundsb:="smallblind" else Roundsb:=0.2 Pot(id,Pot2Pre A_space Pot2Flop A_space Pot2Turn A_space Pot2River, Roundsb, Open2, fix2) if autobet raiseFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return pot3: sendmode event If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id wingetclass,class,ahk_id%id% if class=QWidget { if Round3 Roundsb:="smallblind" else Roundsb:=0.2 Pot(id,Pot3Pre A_space Pot3Flop A_space Pot3Turn A_space Pot3River, Roundsb, Open3, fix3) if autobet raiseFT(id) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return alt1: sendmode event If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id wingetclass,class,ahk_id%id% if class=QWidget { wingettitle,title,ahk_id%id% if !instr(title,"Full Tilt Poker -") { if sb1 sb:="sb" else sb:="" AlterAmount(id,"up", incr1, sb) } else { suspend,on send {%A_ThisHotkey%} suspend,off } } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return alt2: sendmode event If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id wingetclass,class,ahk_id%id% if class=QWidget { wingettitle,title,ahk_id%id% if !instr(title,"Full Tilt Poker -") { if sb2 sb:="sb" else sb:="" AlterAmount(id,"down", incr2, sb) } else { suspend,on send {%A_ThisHotkey%} suspend,off } } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return alt3: sendmode event If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id wingetclass,class,ahk_id%id% if class=QWidget { if !instr(title,"Full Tilt Poker -") { if sb3 sb:="sb" else sb:="" AlterAmount(id,"up", incr3, sb) } else { suspend,on send {%A_ThisHotkey%} suspend,off } } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return alt4: sendmode event If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id wingetclass,class,ahk_id%id% if class=QWidget { if !instr(title,"Full Tilt Poker -") { if sb4 sb:="sb" else sb:="" AlterAmount(id,"down", incr4, sb) } else { suspend,on send {%A_ThisHotkey%} suspend,off } } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return allin: Sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=QWidget { allin(ID) } else { suspend,on send {%A_ThisHotkey%} suspend,off } sendmode input return ;----------------------------------------------------------------------------------------------------- findtabletoact: Sendmode event WinGet, Id, ID, A wingetclass,class,ahk_id%id% if class!=QWidget { MousegetPos,,,ID wingetclass,class,ahk_id%id% } if class=QWidget findtabletoact() else { suspend,on send {%A_ThisHotkey%} suspend,off } return findtabletoact() { global DwmIsEnabled foldx:=0.6534 foldy:=0.9662 foldx1:=0.5965 foldy1:=0.9662 back_x:=0.6534 back_y:=0.9862 back_x1:=0.5965 back_y1:=0.9862 v:=20 winget,id,id,A if !DwmIsEnabled { fold:=PixelColor(foldx,foldy,id,0) bacgr:=PixelColor(foldx1,foldy1,id,0) deal:=PixelColor(back_x,back_y,id,0) deal1:=PixelColor(back_x1,back_y1,id,0) } else { col:=PixelColorA(foldx,foldy,foldx1,foldy1,0,id) stringsplit,col,col,- fold:=col1 bacgr:=col2 sleep,1 col:=PixelColorA(back_x,back_y,back_x1,back_y1,0,id) stringsplit,col,col,- deal:=col1 deal1:=col2 } if !((comparecolors(fold,bacgr,v)=0) & (comparecolors(deal,deal1,v)=1)) { winget,list,list,Logged In ahk_class QWidget,,Full Tilt loop %list% { id:=list%A_index% col:=PixelColorA(foldx,foldy,foldx1,foldy1,0,id) stringsplit,col,col,- fold:=col1 bacgr:=col2 sleep,1 col:=PixelColorA(back_x,back_y,back_x1,back_y1,0,id) stringsplit,col,col,- deal:=col1 deal1:=col2 if ((comparecolors(fold,bacgr,v)=0) & (comparecolors(deal,deal1,v)=1)) { winactivate,ahk_id%id% break } } } } return ;----------------------------------------------------------------------------------------------------- Init() { local list,id winget,list,list,Logged In ahk_class QWidget,,Full Tilt loop %list% { id:=list%A_index% seated%id%:=1 } } return ;----------------------------------------------------------------------------------------------------- BetPot: GroupAdd, FullTiltTables,Logged In ahk_class QWidget,,,Full Tilt if autopot { isbetboxnew() } return ;----------------------------------------------------------------------------------------------------- IsBetBoxNew() { global oldid,PotDefPre,PotDefFlop,PotDefTurn,PotDefRiver,RoundDef,OpenDef,FixDef,DwmIsEnabled winget winid,id,A wingetclass,class,A wingettitle,title,A if class=QWidget if (instr(title, "Logged In")>0) & (instr(title, "/")>0) { betboxX:=0.9687 betboxY:=0.8000 betboxY1:=0.8650 if !DwmIsEnabled { bet1:=PixelColor(betboxX,betboxY,winid,0) bet2:=PixelColor(betboxX,betboxY1,winid,0) } else { bet:=PixelColorA(betboxX,betboxY,betboxX,betboxY1,0,winid) stringsplit,bet,bet,- } if (winid<>oldid) { if bet1=0xffffff ;& (bet2!=0xffffff) { if bet2!=0xffffff { oldid:=winid if RoundDef Roundsb:="smallblind" else Roundsb:=0.2 sleep,15 Pot(winid,PotDefPre A_space PotDefFlop A_space PotDefTurn A_space PotDefRiver, Roundsb, OpenDef, FixDef) } } else oldid= } else { if bet1!=0xffffff oldid= } } else oldid= } return ;----------------------------------------------------------------------------------------------------- act: act() return act() { winget,list,list, / ahk_class QWidget,,Full Tilt wingetclass,class,A wingettitle,title,A ifwinnotactive,ahk_id%list1% { if class=QWidget if instr(title, "Logged In") if instr(title, "/") winactivate,ahk_id%list1% } } return ;----------------------------------------------------------------------------------------------------- activateundermouse: activatetableundermouse() return activatetableundermouse() { MousegetPos,,,WinID WinGetClass, class, ahk_id %WinID% WinGetTitle, title, ahk_id %WinID% if (class="QWidget") winactivate, ahk_id %WinID% } return ;----------------------------------------------------------------------------------------------------- ActivateBottomWindow: GroupActivate, FullTiltTables return ;----------------------------------------------------------------------------------------------------- SitOutNextAll: settimer,dealin,off WinGet, list, List,Logged In ahk_class QWidget,,Full Tilt Loop, %list% { Z:=list%A_Index% WinGetTitle, title, ahk_id%Z% StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 StringReplace,bb,bb,$,,1 if Racetrack { if bb<4 { sitx:=0.4263 sity:=0.9264 } else { sitx:=0.4125 sity:=0.9345 } } else { if bb<4 { sitx:=0.0031 sity:=0.7770 } else { sitx:=0.0031 sity:=0.7857 } } click_x:=sitx+0.0070 click_y:=sity+0.0070 WinGetPos,,, W, H, ahk_id %Z% if w>1000 Sittingout:=PixelColorA(0,0,0,sity,sitx,Z,1,15,15) else Sittingout:=PixelColorA(0,0,0,sity,sitx,Z,1,10,10) if !(instr(Sittingout,"-0-")) & !(instr(Sittingout,"1710618")) ; & !(instr(Sittingout,"16777215")) { PostClickFT(click_x, click_y, Z, 0) } } return ;----------------------------------------------------------------------------------------------------- RemoveSitout: if dealmein settimer,dealin,1639 WinGet, list, List,Logged In ahk_class QWidget,,Full Tilt Loop, %list% { Z:=list%A_Index% WinGetTitle, title, ahk_id%Z% StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 StringReplace,bb,bb,$,,1 if Racetrack { if bb<4 { sitx:=0.4263 sity:=0.9264 } else { sitx:=0.4125 sity:=0.9345 } } else { if bb<4 { sitx:=0.0031 sity:=0.7770 } else { sitx:=0.0031 sity:=0.7857 } } click_x:=sitx+0.0070 click_y:=sity+0.0070 WinGetPos,,, W, H, ahk_id %Z% if w>1000 Sittingout:=PixelColorA(0,0,0,sity,sitx,Z,1,15,15) else Sittingout:=PixelColorA(0,0,0,sity,sitx,Z,1,10,10) ; FileAppend, %Sittingout%`n`n, test.txt if (instr(Sittingout,"-0-")) || (instr(Sittingout,"1710618")) ; & !(instr(Sittingout,"16777215")) { PostClickFT(click_x, click_y, Z, 0) } } return ;----------------------------------------------------------------------------------------------------- uncheckpost: WinGet, list, List,Logged In ahk_class QWidget,,Full Tilt Loop, %list% { Z:=list%A_Index% WinGetTitle, title, ahk_id%Z% StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 StringReplace,bb,bb,$,,1 if Racetrack { if bb<4 { sitx:=0.4279 sity:=0.9744 } else { sitx:=0.4123 sity:=0.9753 } } else { sitx:=0.0042 sity:=0.8246 } click_x:=sitx+0.0070 click_y:=sity+0.0070 WinGetPos,,, W, H, ahk_id %Z% if w>1000 Sittingout:=PixelColorA(0,0,0,sity,sitx,Z,1,15,15) else if w<600 Sittingout:=PixelColorA(0,0,0,sity,sitx,Z,1,5,5) else Sittingout:=PixelColorA(0,0,0,sity,sitx,Z,1,10,10) if (instr(Sittingout,"-0-")) || (instr(Sittingout,"1710618")) ; & !(instr(Sittingout,"16777215")) { PostClickFT(click_x, click_y, Z, 0) } } return ;----------------------------------------------------------------------------------------------------- Layout1: ifwinactive,Logged In ahk_class QWidget,,Full Tilt WinGet, WinId, ID, A else MousegetPos,,,WinID wingetclass,class,ahk_id %WinID% wingettitle,title,ahk_id %WinID% if class=QWidget if !instr(title,"Full Tilt") { CX:=0.8261 CY:=0.0155 wingetpos,x1,y1,w,h,ahk_id%winid% coordmode,mouse,screen mousegetpos,x,y coordmode,mouse,relative DllCall("SetCursorPos", int, x1+w+10, int, y1+h+10) PostclickFT(cx,cy,winid,1) sleep 100 critical,6 send {Tab 7} sleep,25 Send {Enter} critical,off sleep,-1 DllCall("SetCursorPos", int, x, int, y) } return ;----------------------------------------------------------------------------------------------------- Layout2: ifwinactive,Logged In ahk_class QWidget,,Full Tilt WinGet, WinId, ID, A else MousegetPos,,,WinID wingetclass,class,ahk_id %WinID% wingettitle,title,ahk_id %WinID% if class=QWidget if !instr(title,"Full Tilt") { CX:=0.8261 CY:=0.0155 wingetpos,x1,y1,w,h,ahk_id%winid% coordmode,mouse,screen mousegetpos,x,y coordmode,mouse,relative DllCall("SetCursorPos", int, x1+w+10, int, y1+h+10) PostclickFT(cx,cy,winid,1) sleep 100 critical,6 send {Tab 8} sleep,25 Send {Enter} critical,off sleep,-1 DllCall("SetCursorPos", int, x, int, y) } return ;----------------------------------------------------------------------------------------------------- Layout3: ifwinactive,Logged In ahk_class QWidget,,Full Tilt WinGet, WinId, ID, A else MousegetPos,,,WinID wingetclass,class,ahk_id %WinID% wingettitle,title,ahk_id %WinID% if class=QWidget if !instr(title,"Full Tilt") { CX:=0.8261 CY:=0.0155 wingetpos,x1,y1,w,h,ahk_id%winid% coordmode,mouse,screen mousegetpos,x,y coordmode,mouse,relative DllCall("SetCursorPos", int, x1+w+10, int, y1+h+10) PostclickFT(cx,cy,winid,1) sleep 100 critical,6 send {Tab 9} sleep,25 Send {Enter} critical,off sleep,-1 DllCall("SetCursorPos", int, x, int, y) } return ;----------------------------------------------------------------------------------------------------- Highlighter: if HighLightA HighLighterA() else HighLighter() return HighLighter() { global OldX,OldY,OldW,OldH global highlighthero,last_table_id global border_color global border_size global trans global xbord,ybord global cap,DwmIsEnabled v:=25 ifwinactive, Logged In ahk_class QWidget,,Full Tilt { winget,id,id,A foldx:=0.6534 foldy:=0.9662 foldx1:=0.5965 foldy1:=0.9662 back_x:=0.6534 back_y:=0.9862 back_x1:=0.5965 back_y1:=0.9862 WinGetActiveStats,ActiveTitle, ActiveW, ActiveH, ActiveX, ActiveY if highlighthero=1 { if !DwmIsEnabled { fold:=PixelColor(foldx,foldy,id,0) bacgr:=PixelColor(foldx1,foldy1,id,0) deal:=PixelColor(back_x,back_y,id,0) deal1:=PixelColor(back_x1,back_y1,id,0) } else { tmp_buffer := DllCall("GetDCEx", "UInt", id,"UInt",0,"UInt",1) relFTClientPoint(id, foldx, foldy,0) fold := DllCall("GetPixel", "UInt", tmp_buffer, "Int", foldx, "Int", foldy) relFTClientPoint(id, foldx1, foldy1,0) bacgr := DllCall("GetPixel", "UInt", tmp_buffer, "Int", foldx1, "Int", foldy1) relFTClientPoint(id, back_x, back_y,0) deal := DllCall("GetPixel", "UInt", tmp_buffer, "Int", back_x, "Int", back_y) relFTClientPoint(id, back_x1, back_y1,0) deal1 := DllCall("GetPixel", "UInt", tmp_buffer, "Int", back_x1, "Int", back_y1) SetFormat, IntegerFast, hex fold += 0 fold .= "" bacgr += 0 bacgr .= "" deal += 0 deal .= "" deal1 += 0 deal1 .= "" SetFormat, IntegerFast, d DllCall( "gdi32.dll\ReleaseDC", "Uint", tmp_buffer ) DllCall( "gdi32.dll\DeleteDC", "Uint", tmp_buffer ) } } if ((id != last_table_id) || ((OldX <> ActiveX || OldY <> ActiveY || OldW <> ActiveW || OldH <> ActiveH))) || (highlighthero=1) { OldX := ActiveX OldY := ActiveY OldW := ActiveW OldH := ActiveH if (highlighthero=0) || ((highlighthero=1) & (comparecolors(fold,bacgr,v)=1) & (comparecolors(deal,deal1,v)=1)) || ((highlighthero=1) & (id != last_table_id)) { Gui, 2: Cancel Gui, 3: Cancel Gui, 4: Cancel Gui, 5: Cancel } WinGetPos, x, y, w, h, ahk_id%id% x := x + xbord y := y + xbord + cap w := w - (2*xbord) h := h - (2*xbord) - cap ;Outer ;x := x - border_size ;y := y - border_size ;w := w + 2*border_size ;h := h + 2*border_size ;Makes Border around urgent table if ((highlighthero=0) || ((highlighthero=1) & (comparecolors(fold,bacgr,v)=0) & (comparecolors(deal,deal1,v)=1))) ; & (comparecolors(fold,fold1,v)=0) ; & (comparecolors(join,deal1,v)=1)) { ;top guinum := 2 Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %border_color% WinSet, Transparent, %trans% Gui, %guinum%: -Caption Gui, %guinum%: Show, w%w% h%border_size% x%x% y%y% NoActivate ;left guinum++ Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %border_color% WinSet, Transparent, %trans% Gui, %guinum%: -Caption Gui, %guinum%: Show, w%border_size% h%h% x%x% y%y% NoActivate ;bottom guinum++ Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %border_color% WinSet, Transparent, %trans% Gui, %guinum%: -Caption y2 := y + h - border_size Gui, %guinum%: Show, w%w% h%border_size% x%x% y%y2% NoActivate ;right guinum++ Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %border_color% WinSet, Transparent, %trans% Gui, %guinum%: -Caption x2 := x + w - border_size Gui, %guinum%: Show, w%border_size% h%h% x%x2% y%y% NoActivate } } last_table_id := id } else { Gui, 2: Cancel Gui, 3: Cancel Gui, 4: Cancel Gui, 5: Cancel last_table_id= } } return ;----------------------------------------------------------------------------------------------------- HighLighterA() { global last_active_table_id,xbord,cap,highlightlist global border_color,border_coloralt global border_size global trans v:=35 ifwinactive,/ ahk_class QWidget,,Full Tilt { winget,winid,id,A if !(winid=last_active_table_id) Loop, Parse, highlightlist, `, { if instr(A_loopfield,winid) or instr(A_loopfield,last_active_table_id) { if instr(A_loopfield,winid) col:=border_coloralt else col:=border_color stringsplit,tab,A_loopfield,- num:=tab2 num1:=num+1 num2:=num+2 num3:=num+3 Gui, %num%: Color, %col% Gui, %num1%: Color, %col% Gui, %num2%: Color, %col% Gui, %num3%: Color, %col% } } winget,list,list,/ ahk_class QWidget,,Full Tilt loop %list% { id:=list%A_index% if DllCall( "IsWindowVisible", "UInt",id) { WinGetPos, x, y, w, h, ahk_id%id% x := x + xbord y := y + xbord + cap w := w - (2*xbord) h := h - (2*xbord) - cap if instr(highlightlist,id) Loop, Parse, highlightlist, `, { if instr(A_loopfield,id) { stringsplit,tab,A_loopfield,- if !((x=tab3) & (y=tab4) & (w=tab5) & (h=tab6)) { num:=tab2 num1:=num+1 num2:=num+2 num3:=num+3 Gui, %num%: Destroy Gui, %num1%: Destroy Gui, %num2%: Destroy Gui, %num3%: Destroy listDelItem(highlightlist, A_Loopfield) } } } foldx:=0.6534 foldy:=0.9662 foldx1:=0.5965 foldy1:=0.9662 back_x:=0.6534 back_y:=0.9862 back_x1:=0.5965 back_y1:=0.9862 if !DwmIsEnabled { fold:=PixelColor(foldx,foldy,id,0,1) bacgr:=PixelColor(foldx1,foldy1,id,0,1) deal:=PixelColor(back_x,back_y,id,0,1) deal1:=PixelColor(back_x1,back_y1,id,0,1) } else { tmp_buffer := DllCall("GetDCEx", "UInt", id,"UInt",0,"UInt",1) relFTClientPoint(id, foldx, foldy,0) fold := DllCall("GetPixel", "UInt", tmp_buffer, "Int", foldx, "Int", foldy) relFTClientPoint(id, foldx1, foldy1,0) bacgr := DllCall("GetPixel", "UInt", tmp_buffer, "Int", foldx1, "Int", foldy1) relFTClientPoint(id, back_x, back_y,0) deal := DllCall("GetPixel", "UInt", tmp_buffer, "Int", back_x, "Int", back_y) relFTClientPoint(id, back_x1, back_y1,0) deal1 := DllCall("GetPixel", "UInt", tmp_buffer, "Int", back_x1, "Int", back_y1) SetFormat, IntegerFast, hex fold += 0 fold .= "" bacgr += 0 bacgr .= "" deal += 0 deal .= "" deal1 += 0 deal1 .= "" SetFormat, IntegerFast, d DllCall( "gdi32.dll\ReleaseDC", "Uint", tmp_buffer ) DllCall( "gdi32.dll\DeleteDC", "Uint", tmp_buffer ) } if (comparecolors(fold,bacgr,v)=0) & (comparecolors(deal,deal1,v)=1) { if !instr(highlightlist,id) { free:=freeGui() if !(winid=id) col:=border_color else col:=border_coloralt movetolisthighlight(id,free,x,y,w,h) ;top guinum := free Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %col% WinSet, Transparent, %trans% Gui, %guinum%: -Caption Gui, %guinum%: Show, w%w% h%border_size% x%x% y%y% NoActivate ;left guinum++ Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %col% WinSet, Transparent, %trans% Gui, %guinum%: -Caption Gui, %guinum%: Show, w%border_size% h%h% x%x% y%y% NoActivate ;bottom guinum++ Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %col% WinSet, Transparent, %trans% Gui, %guinum%: -Caption y2 := y + h - border_size Gui, %guinum%: Show, w%w% h%border_size% x%x% y%y2% NoActivate ;right guinum++ Gui, %guinum%: +Alwaysontop +Lastfound +Owner Gui, %guinum%: Color, %col% WinSet, Transparent, %trans% Gui, %guinum%: -Caption x2 := x + w - border_size Gui, %guinum%: Show, w%border_size% h%h% x%x2% y%y% NoActivate } } else { if instr(highlightlist,id) Loop, Parse, highlightlist, `, { if instr(A_loopfield,id) { stringsplit,tab,A_loopfield,- num:=tab2 num1:=num+1 num2:=num+2 num3:=num+3 Gui, %num%: Destroy Gui, %num1%: Destroy Gui, %num2%: Destroy Gui, %num3%: Destroy listDelItem(highlightlist, A_Loopfield) } } } } } last_active_table_id:=winid } else Loop, Parse, highlightlist, `, { stringsplit,tab,A_loopfield,- num:=tab2 num1:=num+1 num2:=num+2 num3:=num+3 Gui, %num%: Destroy Gui, %num1%: Destroy Gui, %num2%: Destroy Gui, %num3%: Destroy listDelItem(highlightlist, A_Loopfield) } } return freeGui() { Loop 99 { Gui, %a_index%: +lastfoundExist If ! WinExist() return a_index } } MouseMove: MoveMouse() return MoveMouse(x_mouse=0.7468, y_mouse=0.8735) { if IsWindowNew() { wingetclass,class,A wingetactivetitle,title if class=QWidget if !instr(title,"Full Tilt") { winget,id,id,A relFTClientPoint(id, x_mouse, y_mouse,0,1) DllCall("SetCursorPos", int, x_mouse, int, y_mouse) } } } return ;----------------------------------------------------------------------------------------------------- IsWindowNew() { global oldwinid,stealfocus winget,id,id,A wingetclass,class,ahk_id%oldwinid% if id!=%oldwinid% { oldwinid:=id if stealfocus return 1 else { if class=QWidget return 1 else return 0 } } else return 0 } ;----------------------------------------------------------------------------------------------------- clicktime: clicktime() return clicktime() { global tablequeue t1:=0xdedbde time_x:=0.9000 time_y:=0.7200 time_x1:=0.8858 v:=30 v1:=15 winget,listft,list,/ ahk_class QWidget,,Full Tilt loop %listft% { id:=listft%A_index% t:=PixelColorA(time_x,time_y,time_x1,time_y,0,id) stringsplit,col,t,- if (CompareColors(col1,t1,v1)=false) & (CompareColors(col1,col2,v)=false) { if !InStr(tablequeue,id) movetolist(id,A_TickCount) } else if InStr(tablequeue,id) removefromlist(id) } } return ;----------------------------------------------------------------------------------------------------- dealin: dealmein() return dealmein() { back_x:=0.6534 back_y:=0.9862 back_x1:=0.5859 back_x2:=0.6152 back1:=0x181818 v1:=10 v:=30 winget,listft,list,/ ahk_class QWidget,,Full Tilt loop %listft% { id:=listft%A_index% t:=PixelColorA(back_x,back_y,back_x1,back_y,back_x2,id) stringsplit,col,t,- if (CompareColors(col1,back1,v1)=false) & (CompareColors(col1,col2,v)=false) & (CompareColors(col2,col3,v)=true) { PostclickFT(0.7496,0.9862,id,0) PostclickFT(0.7496,0.9862,id,0) } } } return ;----------------------------------------------------------------------------------------------------- relFTClientPoint(id, ByRef x, ByRef y, client=1, screen=0) { global xbord,ybord,cap WinGetPos,x1,y1,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 } if screen { x+=x1 y+=y1 } } return ;----------------------------------------------------------------------------------------------------- PostLeftDoubleClick(x, y, table_id, activate=1) { 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 ;----------------------------------------------------------------------------------------------------- PostLeftclickFT(x,y,winid,activate=1,client=1) { relFTClientPoint(winid, x, y,client) DllCall("SetCapture","Uint",winid) PostLeftClick(x, y, winid, activate) DllCall("ReleaseCapture") } return ;----------------------------------------------------------------------------------------------------- clickwithdelay: clickdelay() return clickdelay() { global tablequeue time_x:=0.9000 time_y:=0.7200 Loop, Parse, tablequeue, `, { interval:=interval1*1000 stringsplit,tab,A_loopfield,- if A_TickCount-tab2>interval { PostclickFT(time_x,time_y,tab1,0) PostclickFT(time_x,time_y,tab1,0) listDelItem(tablequeue, A_Loopfield) } } } return ;----------------------------------------------------------------------------------------------------- PixelColor(colx,coly,id,client=1,screen=0) { relFTClientPoint(id,colx,coly,client,screen) if screen Coordmode,Pixel,screen PixelGetColor,color,colx,coly return color } ;----------------------------------------------------------------------------------------------------- PixelColorA(colx,coly,backx,backy,joinx,id,region=0,regionw=70,regionh=15) { global boost,xbord,ybord,cap,PokerWindowID,DwmIsEnabled,hdc_buffer if boost critical,6 setwindelay, -1 WinGetPos,,,W,H,ahk_id %id% if DwmIsEnabled { hdc_buffer := DllCall("GetDCEx", "UInt", id,"UInt",0,"UInt",1) } else { 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) if backx pix2:=DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) x:=floor(((W-2*xbord)*joinx) + xbord) if joinx pix3:=DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) SetFormat, IntegerFast, hex pix1 += 0 pix1 .= "" if backx { pix2 += 0 pix2 .= "" } if joinx { pix3 += 0 pix3 .= "" } SetFormat, IntegerFast, d if backx pix1.="-" . pix2 if joinx pix1.="-" . pix3 if region { x:=floor(((W-2*xbord)*joinx) + xbord) y:=floor(((H-(2*ybord)-cap)*backy) + ybord + cap) pix1.="*" loop %regionw% { delta:=A_index loop %regionh% { delta1:=A_index p := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x+delta , "Int", y+delta1) ;p1:=p ;SetFormat, IntegerFast, hex ;p += 0 ;p .= "" ;SetFormat, IntegerFast, d ;pix1.=p . "*" . p1 . "-" pix1.=p . "-" } } } sleep,1 DllCall( "gdi32.dll\ReleaseDC", "Uint", hdc_buffer ) if DwmIsEnabled 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 ;----------------------------------------------------------------------------------------------------- movetolistseat(winid,time) { global tablequeueseat listAdd(tablequeueseat, winid . "-" . time) } return ;----------------------------------------------------------------------------------------------------- movetolistwaitlist(winid,time) { global waitlistqueue listAdd(waitlistqueue, winid . "-" . time) } return ;----------------------------------------------------------------------------------------------------- movetolisthighlight(winid,number,x,y,w,h) { global highlightlist listAdd(highlightlist, winid . "-" . number . "-" . x . "-" . y . "-" . w . "-" . h) } 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) PostclickFT(reg_x,reg_y,id,0) } } return ;----------------------------------------------------------------------------------------------------- Toggledealmein: If (dealmein=true) { dealmein:=false T=Off } else { dealmein:=true T=On } Gui, 99:Add, Text,, Auto Deal me in: %T% Gui, 99:+ToolWindow Gui, 99:Show, w150 h20 Sleep, 1000 Gui, 99:Destroy return ;----------------------------------------------------------------------------------------------------- Joinwaitlist: Joinwaitlist() return Joinwaitlist() { join_x:=0.6158 join_x1:=0.5946 join_y1:=0.9862 join_y:=0.9292 join_x2:=0.8261 v:=20 winget,listft,list,Logged In ahk_class QWidget,,Full Tilt loop %listft% { id:=listft%A_index% wingetpos,,,w,,ahk_id%id% t:=PixelColorA(join_x,join_y1,join_x1,join_y1,0,id) stringsplit,col,t,- if (CompareColors(col1,col2,v)=false) { if w>600 t:=PixelColorA(0,0,0,join_y,join_x2,id,1,100,15) else t:=PixelColorA(0,0,0,join_y,join_x2,id,1,100,10) stringsplit,st,t,* if (!instr(st2,"16777215")) ; & !instr(st2,"67284200") & !instr(st2,"111670350") & !instr(st2,"148766710")) { PostclickFT(join_x,join_y1,id,0) PostclickFT(join_x,join_y1,id,0) } } } } return ;----------------------------------------------------------------------------------------------------- Unjoinwaitlist: Unjoinwaitlist() return Unjoinwaitlist() { join_x:=0.6158 join_x1:=0.5946 join_y1:=0.9862 join_y:=0.9292 join_x2:=0.8261 v:=20 winget,listft,list,Logged In ahk_class QWidget,,Full Tilt loop %listft% { id:=listft%A_index% wingetpos,,,w,,ahk_id%id% t:=PixelColorA(join_x,join_y1,join_x1,join_y1,0,id) stringsplit,col,t,- if (CompareColors(col1,col2,v)=false) { if w>600 t:=PixelColorA(0,0,0,join_y,join_x2,id,1,100,15) else t:=PixelColorA(0,0,0,join_y,join_x2,id,1,100,10) stringsplit,st,t,* if (instr(st2,"16777215")) ;or instr(st2,"67284200") or instr(st2,"111670350") or instr(st2,"148766710")) { PostclickFT(join_x,join_y1,id,0) PostclickFT(join_x,join_y1,id,0) } } } } return ;----------------------------------------------------------------------------------------------------- autobuy: autobuy() return autobuy() { global max,remembered,xbb,bbmultiplier winget,list,list, Get Chips ahk_class QWidget ifwinexist, Get Chips ahk_class QWidget { id:=list1 winget,id,id, Get Chips ahk_class QWidget winactivate,ahk_id%id% if max { PostleftclickFT(0.1137,0.5407,id,1,1) sleep,100 PostleftclickFT(0.3488,0.8740,id,0) PostleftclickFT(0.3488,0.8740,id,0) } if remembered { sleep,100 PostleftclickFT(0.3488,0.8740,id,0) PostleftclickFT(0.3488,0.8740,id,0) } if xbb { winget,listft,list,Logged In ahk_class QWidget,,Full Tilt wingettitle,title,ahk_id %listft1% StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 StringReplace,bb,bb,$,,1 bb*=bbmultiplier bb := Round(bb, 2) PostclickFT(0.5906,0.6100,id,1,1) PostLeftclickFT(0.5906,0.6100,id,1,1) cl:=clipboard clipboard:=bb setcontroldelay,-1 setkeydelay,1,1 sleep,10 ifwinnotactive,ahk_id%id% winactivate,ahk_id%id% controlfocus,,ahk_id %id% setkeydelay,-1,-1 ControlSend,,%bb%,ahk_id %id% sleep,-1 ;send {tab 2} sleep,100 send {NumpadEnter} ;PostleftclickFT(0.3488,0.8740,id,0) ;PostleftclickFT(0.3488,0.8740,id,0) clipboard:=cl winwaitclose,ahk_id %id%,,0.5 if errorlevel { ControlSend,,{Esc},ahk_id %id% winclose,ahk_id %listft1% } } } } return ;----------------------------------------------------------------------------------------------------- NewTable: IsTableNew() return IsTableNew() { local list,id winget,list,list,Logged In ahk_class QWidget,,Full Tilt IfWinNotExist, Waiting List Options ahk_class QWidget IfWinNotExist, Get Chips ahk_class QWidget loop %list% { id:=list%A_index% if seated%id% is not number { if ((limit=0) || ((limit=1) & (list<=totalnumber))) { ;wingetpos,xstart%id%,ystart%id%,,,ahk_id%id% ;if move ;WinMove, ahk_id%id%,, xpos,ypos if autotakeseat { if !InStr(tablequeueseat,id) movetolistseat(id,A_TickCount) } seated%id%:=1 } else if ((limit=1) & (list>totalnumber)) winclose,ahk_id%id% } } } return ;----------------------------------------------------------------------------------------------------- clickseatwithdelay: clickdelayseat() return clickdelayseat() { global tablequeueseat ifwinnotexist, Get Chips ahk_class QWidget { Loop, Parse, tablequeueseat, `, { stringsplit,tab,A_loopfield,- if (A_TickCount-tab2>500) { ClickEmptySeat(tab1) listDelItem(tablequeueseat, A_Loopfield) } } } } return clickwaitlistwithdelay: clickdelaywaitlist() return clickdelaywaitlist() { global waitlistqueue ifwinnotexist, Get Chips ahk_class QWidget { Loop, Parse, waitlistqueue, `, { stringsplit,tab,A_loopfield,- if A_TickCount-tab2>300 { PostLeftClickFT(0.2469,0.7000,tab1,0) PostLeftClickFT(0.2469,0.7000,tab1,0) listDelItem(waitlistqueue, A_Loopfield) } } } } return ClickEmptySeat(id) { Global Racetrack wingettitle,title,ahk_id%id% racetrack9maxseats:="0.4920*0.8436,0.2199*0.8183,0.0933*0.5931,0.0933*0.3379,0.2863*0.2022,0.7009*0.2022,0.8924*0.3379,0.8939*0.5931,0.7626*0.8183" racetrack6maxseats:="0.4969*0.8758,0.3101*0.8505,0.0890*0.4965,0.2784*0.1954,0.6914*0.1954,0.8844*0.4965" classic9maxseats:="0.4953*0.8772,0.2480*0.8289,0.0666*0.6335,0.1061*0.3439,0.3356*0.2082,0.6552*0.2059,0.8814*0.3432,0.9194*0.6289,0.7359*0.8243" classic6maxseats:="0.4953*0.8804,0.0886*0.6459,0.1487*0.2942,0.4952*0.1931,0.8322*0.2873,0.9050*0.6367" if Racetrack { color1:=5190656 color2:=5059328 if instr(title,"6 max") seats:=racetrack6maxseats else seats:=racetrack9maxseats } else { color1:="-0-" color2:=16119285 if instr(title,"6 max") seats:=classic6maxseats else seats:=classic9maxseats } Loop, Parse, seats, `, { stringsplit,coord,A_loopfield,* col:=PixelColorA(0,0,0,coord2,coord1,id,1,5,5) if Racetrack { if instr(col,color1) || instr(col,color2) { clickx:=coord1 clicky:=coord2-0.04 PostLeftclickFT(clickx,clicky,id,0) PostLeftclickFT(clickx,clicky,id,0) return } } else { if (!instr(col,color1)) & (!instr(col,color2)) { clickx:=coord1 clicky:=coord2 PostLeftclickFT(clickx,clicky,id,0) PostLeftclickFT(clickx,clicky,id,0) return } } } PostLeftclickFT(0.6155,0.9862,id,0) PostLeftclickFT(0.6155,0.9862,id,0) } return ;----------------------------------------------------------------------------------------------------- closepopups: closepopups() return closepopups() { global xbord,cap,closeOKwindow,leavetable winget,list,list,ahk_class QWidget,,/ loop %list% { id:=list%A_index% wingettitle,title,ahk_id%id% if !instr(title,"Full Tilt") if !instr(title,"Get Chips") { wingetpos,,,w,h,ahk_id%id% w-=2*xbord h-=(2*xbord+cap) if ((h<120) & ((w=234) or (w=240) or (w=380) or (w=392))) ;or ((h<110) & (w=281)) { if closeOKwindow ControlSend,,{Enter},ahk_id%id% } else if ((w=265) or (w=267)) or ((h<120) & (w=281)) { if leavetable { PostLeftClickFT(0.4000,0.7273,id) PostLeftClickFT(0.4000,0.7273,id) } } } } } return ;----------------------------------------------------------------------------------------------------- TakeSeatFromWaitlist: TakeSeat() return TakeSeat() { local list,id,This_id IfWinExist, Waiting List Options ahk_class QWidget { WinGet, list, list, Waiting List Options ahk_class QWidget winget, tablelist,list,Logged In ahk_class QWidget,,Full Tilt Loop, %list% { This_id := list%A_Index% if (tablelist<totalnumber) or (limit=0) { settimer,NewTable,off PostLeftClickFT(0.2469,0.7000,this_id) winwait, / ahk_class QWidget,,0.5 if !errorlevel { winget,id,id seated%id%:=1 } if limit or autotakeseat settimer,NewTable,267 } else if (tablelist>=totalnumber) & (limit=1) { if remove { PostLeftClickFT(0.0843,0.8368,this_id) PostLeftClickFT(0.5000,0.7000,this_id) } if pressno PostLeftClickFT(0.5000,0.7000,this_id) else if pressnotyet PostLeftClickFT(0.7439,0.7000,this_id) } } } } return ;----------------------------------------------------------------------------------------------------- AlterAmount(id, dir="", frac=1, unit="") { WinGetTitle, title, ahk_id%id% amount := 0 StringTrimRight, tablename, title, ( StrLen(title) - (InStr(title, " - ")-1) ) IfWinExist, ahk_id%id% ahk_group FullTiltTables { StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 } StringReplace,bb,bb,$,,1 StringReplace,bb,bb,Ј,,1 StringReplace,bb,bb,Ђ,,1 StringReplace,bb,bb,€,,1 sb := sb(bb) If (unit = "" or unit = "bb") { unit := bb } Else If (unit = "sb") { unit := sb } Else If (unit = "pot") { pot := 0 call := 0 hero_bet := 0 street := "pre" hero_position := "" open := 0 max := 10000000 IfWinExist, ahk_id%id% ahk_group FullTiltTables { PotSizeFullTilt2(id, pot, call, sb, bb, hero_bet, street, hero_position, open, max) } pot := ((pot + call + hero_bet) )+ call unit := pot } amount := unit * frac if (dir="down") { amount := amount - (2*amount) } a:=floor(amount) if amount-a=0 amount:=a IfWinExist, ahk_id%id% ahk_group FullTiltTables { oldClipboard = %clipboard% clipboard = PostStarsClick(767, 440, id) Send ^a Send ^c ClipWait, 0.3 If !ErrorLevel t := clipboard clipboard = %oldClipBoard% t := t + amount if (t < 0) { t := 0 } t2 := Round(t, 0) t1 := Round(t, 2) t := Round(t, 3) if t-t1=0 t:=t1 if t-t2=0 t:=t2 PostStarsClick(767, 440, id) Send ^a Send %t% PostStarsClick(767, 440, id) } } Pot(id, frac=1, round_bet=0.2, open_adjust="", fixblinds=0) { global debug global attempts if attempts<=0 attempts:=1 pot := 0 call := 0 sb := 0 bb := 0 hero_bet := 0 street := "" hero_position := "" open := 1 max := 10000000 IfWinExist, ahk_id%id% ahk_group FullTiltTables { loop %attempts% { PotSizeFullTilt2(id, pot, call, sb, bb, hero_bet, street, hero_position, open, max) if pot>0 break sleep,20 } } Else { return } StringSplit, fr, frac, %A_SPACE% if (fr0 < 4) { times := 4 - fr0 Loop, %times% { n := 5 - A_Index fr%n% := fr%fr0% } } if (street = "pre") { frac:= Round(fr1/100,2) } else if (street = "flop") { frac:= Round(fr2/100,2) } else if (street = "turn") { frac:= Round(fr3/100,2) } else if (street = "river") { frac:= Round(fr4/100,2) } if (debug) { TrayTip, BetPot, Pot:`t`t%pot%`nCall:`t`t%call%`nHero_bet:`t%hero_bet%`n`nPosition:`t%hero_position%`n`nBlinds:`t$%sb%/$%bb%`n`nStreet:`t%street%`n`n%fr0%`n%fr1% %fr2% %fr3% %fr4%`n`n%frac%,10,17 } if (fixblinds AND open AND street="pre") { if (hero_position = "sb" ) { pot := pot - sb call := call + sb } else if (hero_position = "bb") { pot := pot - bb call := call + bb } } pot := ((pot + call + hero_bet)* (frac)) + call if (open=1 AND open_adjust="ssnl" ) { pot := pot + bb - sb } else if (open=1 AND open_adjust="trny" ) { pot := pot - bb } else if (open=1 AND open_adjust="mix" ) { if (bb=2) { pot := pot + bb - sb } ; pot := pot + bb + sb } if(round_bet = "smallblind") { ; if sb<1 ; pot := Round((Floor((pot / sb)) * sb),2) pot := Round((Round((pot / sb)) * sb),2) ; else ; pot := Round((Floor((pot / sb)) * sb),0) } else if(round_bet = "bigblind") { pot := Round((Floor((pot / bb)) * bb),2) } else if (round_bet < 1) { places := round_bet*10 pot := Round(pot, (places)) } else if (round_bet >= 1) { pot := Floor(pot / round_bet) * round_bet } p:=floor(pot) if pot-p=0 pot:=p IfWinExist, ahk_id%id% ahk_group FullTiltTables { PostStarsClick(767, 440, id) Send ^a Send %pot% } } PotSizeFullTilt2(id, ByRef pot, ByRef call, ByRef sb, ByRef bb, ByRef hero_bet, ByRef street, ByRef hero_position, ByRef open, ByRef max) { global deduct_rake,Racetrack rake := 0 notraked := 0 maxrake := 3 max := 7654321 setbatchlines,-1 WinGetTitle, title, ahk_id%id% StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 StringReplace,bb,bb,$,,1 sb := sb(bb) TotalPotDigitsPosX=393 TotalPotDigitsPosY=277 if Racetrack { MainPotDigitsPosX=334 MainPotDigitsPosY=183 } else { if !instr(title,"(6 max") { MainPotDigitsPosX=285 MainPotDigitsPosY=335 } else { MainPotDigitsPosX=338 MainPotDigitsPosY=340 } } PotDigitsPosW=80 PotDigitsPosH=14 pot:=DigitSearchByPixelCount(TotalPotDigitsPosX,TotalPotDigitsPosY,PotDigitsPosW,PotDigitsPosH,Id) if pot is not number pot:=DigitSearchByPixelCount(MainPotDigitsPosX,MainPotDigitsPosY,PotDigitsPosW,PotDigitsPosH,Id) oldClipboard:=clipboard clipboard = wingetpos,,,w,,ahk_id%id% if w>=605 { PostStarsClick(707, 418, id) ;hit min PostStarsClick(707, 418, id) ;hit min PostStarsClick(707, 418, id) ;hit min } else { PostLeftClickFT(0.8705,0.8341,id,0) PostLeftClickFT(0.8705,0.8341,id,0) } PostStarsClick(767, 440, id) min := sb Send ^a Send ^c ClipWait, 0.3 If !ErrorLevel { min := clipboard clipboard = %oldClipBoard% } else { min := 2*bb } street := "pre" street := GetStreetFT(id,5) if (min = bb) { call := 0 } else if (min > bb) { call := min / 2 } else if (street != "pre") { call := bb } call2 := Round(call, 0) call1 := Round(call, 2) call := Round(call, 3) if call-call1=0 call:=call1 if call-call2=0 call:=call2 if (call != bb || street != "pre") { open := 0 } if call is not number call:=0 if hero_bet is not number hero_bet:=0 setbatchlines,1ms return } GetStreetFT(id,amount) { global DwmIsEnabled if !DwmIsEnabled CoordMode, Pixel, Screen street := "flop" x1 := 378 y1 := 214 x2 := 414 y2 := 260 if !DwmIsEnabled { relStarsScreenPoint(id, x1, y1) relStarsScreenPoint(id, x2, y2) pixels:=GetPixelCount(x1, y1, x2, y2, 0xffffff,amount) } else { relStarsWindowPoint(id, x1, y1) relStarsWindowPoint(id, x2, y2) pixels:=GetPixelCount(x1, y1, x2, y2, 0xffffff,amount,"",id) } If !pixels { street := "pre" return street } x1 := 485 y1 := 214 x2 := 520 y2 := 260 if !DwmIsEnabled { relStarsScreenPoint(id, x1, y1) relStarsScreenPoint(id, x2, y2) pixels:=GetPixelCount(x1, y1, x2, y2, 0xffffff,amount) } else { relStarsWindowPoint(id, x1, y1) relStarsWindowPoint(id, x2, y2) pixels:=GetPixelCount(x1, y1, x2, y2, 0xffffff,amount,"",id) } If pixels { street := "river" return street } x1 := 431 y1 := 214 x2 := 461 y2 := 260 if !DwmIsEnabled { relStarsScreenPoint(id, x1, y1) relStarsScreenPoint(id, x2, y2) pixels:=GetPixelCount(x1, y1, x2, y2, 0xffffff,amount) } else { relStarsWindowPoint(id, x1, y1) relStarsWindowPoint(id, x2, y2) pixels:=GetPixelCount(x1, y1, x2, y2, 0xffffff,amount,"",id) } If pixels { street := "turn" } return street } ; finds number of specified pixels in a region GetPixelCount(x1, y1, x2, y2, color,amount, options="",id=0) { global DwmIsEnabled if id hdc_buffer := DllCall("GetDCEx", "UInt", id,"UInt",0,"UInt",1) else CoordMode, Pixel, Screen pixels := (x2 - x1 + 1)*(y2 - y1 + 1) If ( pixels <= 0 ) { ErrorLevel = 1 return } count = 0 x = %x1% Loop { If ( x > x2 ) { break } y = %y1% Loop { If ( y > y2 ) { break } if !id PixelGetColor, c, x, y, %options% else { c := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) SetFormat, IntegerFast, hex c += 0 c .= "" SetFormat, IntegerFast, d } If ( c = color ) { count++ if count>%amount% { if id { DllCall( "gdi32.dll\ReleaseDC", "Uint", hdc_buffer ) DllCall( "gdi32.dll\DeleteDC", "Uint", hdc_buffer ) } return 1 } } y++ } x++ } if id { DllCall( "gdi32.dll\ReleaseDC", "Uint", hdc_buffer ) DllCall( "gdi32.dll\DeleteDC", "Uint", hdc_buffer ) } return 0 } sb(bb) { If bb = .25 sb := .10 else if bb = 15 sb = 10 else if bb = 0.05 sb = 0.02 else sb := bb/2 if (sb > 1) { sb := Round(sb, 0) } else { sb := Round(sb, 2) } return sb } StrRep(str,char,rep_char="",all=1) { StringReplace,str,str,%char%,%rep_char%,%all% return str } StrMid(str,str1,str2,startPos1=1,startPos2=1,caseSense=0){ If startPos1 = startPos1 = 1 If startPos2 = startPos2 = 1 StringTrimLeft,o,str,InStr(str,str1,cS,startPos1) + StrLen(str1) - 1 StringLeft,o,o,InStr(o,str2,caseSense,startPos2)-1 return o } IIf(_boolExpr, _exprTrue, _exprFalse) { If _boolExpr Return _exprTrue else return _exprFalse } relStarsClientPoint(id, ByRef x, ByRef y) { global border global caption rw := 792 rh := 546 WinGetPos, , , w, h, ahk_id%id% w := w - (2*border) h := h - (2*border) - caption x := Floor( (x / rw ) * w ) y := Floor( (y / rh) * h ) } relStarsWindowPoint(id, ByRef x, ByRef y) { global border global caption relStarsClientPoint(id, x, y) x := x + border y := y + border + caption } relStarsScreenPoint(id, ByRef x, ByRef y) { relStarsWindowPoint(id, x, y) WinGetPos, x1, y1, , , ahk_id%id% x += x1 y += y1 } reverse_calc_stars_client_area(cw, ByRef w, ByRef h) { global border global caption w := cw + (2*border) h := Floor(cw / 1.45) + (2*border) + caption } client_area(id, ByRef x, Byref y, ByRef w, Byref h) { WinGetPos, x, y, w, h, ahk_id%id% global border global caption x := x + border y := y + border + caption w := w - (2*border) h := h - (2*border) - caption return } PostStarsClick(x, y, id) { relStarsClientPoint(id, x, y) PostLeftClick(x, y, id) } PostLeftClick(x, y, table_id, activate=1) { ; ### JUK: Send the down left click, then the mouse-up messages. ; 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, 0x201, 0x0001, ((y<<16)^x), , ahk_id%table_id% PostMessage, 0x202 , 0, ((y<<16)^x), , ahk_id%table_id% } ;;;;;;;;;;;;;;;;;;;;PixelCount function source taken from PokerShortCuts;;;;;;;;;;;;;;;;;;;;; DigitSearchByPixelCount(X,Y,W,H,WinId) { global DwmIsEnabled DigitsColor=0xFFFFFF DigitsColorTolerance=0 FTMinimumPixelCountPerColumn := 2 FTMaximumAllowedNumPixelsInRowToBeBlank:=2 ; FT Pixel Count Digits for table (client width) 472-563 PixelCountDigits52254 := 0 PixelCountDigits276 := 1 PixelCountDigits35335 := 2 PixelCountDigits33335 := 2 PixelCountDigits23344 := 3 PixelCountDigits22276 := 4 PixelCountDigits53335 := 5 PixelCountDigits53321 := 6 PixelCountDigits23321 := 7 PixelCountDigits43344 := 8 PixelCountDigits23354 := 9 PixelCountDigits21 := "." PixelCountDigits3333332 := "A" PixelCountDigits333335 := "S" ; FT Pixel Count Digits for table (client width) 564-682 PixelCountDigits622265 := 0 PixelCountDigits287 := 1 PixelCountDigits333336 := 2 PixelCountDigits223355 := 3 PixelCountDigits22287 := 4 PixelCountDigits533346 := 5 PixelCountDigits533332 := 6 PixelCountDigits33321 := 7 PixelCountDigits533355 := 8 PixelCountDigits333354 := 9 PixelCountDigits21 := "." PixelCountDigits3433432 := "A" PixelCountDigits333346 := "S" ; FT Pixel Count Digits for table (client width) 683-841 PixelCountDigits6822865 := 0 PixelCountDigits2887 := 1 PixelCountDigits3544536 := 2 PixelCountDigits2433855 := 3 PixelCountDigits222787 := 4 PixelCountDigits653646 := 5 PixelCountDigits6833632 := 6 PixelCountDigits47521 := 7 PixelCountDigits5833855 := 8 PixelCountDigits3633865 := 9 PixelCountDigits221 := "." PixelCountDigits36636632 := "A" PixelCountDigits4644646 := "S" ; FT Pixel Count Special situation below 842-881 - looks like only the 2 digit is different here PixelCountDigits23444647 := 2 ; FT Pixel Count Digits for table (client width) 842-960 PixelCountDigits79222976 := 0 PixelCountDigits22998 := 1 PixelCountDigits33444647 := 2 PixelCountDigits22333966 := 3 PixelCountDigits2222998 := 4 PixelCountDigits5533757 := 5 PixelCountDigits68433743 := 6 PixelCountDigits465421 := 7 PixelCountDigits69333966 := 8 PixelCountDigits47334865 := 9 PixelCountDigits221 := "." PixelCountDigits2555355521 := "A" PixelCountDigits56333656 := "S" ; FT Pixel Count Digits for table (client width) 961-1040 PixelCountDigits684224865 := 0 PixelCountDigits22AA9 := 1 PixelCountDigits354435647 := 2 PixelCountDigits463337735 := 3 PixelCountDigits22222AA9 := 4 PixelCountDigits275335647 := 5 PixelCountDigits685335632 := 6 PixelCountDigits3555421 := 7 PixelCountDigits7A3333A77 := 8 PixelCountDigits365335865 := 9 PixelCountDigits332 := "." PixelCountDigits3556365532 := "A" PixelCountDigits475445746 := "S" ; FT Pixel Count Digits for table (client width) 1041-1119 PixelCountDigits8A42224A87 := 0 PixelCountDigits22CCB := 1 PixelCountDigits3544445649 := 2 PixelCountDigits4623337957 := 3 PixelCountDigits222222CCB := 4 PixelCountDigits2863335759 := 5 PixelCountDigits7954335743 := 6 PixelCountDigits35555421 := 7 PixelCountDigits5973337957 := 8 PixelCountDigits4753345976 := 9 PixelCountDigits332 := "." PixelCountDigits355653565532 := "A" PixelCountDigits5864446858 := "S" if !DwmIsEnabled { coordmode, pixel, Screen WindowScaledPos(X, Y, ClientScaleFactor, "Screen", WinId) PixelGetColor, ColorRGB,X,Y,RGB } else { hdc_buffer := DllCall("GetDCEx", "UInt", WinId,"UInt",0,"UInt",1) WindowScaledPos(X, Y, ClientScaleFactor, "Window", WinId) ColorRGB := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) SetFormat, IntegerFast, hex ColorRGB += 0 ColorRGB .= "" SetFormat, IntegerFast, d } W := Round(W * ClientScaleFactor) H := Round(H * ClientScaleFactor) CheckPrimaryColorFlag := 1 CheckAlternateColorFlag := 0 Y += Round(H/2) TopRowFound := 0 loop, % Round(H) { Xpos := X PixelCountInRow := 0 ScanWidth := Round(W*3/4) loop,% ScanWidth { Xpos += 1 if !DwmIsEnabled PixelGetColor, ColorRGB,Xpos,Y,RGB else { ColorRGB := DllCall("GetPixel", "UInt", hdc_buffer, "Int", Xpos, "Int", Y) SetFormat, IntegerFast, hex ColorRGB += 0 ColorRGB .= "" SetFormat, IntegerFast, d } if (CheckPrimaryColorFlag AND (ColorWithinTolerance(ColorRGB, DigitsColor, DigitsColorTolerance))) { PixelCountInRow++ if (PixelCountInRow > FTMaximumAllowedNumPixelsInRowToBeBlank) break } } if (Xpos == (X + ScanWidth)) { TopRowFound := 1 Y += 1 ; move back down to the top row of the font break } Y -= 1 } if NOT TopRowFound { return "" } DigitString:="" PixelCountForAllDigitsString := "" PixelCountForThisDigitString := "" loop, %W% { ColumnNum:= A_Index PixelCountInColumn:=0 FirstPixelPosition := 0 LastPixelPosition := 0 loop, %H% { RowNum:=A_Index if !DwmIsEnabled PixelGetColor, ColorRGB,X+ColumnNum-1,Y+RowNum-1,RGB else { ColorRGB := DllCall("GetPixel", "UInt", hdc_buffer, "Int", X+ColumnNum-1, "Int", Y+RowNum-1) SetFormat, IntegerFast, hex ColorRGB += 0 ColorRGB .= "" SetFormat, IntegerFast, d } if (ColorWithinTolerance(ColorRGB, DigitsColor, DigitsColorTolerance)) { if (!FirstPixelPosition) FirstPixelPosition := RowNum LastPixelPosition := RowNum PixelCountInColumn++ } } if (PixelCountInColumn >= FTMinimumPixelCountPerColumn) { LastMinusFirstPixelPosition := LastPixelPosition - FirstPixelPosition if (PixelCountInColumn > 9) { PixelCountInColumn := chr(64 + PixelCountInColumn - 9) } if PixelCountInColumn is alnum PixelCountForThisDigitString .= PixelCountInColumn } else { if (PixelCountForThisDigitString != "") { if (LastMinusFirstPixelPosition > 9) LastMinusFirstPixelPosition := chr(64 + LastMinusFirstPixelPosition - 9) if LastMinusFirstPixelPosition is alnum PixelCountForThisDigitString .= LastMinusFirstPixelPosition Temp := "PixelCountDigits" DigitString .= %Temp%%PixelCountForThisDigitString% PixelCountForAllDigitsString .= PixelCountForThisDigitString . A_Space PixelCountForThisDigitString := "" } } } Loop, { StringPosition := instr(DigitString,".") ; find the first decimal point if StringPosition { if ((strlen(DigitString) - StringPosition) > 2) StringReplace, DigitString, DigitString,.,, else break } else break } if DwmIsEnabled { DllCall( "gdi32.dll\ReleaseDC", "Uint", hdc_buffer ) DllCall( "gdi32.dll\DeleteDC", "Uint", hdc_buffer ) } if (DigitString) { PixelCountForAllDigitsStringReturned := PixelCountForAllDigitsString return DigitString } } ColorWithinTolerance(SampleColor, TestColor, Tolerance) { if (SampleColor == TestColor) return 1 If (Tolerance == 0) return (SampleColor == TestColor) SampleColorRed := SampleColor >> 16 TestColorRed := TestColor >> 16 SampleColorGreen:= SampleColor >> 8 & 0xff TestColorGreen := TestColor >> 8 & 0xff SampleColorBlue := SampleColor & 0xff TestColorBlue := TestColor & 0xff return ( ( (SampleColorRed + Tolerance >= TestColorRed) && (SampleColorRed - Tolerance <= TestColorRed) ) && ( (SampleColorGreen + Tolerance >= TestColorGreen) && (SampleColorGreen - Toleranc <= TestColorGreene) ) && ( (SampleColorBlue + Tolerance >= TestColorBlue) && (SampleColorBlue - Tolerance <= TestColorBlue) ) ) } WindowScaledPos(ByRef PosX, ByRef PosY, ByRef ClientScaleFactor, ScaleType="Screen", WinId="") { local TitleBarHeight, WindowBottomBorder, WindowSideBorder, WindowTopBorder ,WindowX,WindowY,WindowWidth,WindowHeight local ClientWidth, ClientHeight , ClientWidthScaleFactor, ClientHeightScaleFactor StandardClientWidth=794 StandardClientHeight=547 SysGet, TitleBarHeight, 4 SysGet, WindowBottomBorder, 32 SysGet, WindowSideBorder, 33 WindowTopBorder := TitleBarHeight + WindowBottomBorder WinGetPos,WindowX,WindowY,WindowWidth,WindowHeight,ahk_id%WinId% ClientWidth := WindowWidth - 2 * WindowSideBorder ClientHeight := WindowHeight - TitleBarHeight - 2 * WindowBottomBorder ClientWidthScaleFactor := ClientWidth / StandardClientWidth ClientHeightScaleFactor := ClientHeight / StandardClientHeight ClientScaleFactor := ClientWidthScaleFactor ; pass back the scaling factor in case the calling function needs it PosX := Round(PosX * ClientWidthScaleFactor) PosY := Round(PosY * ClientHeightScaleFactor) if (ScaleType == "Client") { return } else if (ScaleType == "Window") { PosX += WindowSideBorder PosY += WindowTopBorder } else if (ScaleType == "Screen") { PosX += WindowX + WindowSideBorder PosY += WindowY + WindowTopBorder } } NextWindow_Calc(ByRef perp, ByRef parallel, ByRef id, ByRef min, ByRef minID) { parallel /= 2 d := Sqrt(parallel*parallel+perp*perp) if (d < min) { min := d minID := id } } NextWindow_Activate(Byref id1, ByRef id2, Byref id3) { local id := id1 ? id1 : id2 ? id2 : id3 ? id3 : "" if !id return WinActivate, ahk_id %id% local window WinGetClass, window, ahk_id %id% window := "OnActivate_" . window if IsLabel(window) GoSub, %window% } NextWindow_Left() { WinGet, cId, ID, A WinGetPos, cX, cY, , cH,ahk_id%cId% cH_half := cH/2 min := A_ScreenWidth minRight := min maxY := 0 maxX := 0 WinGet windows, List, Logged In ahk_class QWidget,,Full Tilt Loop, %windows% { id := windows%A_Index% if (id == cID) continue WinGetPos, x, y, w, , ahk_id %id% dx := cX - x if (dx < 0) { dx := A_ScreenWidth - x - w if (dx < 0) dx := 0 dy := y - cY if (dy < 0) NextWindow_Calc(dy, dx, id, minRight, minRightID) } else if (dx > 9) { dy := abs(cY - y) if (dy < cH_half) NextWindow_Calc(dy, dx, id, min, minID) } if (y >= maxY) { if (x >= maxX || y > maxY + cH) { maxX := x maxY := y oppID := id } } } NextWindow_Activate(minId, minRightID, oppID) } NextWindow_Right() { WinGet, cId, ID,A WinGetPos, cX, cY, , cH,ahk_id%cId% cH_half := cH/2 min := A_ScreenWidth minLeft := min minY := min minX := min WinGet windows, List, Logged In ahk_class QWidget,,Full Tilt Loop, %windows% { id := windows%A_Index% if (id == cID) continue WinGetPos, x, y, w, , ahk_id %id% dx := x - cX if (dx < 0) { dx := x if (dx < 0) dx := 0 dy := cY - y if (dy < 0) NextWindow_Calc(dy, dx, id, minLeft, minLeftID) } else if (dx > 9) { dy := abs(cY - y) if (dy < cH_half) NextWindow_Calc(dy, dx, id, min, minID) } if (y <= minY) { if (x <= minX || y < minY - cH_half) { minX := x minY := y oppID := id } } } NextWindow_Activate(minId, minLeftID, oppID) } NextWindow_Up() { WinGet, cID, ID,A WinGetPos, cX, cY, cW,,ahk_id%cId% cW_half := cW/2 min := A_ScreenHeight minDown := min minX := min maxY := 0 WinGet windows, List, Logged In ahk_class QWidget,,Full Tilt Loop, %windows% { id := windows%A_Index% if (id == cID) continue WinGetPos, x, y, , h, ahk_id %id% dy := cY - y if (dy < 0) { dy := A_ScreenHeight - y - h if (dy < 0) dy := 0 dx := cX - x if (dx < 0) NextWindow_Calc(dx, dy, id, minDown, minDownId) } else if (dy > 9) { dx := abs(cX - x) if (dx < cW_half) NextWindow_Calc(dx, dy, id, min, minID) } if (x <= minX) { if (y >= maxY || x < minX - cW_half) { minX := x maxY := y oppID := id } } } NextWindow_Activate(minId, minDownID, oppID) } NextWindow_Down() { WinGet, cID, ID,A WinGetPos, cX, cY, cW,,ahk_id%cId% cW_half := cW/2 min := A_ScreenWidth minUp := min maxX := 0 minY := min WinGet windows, List, Logged In ahk_class QWidget,,Full Tilt Loop, %windows% { id := windows%A_Index% if (id == cID) continue WinGetPos, x, y, , , ahk_id %id% dy := y - cY dx := x - cX if (dy < 0) { dy := y if (dy < 0) dy := 0 dx := x - cX if (dx < 0) NextWindow_Calc(dx, dy, id, minUp, minUpID) } else if (dy > 9) { dx := abs(cX - x) if (dx < cW_half) NextWindow_Calc(dx, dy, id, min, minID) } if (x >= maxX) { if (y <= minY || x > maxX + cW_half) { maxX := x minY := y oppID := id } } } NextWindow_Activate(minId, minUpID, oppID) } NextWindow_Left: NextWindow_Left() return ;-------------------------------------------------------------------------------- NextWindow_Right: NextWindow_Right() return ;-------------------------------------------------------------------------------- NextWindow_Up: NextWindow_Up() return ;-------------------------------------------------------------------------------- NextWindow_Down: NextWindow_Down() return ;-------------------------------------------------------------------------------- BuildGui: Gui, color, white Gui, add, tab, h490 w300, General|Global hotkeys|BetPot|Table hotkeys|Time|Buy-in Gui, Tab, General Gui, add, text,cred y50 x35,Table view: Gui, Add, Radio, x36 y70 w180 h20 Checked%ClassicTheme% vClassicTheme, Classic Gui, Add, Radio, x36 y90 w180 h20 Checked%Racetrack% vRacetrack, Racetrack Gui, add, text,cRed y125 x85, Use these options Gui, add, text,cRed y140 x50, if you experience flicker problem Gui, add, Checkbox, y160 x60 Checked%flicker1% Vflicker1 Gui, add, text, y175 x25,set FullTilt process Gui, add, text, y190 x25,priority to high Gui, add, Checkbox, y160 x180 Checked%flicker2% Vflicker2 Gui, add, text, y175 x125,set affinity to cpu1 only Gui, add, text, y190 x125,for FullTilt process Gui, add, text, y205 x125,(Dual-core/HT cpu) Gui, add, text,cGreen y235 x25,Turning aero theme off (Vista/W7) might help Gui, add, text,cGreen y250 x25,if these settings don't work. Gui, Add, Radio, x26 y280 w220 h15 Checked%ActOnActiveTable% vActOnActiveTable, Send actions to active table Gui, Add, Radio, x26 y295 w220 h15 Checked%sendundermouse% vsendundermouse, Send actions to table under mouse Gui, add, text, y315 x25, Activate table under mouse Gui, add, Checkbox, y315 x220 Checked%activatetableundermouse% Vactivatetableundermouse Gui, add, text, y340 x105, Highlighter on Gui, add, Checkbox, y340 x180 Checked%Highlight% VHighlight Gui, Add, Radio, x25 y365 w90 h15 Checked%Highlightdef% vHighlightdef, Highlight table Gui, Add, Radio, x25 y390 w220 h15 Checked%highlightA% vhighlightA, Highlight all tables with action on hero Gui, Add,text, y355 x325, Gui, Add, Radio, x126 y360 w120 h15 Checked%highlightactive% vhighlightactive, Active Gui, Add, Radio, x126 y375 w120 h15 Checked%highlighthero% vhighlighthero, With action on hero Gui, add, text, y420 x25, Move mouse to action buttons Gui, add, Checkbox, y420 x220 Checked%MoveMouse% VMoveMouse Gui, add, text, y440 x65, Move mouse from nonfulltilt app Gui, add, Checkbox, y440 x220 Checked%stealfocus% Vstealfocus Gui, Add, Button, x75 y465 w55 h20 gSave,Submit Gui, Add, Button, x135 y465 w55 h20 gCancel,Cancel Gui, Tab, Global hotkeys Gui, Add, Text, x25 y75 ,Find table needing action Gui, Add, Edit, x220 y72 w50 h20 vfindtabletoact, %findtabletoact% Gui, Add, Text, x25 y115 ,join/unjoin waiting list (main lobby) Gui, Add, Edit, x220 y112 w50 h20 vregister, %register% Gui, Add, Text, x25 y140 ,Join waiting list on all tables Gui, Add, Edit, x220 y137 w50 h20 vjoinwaitlist, %joinwaitlist% Gui, Add, Text, x25 y165 ,Unjoin waiting list on all tables Gui, Add, Edit, x220 y162 w50 h20 vunjoinwaitlist, %unjoinwaitlist% Gui, Add, Text, x25 y215 ,Activate next table Gui, Add, Edit, x220 y212 w50 h20 vActivateBottomWindow, %ActivateBottomWindow% Gui, Add, Text, x25 y245 ,Custom layout 1 Gui, Add, Edit, x220 y242 w50 h20 vlayout1, %layout1% Gui, Add, Text, x25 y265 ,Custom layout 2 Gui, Add, Edit, x220 y262 w50 h20 vlayout2, %layout2% Gui, Add, Text, x25 y285 ,Custom layout 3 Gui, Add, Edit, x220 y282 w50 h20 vlayout3, %layout3% Gui, Add, Text, x25 y315 ,Suspend all hotkeys Gui, Add, Edit, x220 y312 w50 h20 vsuspend, %suspend% Gui, Add, Text, x25 y335 ,Pause/unpause Gui, Add, Edit, x220 y332 w50 h20 vTogglePause, %TogglePause% Gui, Add, Text, x90 y350 , Navigation Hotkeys Gui, Add, Text, x25 y370 , Up Gui, Add, Edit, x180 y370 w50 h20 vNextWindow_Up, %NextWindow_Up% Gui, Add, Text, x25 y390 , Down Gui, Add, Edit, x180 y390 w50 h20 vNextWindow_Down, %NextWindow_Down% Gui, Add, Text, x25 y410 , Left Gui, Add, Edit, x180 y410 w50 h20 vNextWindow_Left, %NextWindow_Left% Gui, Add, Text, x25 y430 , Right Gui, Add, Edit, x180 y430 w50 h20 vNextWindow_Right, %NextWindow_Right% Gui, Add, Button, x95 y460 w55 h20 gSave,Submit Gui, Add, Button, x155 y460 w55 h20 gCancel,Cancel Gui, Tab, Time Gui, add, Checkbox, y75 x200 Checked%Timebank% VTimebank Gui, add, text, y75 x25,Click Timebank automatically Gui, add, Text, w200 y95 x25, Time delay for pressing Time button Gui, add, DropDownList, w40 y90 x220 vInterval1, %ddlist% Gui, add, text, y135 x25, Click "Deal me in" automatically Gui, add, Checkbox, y135 x200 Checked%dealmein% Vdealmein Gui, Add, Text, x25 y155 w120 h20 , Toggle Deal me in Gui, Add, Edit, x180 y152 w50 h20 vToggledealmein, %Toggledealmein% Gui, Add, Text, x25 y180 ,Sitout on all tables Gui, Add, Edit, x180 y177 w50 h20 vSitOutNextAll, %SitOutNextAll% Gui, Add, Text, x25 y205 ,Remove sitout on all tables Gui, Add, Edit, x180 y202 w50 h20 vRemoveSitout, %RemoveSitout% Gui, Add, Text, x25 y235 ,Uncheck Auto-post on all tables Gui, Add, Edit, x180 y232 w50 h20 vuncheckpost, %uncheckpost% Gui, Add, Button, x75 y415 w55 h20 gSave,Submit Gui, Add, Button, x135 y415 w55 h20 gCancel,Cancel Gui, Tab, Table hotkeys Gui, Add, Edit, x180 y67 w50 h20 vfold, %fold% Gui, Add, Text, x25 y70 ,Fold Gui, Add, Edit, x180 y87 w50 h20 vcall, %call% Gui, Add, Text, x25 y90 ,Check/Call Gui, Add, Edit, x180 y107 w50 h20 vraise, %raise% Gui, Add, Text, x25 y110 ,Bet/Raise Gui, Add, Edit, x180 y127 w50 h20 vfold2any, %fold2any% Gui, Add, Text, x25 y130 ,Fold to any Gui, Add, Edit, x180 y147 w50 h20 vquickfold, %quickfold% Gui, Add, Text, x25 y150 ,Quick fold (Rush poker) Gui, Add, Edit, x180 y167 w50 h20 vallin, %allin% Gui, Add, Text, x25 y170 ,Allin Gui, add, Checkbox, y170 x240 Checked%Instant% VInstant,Instant Gui, Add, Button, x75 y315 w55 h20 gSave,Submit Gui, Add, Button, x135 y315 w55 h20 gCancel,Cancel Gui, Tab, Buy-in Gui, add, Checkbox, y60 x90 Checked%Buyin% VBuyin Gui, add, text, y60 x25,Auto Buy-in Gui, Add, Radio, x120 y50 w100 h20 Checked%max% vmax, Maximum Gui, Add, Radio, x120 y70 w120 h20 Checked%remembered% vremembered, Remembered/default Gui, Add, Radio, x120 y90 w20 h20 Checked%xbb% vxbb Gui, Add, Edit, x140 y90 w30 h20 vbbmultiplier, %bbmultiplier% Gui, Add, Text, x170 y93,BB Gui, add, Checkbox, y120 x190 Checked%TakeSeat% VTakeSeat Gui, add, text, y120 x25,Auto Take Seat (from waiting list) Gui, add, Checkbox, y165 x190 Checked%autoTakeSeat% VautoTakeSeat Gui, add, text, y165 x25,Auto Seat on new table Gui, add, Checkbox, y190 x190 Checked%leavetable% Vleavetable Gui, add, text, y190 x25,Auto leaving table confirmation Gui, Add, Text, x26 y265 ,Limit total number of tables to Gui, Add, Edit, x170 y262 w30 h20 vtotalnumber, %totalnumber% Gui, add, Checkbox, y265 x230 Checked%limit% Vlimit Gui, Add, Text, x16 y285 ,additionally press following button in seat available window: Gui, Add, Radio, x26 y305 w220 h15 Checked%remove% vremove, Remove me from all waiting lists Gui, Add, Radio, x26 y320 w220 h15 Checked%pressno% vpressno, No Gui, Add, Radio, x26 y335 w220 h15 Checked%pressnotyet% vpressnotyet, Not yet Gui, add, Checkbox, y390 x250 Checked%closeOKwindow% VcloseOKwindow Gui, add, text, y390 x25,Close FullTilt windows with just OK button Gui, Add, Button, x75 y435 w55 h20 gSave,Submit Gui, Add, Button, x135 y435 w55 h20 gCancel,Cancel Gui, Tab, BetPot Gui, add, Checkbox, y55 x180 Checked%autopot% Vautopot Gui, add, text, y55 x25,Auto put bet into bet box Gui, Add, Text, x15 y70 ,Pre* Gui, Add, Edit, x15 y85 w25 h20 vPotDefPre, %PotDefPre% Gui, Add, Text, x45 y70 ,Flop* Gui, Add, Edit, x45 y85 w25 h20 vPotDefFlop, %PotDefFlop% Gui, Add, Text, x75 y70 ,Turn* Gui, Add, Edit, x75 y85 w25 h20 vPotDefTurn, %PotDefTurn% Gui, Add, Text, x105 y70 ,River* Gui, Add, Edit, x105 y85 w25 h20 vPotDefRiver, %PotDefRiver% Gui, Add, Text, x140 y70 ,Open Gui, add, DropDownList, w45 y85 x140 vOpenDef, %ddlist1% Gui, Add, Text, x175 y70 ,Round(sb) Gui, add, Checkbox, y85 x200 Checked%RoundDef% VRoundDef Gui, Add, Text, x230 y70 ,Fix blinds Gui, add, Checkbox, y85 x250 Checked%FixDef% VFixDef Gui, Add, Edit, x60 y107 w80 h20 vpot1, %pot1% Gui, Add, Text, x15 y110 ,Pot1 Gui, Add, Text, x15 y130 ,Pre* Gui, Add, Edit, x15 y145 w25 h20 vPot1Pre, %Pot1Pre% Gui, Add, Text, x45 y130 ,Flop* Gui, Add, Edit, x45 y145 w25 h20 vPot1Flop, %Pot1Flop% Gui, Add, Text, x75 y130 ,Turn* Gui, Add, Edit, x75 y145 w25 h20 vPot1Turn, %Pot1Turn% Gui, Add, Text, x105 y130 ,River* Gui, Add, Edit, x105 y145 w25 h20 vPot1River, %Pot1River% Gui, Add, Text, x140 y130 ,Open Gui, add, DropDownList, w45 y145 x140 vOpen1, %ddlist1% Gui, Add, Text, x175 y130 ,Round(sb) Gui, add, Checkbox, y145 x200 Checked%Round1% VRound1 Gui, Add, Text, x230 y130 ,Fix blinds Gui, add, Checkbox, y145 x250 Checked%Fix1% VFix1 Gui, Add, Edit, x60 y167 w80 h20 vpot2, %pot2% Gui, Add, Text, x15 y170 ,Pot2 Gui, Add, Edit, x15 y190 w25 h20 vPot2Pre, %Pot2Pre% Gui, Add, Edit, x45 y190 w25 h20 vPot2Flop, %Pot2Flop% Gui, Add, Edit, x75 y190 w25 h20 vPot2Turn, %Pot2Turn% Gui, Add, Edit, x105 y190 w25 h20 vPot2River, %Pot2River% Gui, add, DropDownList, w45 y190 x140 vOpen2, %ddlist1% Gui, add, Checkbox, y190 x200 Checked%Round2% VRound2 Gui, add, Checkbox, y190 x250 Checked%Fix2% VFix2 Gui, Add, Edit, x60 y212 w80 h20 vpot3, %pot3% Gui, Add, Text, x15 y215 ,Pot3 Gui, Add, Edit, x15 y235 w25 h20 vPot3Pre, %Pot3Pre% Gui, Add, Edit, x45 y235 w25 h20 vPot3Flop, %Pot3Flop% Gui, Add, Edit, x75 y235 w25 h20 vPot3Turn, %Pot3Turn% Gui, Add, Edit, x105 y235 w25 h20 vPot3River, %Pot3River% Gui, add, DropDownList, w45 y235 x140 vOpen3, %ddlist1% Gui, add, Checkbox, y235 x200 Checked%Round3% VRound3 Gui, add, Checkbox, y235 x250 Checked%Fix3% VFix3 Gui, add, Checkbox, y260 x210 Checked%autobet% Vautobet Gui, add, text, y260 x55,Additionally press bet button Gui, Add, Edit, x80 y282 w40 h20 vincr1, %incr1% Gui, Add, Text, x15 y285 ,Increase by Gui, Add, Radio, x125 y280 w40 h15 Checked%bb1% vbb1,bb Gui, Add, Radio, x125 y295 w40 h15 Checked%sb1% vsb1,sb Gui, Add, Edit, x190 y282 w80 h20 valt1, %alt1% Gui, Add, Edit, x80 y312 w40 h20 vincr2, %incr2% Gui, Add, Text, x15 y315 ,Decrease by Gui, Add, Radio, x125 y310 w40 h15 Checked%bb2% vbb2,bb Gui, Add, Radio, x125 y325 w40 h15 Checked%sb2% vsb2,sb Gui, Add, Edit, x190 y312 w80 h20 valt2, %alt2% Gui, Add, Edit, x80 y342 w40 h20 vincr3, %incr3% Gui, Add, Text, x15 y345 ,Increase by Gui, Add, Radio, x125 y340 w40 h15 Checked%bb3% vbb3,bb Gui, Add, Radio, x125 y355 w40 h15 Checked%sb3% vsb3,sb Gui, Add, Edit, x190 y342 w80 h20 valt3, %alt3% Gui, Add, Edit, x80 y372 w40 h20 vincr4, %incr4% Gui, Add, Text, x15 y375 ,Decrease by Gui, Add, Radio, x125 y370 w40 h15 Checked%bb4% vbb4,bb Gui, Add, Radio, x125 y385 w40 h15 Checked%sb4% vsb4,sb Gui, Add, Edit, x190 y372 w80 h20 valt4, %alt4% Gui, Add, Text, x15 y400 ,Attempts to read Pot amount from screen Gui, Add, Edit, x230 y397 w25 h20 vattempts, %attempts% Gui, Add, Text, x15 y420 ,* Pot percent Gui, add, text,cRed y440 x35,BetPot function will work faster with aero theme off Gui, Add, Button, x75 y460 w55 h20 gSave,Submit Gui, Add, Button, x135 y460 w55 h20 gCancel,Cancel Gosub, GetIni Gui, show, w316, %thisahk% Return ;----------------------------------------------------------------------------------------------------- GetIni: Settitlematchmode,2 IfNotExist, %thisahk%.ini gosub, CreateIni IniRead, ClassicTheme,%thisahk%.ini, Options, ClassicTheme,0 IniRead, Racetrack,%thisahk%.ini, Options, Racetrack,0 IniRead, ActOnActiveTable, %thisahk%.ini, Options, ActOnActiveTable, 0 IniRead, sendundermouse, %thisahk%.ini, Options, sendundermouse, 0 IniRead, activatetableundermouse, %thisahk%.ini, Settings, activatetableundermouse, 0 IniRead, Highlight, %thisahk%.ini, Settings, Highlight, 0 IniRead, Highlightdef, %thisahk%.ini, Options, Highlightdef, 0 IniRead, HighlightA, %thisahk%.ini, Options, HighlightA, 0 IniRead, highlighthero, %thisahk%.ini, Options, highlighthero, 0 IniRead, highlightactive, %thisahk%.ini, Options, highlightactive, 0 IniRead, MoveMouse, %thisahk%.ini, Settings, MoveMouse, 0 IniRead, stealfocus, %thisahk%.ini, Settings, stealfocus, 0 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, Toggledealmein, %thisahk%.ini, Settings, Toggledealmein,%A_Space% If Toggledealmein { HotKey, IfWinActive, ahk_class QWidget Hotkey, %Toggledealmein%, Toggledealmein } IniRead, Timebank, %thisahk%.ini, Settings, Timebank, 0 IniRead, SitOutNextAll, %thisahk%.ini, Hotkeys, SitOutNextAll,%A_Space% IniRead, RemoveSitout, %thisahk%.ini, Hotkeys, RemoveSitout,%A_Space% IniRead, uncheckpost, %thisahk%.ini, Hotkeys, uncheckpost,%A_Space% if SitOutNextAll Hotkey, %SitOutNextAll%,SitOutNextAll if RemoveSitout Hotkey, %RemoveSitout%,RemoveSitout if uncheckpost Hotkey, %uncheckpost%,uncheckpost IniRead, findtabletoact, %thisahk%.ini, Hotkeys, findtabletoact,%A_Space% if findtabletoact Hotkey, %findtabletoact%,findtabletoact IniRead, register, %thisahk%.ini, Settings, register,%A_Space% IniRead, joinwaitlist, %thisahk%.ini, Settings, joinwaitlist,%A_Space% IniRead, Unjoinwaitlist, %thisahk%.ini, Settings, Unjoinwaitlist,%A_Space% if register Hotkey, %register%,register if joinwaitlist Hotkey, %joinwaitlist%,joinwaitlist if Unjoinwaitlist Hotkey, %Unjoinwaitlist%,Unjoinwaitlist IniRead, ActivateBottomWindow, %thisahk%.ini, Hotkeys, ActivateBottomWindow,%A_Space% if ActivateBottomWindow Hotkey, %ActivateBottomWindow%,ActivateBottomWindow IniRead, suspend, %thisahk%.ini, Hotkeys, suspend,%A_Space% if suspend Hotkey, %suspend%,suspend IniRead, TogglePause, %thisahk%.ini, Hotkeys, TogglePause,%A_Space% if TogglePause Hotkey, %TogglePause%,TogglePause IniRead, layout1, %thisahk%.ini, Hotkeys, layout1,%A_Space% if layout1 Hotkey, %layout1%,layout1 IniRead, layout2, %thisahk%.ini, Hotkeys, layout2,%A_Space% if layout2 Hotkey, %layout2%,layout2 IniRead, layout3, %thisahk%.ini, Hotkeys, layout3,%A_Space% if layout3 Hotkey, %layout3%,layout3 IniRead, NextWindow_Up,%thisahk%.ini, Hotkeys, NextWindow_Up,%A_Space% IniRead, NextWindow_Down,%thisahk%.ini, Hotkeys, NextWindow_Down,%A_Space% IniRead, NextWindow_Left,%thisahk%.ini, Hotkeys, NextWindow_Left,%A_Space% IniRead, NextWindow_Right,%thisahk%.ini, Hotkeys, NextWindow_Right,%A_Space% if NextWindow_Up { HotKey, IfWinActive, ahk_class QWidget Hotkey, %NextWindow_Up%, NextWindow_Up } if NextWindow_Down { HotKey, IfWinActive, ahk_class QWidget Hotkey, %NextWindow_Down%, NextWindow_Down } if NextWindow_Left { HotKey, IfWinActive, ahk_class QWidget Hotkey, %NextWindow_Left%, NextWindow_Left } if NextWindow_Right { HotKey, IfWinActive, ahk_class QWidget Hotkey, %NextWindow_Right%, NextWindow_Right } IniRead, fold, %thisahk%.ini, Hotkeys, fold,%A_Space% IniRead, call, %thisahk%.ini, Hotkeys, call,%A_Space% IniRead, raise, %thisahk%.ini, Hotkeys, raise,%A_Space% IniRead, fold2any, %thisahk%.ini, Hotkeys, fold2any,%A_Space% IniRead, quickfold, %thisahk%.ini, Hotkeys, quickfold,%A_Space% IniRead, allin, %thisahk%.ini, Hotkeys, allin,%A_Space% if fold { HotKey, IfWinActive Hotkey, %fold%,fold } if call { HotKey, IfWinActive Hotkey, %call%,call } if raise { HotKey, IfWinActive Hotkey, %raise%,raise } if fold2any { HotKey, IfWinActive Hotkey, %fold2any%,fold2any } if quickfold { HotKey, IfWinActive Hotkey, %quickfold%,quickfold } if allin { HotKey, IfWinActive Hotkey, %allin%,allin } IniRead, Instant, %thisahk%.ini, Settings, Instant, 0 IniRead, totalnumber, %thisahk%.ini, Variables, totalnumber, 0 IniRead, limit, %thisahk%.ini, Settings, limit, 0 IniRead, remove,%thisahk%.ini, Options, remove,0 IniRead, pressno,%thisahk%.ini, Options, pressno,0 IniRead, pressnotyet,%thisahk%.ini, Options, pressnotyet,0 IniRead, TakeSeat, %thisahk%.ini, Settings, TakeSeat, 0 IniRead, autoTakeSeat, %thisahk%.ini, Settings, autoTakeSeat, 0 IniRead, closeOKwindow, %thisahk%.ini, Settings, closeOKwindow, 0 IniRead, Buyin, %thisahk%.ini, Settings, Buyin, 0 IniRead, max, %thisahk%.ini, Settings, max, 0 IniRead, remembered, %thisahk%.ini, Settings, remembered, 0 IniRead, xbb, %thisahk%.ini, Settings, xbb, 0 IniRead, bbmultiplier, %thisahk%.ini, Variables, bbmultiplier,0 IniRead, leavetable, %thisahk%.ini, Settings, leavetable,0 IniRead, OpenDef, %thisahk%.ini, BetPotSettings, OpenDef StringReplace, ddlist1, ddlist1, %OpenDef%, %OpenDef%| GuiControl, , OpenDef, |%ddlist1% StringReplace, ddlist1, ddlist1, %OpenDef%|, %OpenDef% IniRead, RoundDef, %thisahk%.ini, BetPotSettings, RoundDef, 0 IniRead, FixDef, %thisahk%.ini, BetPotSettings, FixDef, 0 IniRead, PotDefPre, %thisahk%.ini, BetPotSettings, PotDefPre, 0 IniRead, PotDefFlop, %thisahk%.ini, BetPotSettings, PotDefFlop, 0 IniRead, PotDefTurn, %thisahk%.ini, BetPotSettings, PotDefTurn, 0 IniRead, PotDefRiver, %thisahk%.ini, BetPotSettings, PotDefRiver, 0 IniRead, Open1, %thisahk%.ini, BetPotSettings, Open1 StringReplace, ddlist1, ddlist1, %Open1%, %Open1%| GuiControl, , Open1, |%ddlist1% StringReplace, ddlist1, ddlist1, %Open1%|, %Open1% IniRead, Round1, %thisahk%.ini, BetPotSettings, Round1, 0 IniRead, Fix1, %thisahk%.ini, BetPotSettings, Fix1, 0 IniRead, Pot1Pre, %thisahk%.ini, BetPotSettings, Pot1Pre, 0 IniRead, Pot1Flop, %thisahk%.ini, BetPotSettings, Pot1Flop, 0 IniRead, Pot1Turn, %thisahk%.ini, BetPotSettings, Pot1Turn, 0 IniRead, Pot1River, %thisahk%.ini, BetPotSettings, Pot1River, 0 IniRead, pot1, %thisahk%.ini, BetPotHotkeys, pot1,%A_Space% if pot1 { HotKey, IfWinActive Hotkey, %pot1%,pot1 } IniRead, Open2, %thisahk%.ini, BetPotSettings, Open2 StringReplace, ddlist1, ddlist1, %Open2%, %Open2%| GuiControl, , Open2, |%ddlist1% StringReplace, ddlist1, ddlist1, %Open2%|, %Open2% IniRead, Round2, %thisahk%.ini, BetPotSettings, Round2, 0 IniRead, Fix2, %thisahk%.ini, BetPotSettings, Fix2, 0 IniRead, Pot2Pre, %thisahk%.ini, BetPotSettings, Pot2Pre, 0 IniRead, Pot2Flop, %thisahk%.ini, BetPotSettings, Pot2Flop, 0 IniRead, Pot2Turn, %thisahk%.ini, BetPotSettings, Pot2Turn, 0 IniRead, Pot2River, %thisahk%.ini, BetPotSettings, Pot2River, 0 IniRead, pot2, %thisahk%.ini, BetPotHotkeys, pot2,%A_Space% if pot2 { HotKey, IfWinActive Hotkey, %pot2%,pot2 } IniRead, Open3, %thisahk%.ini, BetPotSettings, Open3 StringReplace, ddlist1, ddlist1, %Open3%, %Open3%| GuiControl, , Open3, |%ddlist1% StringReplace, ddlist1, ddlist1, %Open3%|, %Open3% IniRead, Round3, %thisahk%.ini, BetPotSettings, Round3, 0 IniRead, Fix3, %thisahk%.ini, BetPotSettings, Fix3, 0 IniRead, Pot3Pre, %thisahk%.ini, BetPotSettings, Pot3Pre, 0 IniRead, Pot3Flop, %thisahk%.ini, BetPotSettings, Pot3Flop, 0 IniRead, Pot3Turn, %thisahk%.ini, BetPotSettings, Pot3Turn, 0 IniRead, Pot3River, %thisahk%.ini, BetPotSettings, Pot3River, 0 IniRead, pot3, %thisahk%.ini, BetPotHotkeys, pot3,%A_Space% if pot3 { HotKey, IfWinActive Hotkey, %pot3%,pot3 } IniRead, incr1, %thisahk%.ini, BetPotSettings, incr1, 0 IniRead, bb1, %thisahk%.ini, BetPotSettings, bb1, 0 IniRead, sb1, %thisahk%.ini, BetPotSettings, sb1, 0 IniRead, alt1, %thisahk%.ini, BetPotHotkeys, alt1, %A_Space% if alt1 { HotKey, IfWinActive, ahk_class QWidget Hotkey, %alt1%,alt1 } IniRead, incr2, %thisahk%.ini, BetPotSettings, incr2, 0 IniRead, bb2, %thisahk%.ini, BetPotSettings, bb2, 0 IniRead, sb2, %thisahk%.ini, BetPotSettings, sb2, 0 IniRead, alt2, %thisahk%.ini, BetPotHotkeys, alt2, %A_Space% if alt2 { HotKey, IfWinActive, ahk_class QWidget Hotkey, %alt2%,alt2 } IniRead, incr3, %thisahk%.ini, BetPotSettings, incr3, 0 IniRead, bb3, %thisahk%.ini, BetPotSettings, bb3, 0 IniRead, sb3, %thisahk%.ini, BetPotSettings, sb3, 0 IniRead, alt3, %thisahk%.ini, BetPotHotkeys, alt3, %A_Space% if alt3 { HotKey, IfWinActive, ahk_class QWidget Hotkey, %alt3%,alt3 } IniRead, incr4, %thisahk%.ini, BetPotSettings, incr4, 0 IniRead, bb4, %thisahk%.ini, BetPotSettings, bb4, 0 IniRead, sb4, %thisahk%.ini, BetPotSettings, sb4, 0 IniRead, alt4, %thisahk%.ini, BetPotHotkeys, alt4, %A_Space% if alt4 { HotKey, IfWinActive, ahk_class QWidget Hotkey, %alt4%,alt4 } IniRead, autopot, %thisahk%.ini, BetPotSettings, autopot, 0 IniRead, autobet, %thisahk%.ini, BetPotSettings, autobet, 0 IniRead, attempts, %thisahk%.ini, BetPotVariables, attempts, 0 Return ;----------------------------------------------------------------------------------------------------- MakeIni: If ClassicTheme IniWrite, %ClassicTheme%, %thisahk%.ini, Options, ClassicTheme If Racetrack IniWrite, %Racetrack%, %thisahk%.ini, Options, Racetrack if ActOnActiveTable IniWrite, %ActOnActiveTable%, %thisahk%.ini, Options, ActOnActiveTable if sendundermouse IniWrite, %sendundermouse%, %thisahk%.ini, Options, sendundermouse IniWrite, %activatetableundermouse%, %thisahk%.ini, Settings, activatetableundermouse IniWrite, %Highlight%, %thisahk%.ini, Settings, Highlight if Highlightdef IniWrite, %Highlightdef%, %thisahk%.ini, Options, Highlightdef if HighlightA IniWrite, %HighlightA%, %thisahk%.ini, Options, HighlightA if highlighthero IniWrite, %highlighthero%, %thisahk%.ini, Options, highlighthero if highlightactive IniWrite, %highlightactive%, %thisahk%.ini, Options, highlightactive IniWrite, %MoveMouse%, %thisahk%.ini, Settings, MoveMouse IniWrite, %stealfocus%, %thisahk%.ini, Settings, stealfocus 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 Toggledealmein IniWrite, %Toggledealmein%, %thisahk%.ini, Settings, Toggledealmein IniWrite, %Timebank%, %thisahk%.ini, Settings, Timebank if SitOutNextAll IniWrite, %SitOutNextAll%, %thisahk%.ini, Hotkeys, SitOutNextAll if RemoveSitout IniWrite, %RemoveSitout%, %thisahk%.ini, Hotkeys, RemoveSitout if uncheckpost IniWrite, %uncheckpost%, %thisahk%.ini, Hotkeys, uncheckpost if findtabletoact IniWrite, %findtabletoact%, %thisahk%.ini, Hotkeys, findtabletoact if register IniWrite, %register%, %thisahk%.ini, Settings, register if joinwaitlist IniWrite, %joinwaitlist%, %thisahk%.ini, Settings, joinwaitlist if Unjoinwaitlist IniWrite, %Unjoinwaitlist%, %thisahk%.ini, Settings, Unjoinwaitlist if ActivateBottomWindow IniWrite, %ActivateBottomWindow%, %thisahk%.ini, Hotkeys, ActivateBottomWindow if suspend IniWrite, %suspend%, %thisahk%.ini, Hotkeys, suspend if TogglePause IniWrite, %TogglePause%, %thisahk%.ini, Hotkeys, TogglePause if layout1 IniWrite, %layout1%, %thisahk%.ini, Hotkeys, layout1 if layout2 IniWrite, %layout2%, %thisahk%.ini, Hotkeys, layout2 if layout3 IniWrite, %layout3%, %thisahk%.ini, Hotkeys, layout3 If NextWindow_Up IniWrite, %NextWindow_Up%, %thisahk%.ini, Hotkeys, NextWindow_Up If NextWindow_Down IniWrite, %NextWindow_Down%, %thisahk%.ini, Hotkeys, NextWindow_Down If NextWindow_Left IniWrite, %NextWindow_Left%, %thisahk%.ini, Hotkeys, NextWindow_Left If NextWindow_Right IniWrite, %NextWindow_Right%, %thisahk%.ini, Hotkeys, NextWindow_Right if fold IniWrite, %fold%, %thisahk%.ini, Hotkeys, fold if call IniWrite, %call%, %thisahk%.ini, Hotkeys, call if raise IniWrite, %raise%, %thisahk%.ini, Hotkeys, raise if fold2any IniWrite, %fold2any%, %thisahk%.ini, Hotkeys, fold2any if quickfold IniWrite, %quickfold%, %thisahk%.ini, Hotkeys, quickfold if allin IniWrite, %allin%, %thisahk%.ini, Hotkeys, allin IniWrite, %Instant%, %thisahk%.ini, Settings, Instant IniWrite, %totalnumber%, %thisahk%.ini, Variables, totalnumber IniWrite, %limit%, %thisahk%.ini, Settings, limit If remove IniWrite, %remove%, %thisahk%.ini, Options, remove If pressno IniWrite, %pressno%, %thisahk%.ini, Options, pressno If pressnotyet IniWrite, %pressnotyet%, %thisahk%.ini, Options, pressnotyet IniWrite, %TakeSeat%, %thisahk%.ini, Settings, TakeSeat IniWrite, %autoTakeSeat%, %thisahk%.ini, Settings, autoTakeSeat IniWrite, %closeOKwindow%, %thisahk%.ini, Settings, closeOKwindow IniWrite, %Buyin%, %thisahk%.ini, Settings, Buyin if max IniWrite, %max%, %thisahk%.ini, Settings, max if remembered IniWrite, %remembered%, %thisahk%.ini, Settings, remembered if xbb IniWrite, %xbb%, %thisahk%.ini, Settings, xbb IniWrite, %bbmultiplier%, %thisahk%.ini, Variables, bbmultiplier IniWrite, %leavetable%, %thisahk%.ini, Settings, leavetable IniWrite, %OpenDef%, %thisahk%.ini, BetPotSettings, OpenDef IniWrite, %RoundDef%, %thisahk%.ini, BetPotSettings, RoundDef IniWrite, %FixDef%, %thisahk%.ini, BetPotSettings, FixDef IniWrite, %PotDefPre%, %thisahk%.ini, BetPotSettings, PotDefPre IniWrite, %PotDefFlop%, %thisahk%.ini, BetPotSettings, PotDefFlop IniWrite, %PotDefTurn%, %thisahk%.ini, BetPotSettings, PotDefTurn IniWrite, %PotDefRiver%, %thisahk%.ini, BetPotSettings, PotDefRiver IniWrite, %Open1%, %thisahk%.ini, BetPotSettings, Open1 IniWrite, %Round1%, %thisahk%.ini, BetPotSettings, Round1 IniWrite, %Fix1%, %thisahk%.ini, BetPotSettings, Fix1 IniWrite, %Pot1Pre%, %thisahk%.ini, BetPotSettings, Pot1Pre IniWrite, %Pot1Flop%, %thisahk%.ini, BetPotSettings, Pot1Flop IniWrite, %Pot1Turn%, %thisahk%.ini, BetPotSettings, Pot1Turn IniWrite, %Pot1River%, %thisahk%.ini, BetPotSettings, Pot1River if pot1 IniWrite, %pot1%, %thisahk%.ini, BetPotHotkeys, pot1 IniWrite, %Open2%, %thisahk%.ini, BetPotSettings, Open2 IniWrite, %Round2%, %thisahk%.ini, BetPotSettings, Round2 IniWrite, %Fix2%, %thisahk%.ini, BetPotSettings, Fix2 IniWrite, %Pot2Pre%, %thisahk%.ini, BetPotSettings, Pot2Pre IniWrite, %Pot2Flop%, %thisahk%.ini, BetPotSettings, Pot2Flop IniWrite, %Pot2Turn%, %thisahk%.ini, BetPotSettings, Pot2Turn IniWrite, %Pot2River%, %thisahk%.ini, BetPotSettings, Pot2River if pot2 IniWrite, %pot2%, %thisahk%.ini, BetPotHotkeys, pot2 IniWrite, %Open3%, %thisahk%.ini, BetPotSettings, Open3 IniWrite, %Round3%, %thisahk%.ini, BetPotSettings, Round3 IniWrite, %Fix3%, %thisahk%.ini, BetPotSettings, Fix3 IniWrite, %Pot3Pre%, %thisahk%.ini, BetPotSettings, Pot3Pre IniWrite, %Pot3Flop%, %thisahk%.ini, BetPotSettings, Pot3Flop IniWrite, %Pot3Turn%, %thisahk%.ini, BetPotSettings, Pot3Turn IniWrite, %Pot3River%, %thisahk%.ini, BetPotSettings, Pot3River if pot3 IniWrite, %pot3%, %thisahk%.ini, BetPotHotkeys, pot3 IniWrite, %incr1%, %thisahk%.ini, BetPotSettings, incr1 if bb1 IniWrite, %bb1%, %thisahk%.ini, BetPotSettings, bb1 if sb1 IniWrite, %sb1%, %thisahk%.ini, BetPotSettings, sb1 if alt1 IniWrite, %alt1%, %thisahk%.ini, BetPotHotkeys, alt1 IniWrite, %incr2%, %thisahk%.ini, BetPotSettings, incr2 if bb2 IniWrite, %bb2%, %thisahk%.ini, BetPotSettings, bb2 if sb2 IniWrite, %sb2%, %thisahk%.ini, BetPotSettings, sb2 if alt2 IniWrite, %alt2%, %thisahk%.ini, BetPotHotkeys, alt2 IniWrite, %incr3%, %thisahk%.ini, BetPotSettings, incr3 if bb3 IniWrite, %bb3%, %thisahk%.ini, BetPotSettings, bb3 if sb3 IniWrite, %sb3%, %thisahk%.ini, BetPotSettings, sb3 if alt3 IniWrite, %alt3%, %thisahk%.ini, BetPotHotkeys, alt3 IniWrite, %incr4%, %thisahk%.ini, BetPotSettings, incr4 if bb4 IniWrite, %bb4%, %thisahk%.ini, BetPotSettings, bb4 if sb4 IniWrite, %sb4%, %thisahk%.ini, BetPotSettings, sb4 if alt4 IniWrite, %alt4%, %thisahk%.ini, BetPotHotkeys, alt4 IniWrite, %autopot%, %thisahk%.ini, BetPotSettings, autopot IniWrite, %autobet%, %thisahk%.ini, BetPotSettings, autobet IniWrite, %attempts%, %thisahk%.ini, BetPotVariables, attempts Return ;----------------------------------------------------------------------------------------------------- CreateIni: Racetrack:=0 ClassicTheme:=1 ActOnActiveTable:=1 sendundermouse:=0 activatetableundermouse:=0 Highlight:=0 Highlightdef:=1 HighlightA:=0 highlightactive:=1 highlighthero:=0 MoveMouse:=0 stealfocus:=1 flicker1:=1 flicker2:=0 Interval1:=1 dealmein:=0 Timebank:=0 Instant:=0 register=^r NextWindow_Up=Up NextWindow_Down=Down NextWindow_Left=Left NextWindow_Right=Right limit:=0 remove:=0 pressno:=0 pressnotyet:=1 totalnumber:=12 TakeSeat:=0 autoTakeSeat:=0 closeOKwindow:=1 Buyin:=0 remembered:=1 bbmultiplier:=40 autopot:=0 autobet:=0 OpenDef=ssnl Open1=ssnl Open2=trny Open3=---- RoundDef:=1 Round1:=1 Round2:=1 Round3:=1 fixDef:=1 fix1:=1 fix2:=1 fix3:=1 PotDefPre:=75 PotDefFlop:=75 PotDefTurn:=66 PotDefRiver:=66 Pot1Pre:=75 Pot1Flop:=75 Pot1Turn:=66 Pot1River:=66 Pot2Pre:=100 Pot2Flop:=80 Pot2Turn:=80 Pot2River:=80 Pot3Pre:=100 Pot3Flop:=100 Pot3Turn:=100 Pot3River:=100 Pot1=mbutton Pot2=xbutton1 Pot3=xbutton2 incr1:=1 incr2:=1 incr3:=1 incr4:=1 bb1:=1 sb1:=0 bb2:=1 sb2:=0 bb3:=0 sb3:=1 bb4:=0 sb4:=1 alt1=wheelup alt2=wheeldown alt3=^wheelup alt4=^wheeldown attempts:=1 gosub, MakeIni gosub, buildgui return ;----------------------------------------------------------------------------------------------------- GuiClose: gosub, cancel return ;----------------------------------------------------------------------------------------------------- menuGui: gosub, getini winget,id,id, %thisahk% ahk_class AutoHotkeyGUI if !DllCall( "IsWindowVisible", "UInt",id) gosub, buildgui else winactivate,ahk_id%id% Gui, Submit,nohide return ;----------------------------------------------------------------------------------------------------- reload: reload return ;----------------------------------------------------------------------------------------------------- Save: Gui, Submit FileDelete, %thisahk%.ini gosub, MakeIni Reload return ;----------------------------------------------------------------------------------------------------- Cancel: Gui, Destroy Return ;----------------------------------------------------------------------------------------------------- TogglePause: pause,toggle return ;----------------------------------------------------------------------------------------------------- Suspend: suspend if A_IsSuspended=0 { T=Off } else { T=On } Gui, 97:Add, Text,,Suspend: %T% Gui, 97:+ToolWindow Gui, 97:Show, w150 h20 Sleep, 1500 Gui, 97:Destroy return ;----------------------------------------------------------------------------------------------------- Edit: edit return ;----------------------------------------------------------------------------------------------------- exitSub: DllCall( "gdi32.dll\ReleaseDC", "Uint", tmp_buffer ) DllCall( "gdi32.dll\DeleteDC", "Uint", tmp_buffer ) DllCall( "gdi32.dll\DeleteObject","Uint",hbm_buffer) DllCall( "gdi32.dll\ReleaseDC","Uint",hdc_buffer) DllCall( "gdi32.dll\DeleteDC","Uint",hdc_buffer) DllCall( "gdi32.dll\ReleaseDC","Uint",hdc_frame) DllCall( "gdi32.dll\DeleteDC","Uint",hdc_frame) if flicker1 { Process, Exist, FullTiltPoker.exe if (ErrorLevel) { FTP := ErrorLevel Process, Priority, %FTP%, Normal } } exitApp return ;-----------------------------------------------------------------------------------------------------
Ryendal, should work fine in the version posted above.
Can anyone check if autotake seat+autoseat+autobuyin works well in the latest version?
Can anyone check if autotake seat+autoseat+autobuyin works well in the latest version?
Thanks Max for the update,
autotake seat+autoseat+autobuyin seem to be working fine.
I cant seem to get Check and Fold to any bet working
Win 7 64bit
FTP RaceTrack
Running AHK and FTCash as admin
Compiled script
Desktop Comp on and off (tired both)
autotake seat+autoseat+autobuyin seem to be working fine.
I cant seem to get Check and Fold to any bet working
Win 7 64bit
FTP RaceTrack
Running AHK and FTCash as admin
Compiled script
Desktop Comp on and off (tired both)
danny325is, could you give more info pls: limit, short or fullring table, hotkey you were trying to use.
i have admin privileges.
i use a ftp skin, but my background is solid black as well as the table.
Tried this script for the first time yesterday and it worked pretty well, however, today, when I click any button to bet pot, it sets the amount to 0. Any idea what might have caused this?
Arseface, try using different background temporarily to check if it is the case.
JStunna, check if correct table view is chosen on general tab, make sure that nothing covers pot amount, check if "display pot total" is turned on in FT client, notice that script won't work correctly with modified font.
JStunna, check if correct table view is chosen on general tab, make sure that nothing covers pot amount, check if "display pot total" is turned on in FT client, notice that script won't work correctly with modified font.
just tested this out in a sit n go. works great.
hmm tested out a new background, it workd, reverted to my old background and it started working.
strange stuff =)). only while 1tabling though, will try other combinations later.
strange stuff =)). only while 1tabling though, will try other combinations later.
Arseface, try using different background temporarily to check if it is the case.
JStunna, check if correct table view is chosen on general tab, make sure that nothing covers pot amount, check if "display pot total" is turned on in FT client, notice that script won't work correctly with modified font.
JStunna, check if correct table view is chosen on general tab, make sure that nothing covers pot amount, check if "display pot total" is turned on in FT client, notice that script won't work correctly with modified font.
Feedback is used for internal purposes. LEARN MORE