StarsCash - free script for PokerStars containing all functions cash player may need.
02-17-2010
, 10:40 AM
Join Date: Aug 2009
Posts: 1,700
No, i'm not using tableninja, what should "Set Table Aside" hotkey do, just move table to specified position or something else?
02-17-2010
, 01:36 PM
Join Date: Oct 2009
Posts: 50
Yes. But I found what I needed. Will wait for "wait for big blind" for normal tables feature.
02-17-2010
, 04:38 PM
Join Date: Apr 2006
Posts: 137
Max,
Great script. The unjoin all does not seem to be working for me. Also, can you have a setting for the number of tables to open? I play 24, but when I get all 24 open it keeps trying to open more.
Thanks,
jpack.
Great script. The unjoin all does not seem to be working for me. Also, can you have a setting for the number of tables to open? I play 24, but when I get all 24 open it keeps trying to open more.
Thanks,
jpack.
02-17-2010
, 06:35 PM
Join Date: Apr 2007
Posts: 935
02-18-2010
, 08:40 AM
Join Date: Jan 2010
Posts: 10
Very nice program, I was wondering is there a way to sort the stacked tables in alphabetical order?
02-19-2010
, 09:34 AM
Join Date: Aug 2009
Posts: 1,700
I'll try to add your requests by small portions. I haven't been able to test these new options thoroughly so post here if anything has to be fixed.
StarsCash v1.42
StarsPics (needed for BetPot function only) can be found here: http://depositfiles.com/files/40h0rmelj
Put StarsPics folder to the folder with ahk file.
Don't forget to choose correct table theme on General tab.
BetPot function won't be efficient with aero theme on, easiest way to disable aero theme just for PokerStars: rightclick PokerStarsUpdate.exe, choose Properties - Compatibility - Disable desktop composition.
StarsCash v1.42
- Added option to limit total number of tables (will check "remove me from all other waitlists" and press "No" in Seat available window, will auto close manually opened table with limit reached)
- Added option to press "wait for big blind" button on normal speed tables automatically
Code:
; #### StarsCash #### ; AHK version: 1.0.48.05 ; date: February 19,2010 version := "1.42" ; author: Max1mums (max1mums@overcards.com) #SingleInstance, Force #NoEnv #MaxHotkeysPerInterval 500| Settitlematchmode, 2 OnExit exitSub debug:=0 StringTrimRight, thisahk, A_ScriptName, 4 SetWorkingDir %A_ScriptDir% Menu, Tray, NoStandard Menu, Tray, Add, Settings, menugui Menu, Tray, Add Menu, Tray, Add, Reload, reload Menu, Tray, Default, Settings Menu, Tray, Add Menu, Tray, Add, Suspend, Suspend Menu, Tray, Add, Pause, TogglePause Menu, Tray, Add Menu, Tray, Add, Edit, Edit Menu, Tray, Add Menu, Tray, Add, Donate, Donation Menu, Tray, Add, Exit, ExitSub OnMessage(0x112,"WM_SYSCOMMAND") WM_SYSCOMMAND(wParam) { if (A_Gui && wParam = 0xF020) ; SC_MINIMIZE { Gui, destroy return 0 } } SetBatchLines,1ms SetWinDelay,-1 SendMode Input SysGet, xbord, 32 SysGet, border, 32 SysGet, ybord, 33 SysGet, cap, 4 SysGet, caption, 4 ; Border of the "Highlighter" border_color := "ff0000" border_size := 5 trans := 255 boost:=false ;betpot stuff stars_editbox = PokerStarsSliderEditorClass1 ddlist= ddlist.="ssnl" . "|" ddlist.="trny" . "|" ddlist.="mix" . "|" ddlist.="----" . "|" ddlist1= Loop 14 ddlist1:=ddlist1 . A_index . "|" gosub,getini Gui 11:Show, w1 1 x1 y1, PokerWindow WinGet,PokerWindowID, id, PokerWindow Gui 11:Show,hide, w1 h1 x1 y1, PokerWindow Init() ;;;;;;;;;;;;;;End of init;;;;;;;;;;;;;; settimer,HeroSeated,1103 settimer,Popupwatcher,139 if CheckWhenFree settimer,FreeCheck,77 if ClickImBack settimer,ClickBack,2033 if Timebank settimer,ClickTimebank,1555 settimer,BetPot,37 settimer,clickwithdelay,93 settimer,NewTable,67 if Highlight settimer,Highlighter,70 if activatetableundermouse settimer,activateundermouse,133 if MoveMouse settimer,MouseMove,119 if leavetable settimer,closetable,249 if suspendforchatall settimer,suspendallforchat,24 if clickWaitbb settimer,clickbb,1211 return ;----------------------------------------------------------------------------------------------------- Init() { local list,id winget,list,list,ahk_class PokerStarsTableFrameClass ;Logged In loop %list% { id:=list%A_index% if seated%id% is not number { loop %list% { id:=list%A_index% seated%id%:=2 } break } } } return ;----------------------------------------------------------------------------------------------------- NewTable: IsTableNew() return IsTableNew() { local list,id winget,list,list,ahk_class PokerStarsTableFrameClass 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(tablequeue,id) movetolist(id,A_TickCount) } seated%id%:=1 } else if ((limit=1) & (list>totalnumber)) winclose,ahk_id%id% } } } 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=PokerStarsTableFrameClass return 1 else return 0 } } else return 0 } ;----------------------------------------------------------------------------------------------------- IsBetBoxNew() { global oldid,PotDefPre,PotDefFlop,PotDefTurn,PotDefRiver,RoundDef,OpenDef,FixDef winget winid,id,A if (winid<>oldid) { ControlGet, Z, Visible,,PokerStarsSliderClass1, ahk_id %winid% if Z { oldid:=winid if RoundDef Roundsb:="smallblind" else Roundsb:=0.2 Pot(winid,PotDefPre A_space PotDefFlop A_space PotDefTurn A_space PotDefRiver, Roundsb, OpenDef, FixDef) } else oldid= } else { ControlGet, Z, Visible,,PokerStarsSliderClass1, ahk_id %winid% if !Z oldid= } } return ;----------------------------------------------------------------------------------------------------- IsMouseInChat(id) { wingetpos,,,w,h,ahk_id%id% coordmode,mouse,relative mousegetpos,x1,y1 mousex:=0.5000 mousey:=0.7477 relstarsclientpoint(id,mousex,mousey,0) if ((x1<mousex) and (y1>mousey)) & ((x1>0) & (y1>0) & (y1<h) & (x1<w)) return 1 else return 0 } ;----------------------------------------------------------------------------------------------------- suspendallforchat: if suspended!=on suspendall() return suspendall() { wingetclass,class,A if class=PokerStarsTableFrameClass { winget,id,id,A if IsMouseInChat(id) suspend,on else if A_isSuspended suspend,off } } return ;----------------------------------------------------------------------------------------------------- listAdd( byRef list, item, del="," ) { list:=( list!="" ? ( list . del . item ) : item ) return list } ;----------------------------------------------------------------------------------------------------- listDelItem( byRef list, item, del=",") { ifEqual, item,, return list list:=del . list . del StringReplace, list, list, %item%%del% StringTrimLeft, list, list, 1 StringTrimRight, list, list, 1 return list } ;----------------------------------------------------------------------------------------------------- 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 ;----------------------------------------------------------------------------------------------------- movetolisttimebank(winid,time) { global tablequeuetimebank listAdd(tablequeuetimebank, winid . "-" . time) } return ;----------------------------------------------------------------------------------------------------- removefromlisttimebank(winid) { global tablequeuetimebank Loop, Parse, tablequeuetimebank, `, { if InStr(A_loopfield,winid) listDelItem(tablequeuetimebank, A_Loopfield) } } return ;----------------------------------------------------------------------------------------------------- clickwithdelay: clickdelay() clickdelaytimebank() return ;----------------------------------------------------------------------------------------------------- clickdelay() { global tablequeue Loop, Parse, tablequeue, `, { stringsplit,tab,A_loopfield,- if abs(tab2-A_TickCount)>500 { ClickSeats(tab1) listDelItem(tablequeue, A_Loopfield) } } } return ;----------------------------------------------------------------------------------------------------- clickdelaytimebank() { global tablequeuetimebank,interval1,BlackTheme,SlickTheme interval:=interval1*1000 Loop, Parse, tablequeuetimebank, `, { stringsplit,tab,A_loopfield,- if abs(tab2-A_TickCount)>interval { if BlackTheme { click_x :=0.5875 click_y :=0.7531 } else if SlickTheme { click_x :=0.5047 click_y :=0.8256 } else { click_x :=0.6582 click_y :=0.7729 click_x1:=0.7441 click_y1:=0.8127 } PostClickStars(click_x, click_y, tab1, 0) PostClickStars(click_x1, click_y1, tab1, 0) listDelItem(tablequeuetimebank, A_Loopfield) } } } return ;----------------------------------------------------------------------------------------------------- clickok() { ifwinexist,PokerStars ahk_class #32770 { ControlGet, Z, Visible,,Button2, PokerStars ahk_class #32770 if !z ControlGet, Z, Visible,,Button3, PokerStars ahk_class #32770 if !z controlclick,Button1,PokerStars ahk_class #32770 } } return ;----------------------------------------------------------------------------------------------------- autobuy() { global max,remembered,xbb,bbmultiplier ifwinexist, Buy-in ahk_class #32770 { winget,id,id,Buy-in ahk_class #32770 ControlGet, v, Visible,,Edit1, ahk_id %id% if v { SetControlDelay, -1 if max { Control, Check,, Button1, ahk_id %id% sleep,-1 ControlClick, OK, ahk_id %id% } if remembered { ControlClick, OK, ahk_id %id% } if xbb { parent:=DllCall("GetParent","uint",id) wingettitle,title,ahk_id %parent% stringtrimleft,hero,title,InStr(title, A_space,false,0) If ((InStr(title, "No Limit") OR InStr(title, "Pot Limit")) AND InStr(title, "Tournament") = 0) { StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 } else if (InStr(title, "No Limit") <> 0 AND InStr(title, "Tournament") <> 0) { StringMid, bb, title, InStr(title, "/", "", InStr(title, "Blinds")) + 1, InStr(title, a_space, "", InStr(title, "Blinds") + 8) - InStr(title, "/", "", InStr(title, "Blinds")) - 1 ;___so we retrieve the big blind instead } StringReplace,bb,bb,$,,1 StringReplace,bb,bb,€,,1 StringReplace,bb,bb,Ђ,,1 StringReplace,bb,bb,Ј,,1 bb*=bbmultiplier bb := Round(bb, 2) Control, Check,, Button2, ahk_id %id% sleep,-1 ControlSetText, Edit1, %bb%, ahk_id%id% ControlClick, OK, ahk_id %id% winwaitclose,ahk_id %id%,,1.5 if errorlevel ControlClick, Cancel, ahk_id %id% } } } } return ;----------------------------------------------------------------------------------------------------- Popupwatcher: if TakeSeat TakeSeat() if Buyin autobuy() if closeOKwindow clickok() return ;----------------------------------------------------------------------------------------------------- FreeCheck: IfWinExist, PokerStars, Check { SetControlDelay, -1 ControlFocus, Check Sleep, -1 ControlClick, Check Sleep, -1 ControlSend, Check, {SPACE} } return ;----------------------------------------------------------------------------------------------------- HeroSeated: IsHeroSeared() return IsHeroSeared() { local list,winid,title local col,click_x,click_y winget,list,list,ahk_class PokerStarsTableFrameClass loop %list% { winid:=list%A_index% wingettitle,title,ahk_id%winid% col:=PixelColorA(0.0115,0.6800,winid,1) if seated%winid%=1 if instr(title,"Logged In") if (instr(col,"15193294")) or (instr(col,"-0-")) or (instr(col,"16777215") or (instr(col,"65331"))) { if move { if AutoMoveBack { WinMove, ahk_id%winid%,, xstart%winid%,ystart%winid% seated%winid%:=2 } } if Autopost { if !instr(title,"fast") { click_x :=0.0142 ;click_y :=0.7224 click_y :=0.7075 PostclickStars(click_x,click_y,winid,0) } } if waitbb { click_x :=0.6629 click_y :=0.8555 PostclickStars(click_x,click_y,winid,0) } if seated%winid%!=2 seated%winid%:=3 } } } return ;----------------------------------------------------------------------------------------------------- clickbb: clickwaitbb() return clickwaitbb() { global HyperSimpleTheme,ClassicTheme,SlickTheme,BlackTheme winget,list,list,Logged In ahk_class PokerStarsTableFrameClass loop %list% { id:=list%A_index% wingettitle,title,ahk_id%id% ControlGet,vis,Visible,,PokerStarsSliderClass1,ahk_id%id% if !instr(title,"fast") & (vis!=1) { waitx1:=0.6962 waity1:=0.9747 waitx2:=0.6962 waity2:=0.9908 v:=30 col:=PixelColorA(waitx1,waity1,id,0,waitx2,waity2,0) stringsplit,col,col,- if comparecolors(col1,col2,v)=0 PostclickStars(waitx1,waity1,id,0) } } } return relStarsClientPoint(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 ;----------------------------------------------------------------------------------------------------- PostLeftClick(x, y, table_id, activate=1, control_class="") { ; ### 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% critical,6 PostMessage, 0x201, 0x0001, ((y<<16)^x), %control_class%, ahk_id%table_id% PostMessage, 0x202 , 0, ((y<<16)^x), %control_class%, ahk_id%table_id% critical,off sleep,-1 } return ;----------------------------------------------------------------------------------------------------- PostclickStars(x,y,winid,activate=1,client=1) { relStarsClientPoint(winid, x, y,client) DllCall("SetCapture","Uint",winid) PostLeftClick(x, y, winid, activate) DllCall("ReleaseCapture") } return ;----------------------------------------------------------------------------------------------------- PixelColorA(colx,coly,id,region=0,colx1=0,coly1=0,region1=0) { global xbord,ybord,cap hdc_frame := DllCall( "GetDC", "UInt",PokerWindowID) hdc_buffer := DllCall("gdi32.dll\CreateCompatibleDC","UInt",hdc_frame) WinGetPos,,,W,H,ahk_id %id% hbm_buffer := DllCall("gdi32.dll\CreateCompatibleBitmap", "UInt",hdc_frame, "Int",w, "Int",h) DllCall( "gdi32.dll\SelectObject", "UInt",hdc_buffer, "UInt",hbm_buffer) DllCall( "PrintWindow", "UInt" , id , "UInt" , hdc_buffer , "UInt" , 0 ) WinGet,ctrls,ControlList,ahk_id %id% Loop,Parse,ctrls,`n { class:=A_LoopField ControlGet,ctrlid,Hwnd,,%class%,ahk_id %id% ControlGet,visible,Visible,,,ahk_id %ctrlid% If visible=1 DllCall("RedrawWindow","UInt",ctrlid,"UInt",0,"UInt",0,"UInt", 1|4|64|1024) } DllCall("RedrawWindow","UInt",id,"UInt",0,"UInt",0,"UInt", 1|4|64|1024) x:=floor(((W-2*xbord)*colx)) + xbord y:=floor(((H-(2*ybord)-cap)*coly)) + ybord + cap if region { loop 10 { delta:=A_index loop 10 { 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 ;pix.=p . "*" . p1 . "-" pix.=p . "-" } } } else { pix := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) SetFormat, IntegerFast, hex pix += 0 pix .= "" SetFormat, IntegerFast, d } if colx1 { x:=floor(((W-2*xbord)*colx1)) + xbord y:=floor(((H-(2*ybord)-cap)*coly1)) + ybord + cap if region1 { loop 10 { delta:=A_index loop 10 { delta1:=A_index p := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x+delta , "Int", y+delta1) pix1.=p . "-" } } } else { pix1 := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) SetFormat, IntegerFast, hex pix1 += 0 pix1 .= "" SetFormat, IntegerFast, d } } if region1 pix.="*" . pix1 else if colx1 pix.="-" . pix1 sleep,1 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) return pix } ;----------------------------------------------------------------------------------------------------- CompareColors(ByRef bgr1, ByRef bgr2, ByRef variation) { c1 := bgr1 & 0xff c2 := bgr2 & 0xff if (abs(c1 - c2) > variation) return false c1 := (bgr1 >> 8) & 0xff c2 := (bgr2 >> 8) & 0xff if (abs(c1 - c2) > variation) return false c1 := (bgr1 >> 16) & 0xff c2 := (bgr2 >> 16) & 0xff if (abs(c1 - c2) > variation) return false return true } ;----------------------------------------------------------------------------------------------------- CloseAllWithNoAction: settimer,ClickBack,off SetControlDelay, -1 WinGet, list, List, ahk_class PokerStarsTableFrameClass Loop, %list% { winid:=list%A_Index% wingettitle,title,ahk_id%winid% Sittingout:=PixelColorA(0.8125,0.8621,winid) If !instr(title,"Logged In") OR ((Sittingout=0x000000) OR (Sittingout=0xDFD9CE) OR (Sittingout=0xD2EBF3) OR (Sittingout=0xB3A39D) OR (Sittingout=0x9D9D9D) OR (Sittingout=0xCCCCCC) OR (Sittingout=0xDEDBCE) OR (Sittingout=0xB5A29c) OR (Sittingout=0xBDAEAD) OR (Sittingout=0x343434) OR (Sittingout=0x444444) OR (Sittingout=0x333333)) WinKill,ahk_id%winid% } WinGet, list, List, ahk_class PokerStarsTableFrameClass Loop, %list% { winid:=list%A_Index% Sittingout:=PixelColorA(0.8125,0.8621,winid) If !((Sittingout=0x000000) OR (Sittingout=0xDFD9CE) OR (Sittingout=0xD2EBF3) OR (Sittingout=0xB3A39D) OR (Sittingout=0x9D9D9D) OR (Sittingout=0xCCCCCC) OR (Sittingout=0xDEDBCE) OR (Sittingout=0xB5A29c) OR (Sittingout=0xBDAEAD) OR (Sittingout=0x343434) OR (Sittingout=0x444444) OR (Sittingout=0x333333)) { back_x:=0.0141 back_y:=0.6860 PostClickStars(back_x, back_y, winid, 0) } } sleep,300 WinGet, list, List, ahk_class PokerStarsTableFrameClass Loop, %list% { winid:=list%A_Index% Sittingout:=PixelColorA(0.8125,0.8621,winid) If ((Sittingout=0x000000) OR (Sittingout=0xDFD9CE) OR (Sittingout=0xD2EBF3) OR (Sittingout=0xB3A39D) OR (Sittingout=0x9D9D9D) OR (Sittingout=0xCCCCCC) OR (Sittingout=0xDEDBCE) OR (Sittingout=0xB5A29c) OR (Sittingout=0xBDAEAD) OR (Sittingout=0x343434) OR (Sittingout=0x444444) OR (Sittingout=0x333333)) WinKill,ahk_id%winid% } WinGet, list, List,Table ahk_class #32770 Loop, %list% { winid:=list%A_Index% ControlFocus,Button1, ahk_id%winid% Sleep, -1 ControlClick,Button1, ahk_id%winid% Sleep, -1 ControlSend,Button1, {SPACE}, ahk_id%winid% } return ;----------------------------------------------------------------------------------------------------- closeTable: LeaveTable() return LeaveTable() { settitlematchmode,2 SetControlDelay, -1 ifwinexist,Table ahk_class #32770 { winget,winid,id,Table ahk_class #32770 ControlGet, v, Visible,,Button2, ahk_id %winid% ControlGet, z, Visible,,Button3, ahk_id %winid% if (v) & (!z) { ControlFocus,Button1, ahk_id%winid% Sleep, -1 ControlClick,Button1, ahk_id%winid% Sleep, -1 ControlSend,Button1, {SPACE}, ahk_id%winid% } } } return ;----------------------------------------------------------------------------------------------------- SitOutNextAll: ;ClickImBack:=false settimer,ClickBack,off WinGet, list, List,Logged In ahk_class PokerStarsTableFrameClass Loop, %list% { Z:=list%A_Index% WinGetPos,,, W, H, ahk_id %Z% Sittingout:=PixelColorA(0.8125,0.8621,Z) If !((Sittingout=0x000000) OR (Sittingout=0xDFD9CE) OR (Sittingout=0xD2EBF3) OR (Sittingout=0xB3A39D) OR (Sittingout=0x9D9D9D) OR (Sittingout=0xCCCCCC) OR (Sittingout=0xDEDBCE) OR (Sittingout=0xB5A29c) OR (Sittingout=0xBDAEAD) OR (Sittingout=0x343434) OR (Sittingout=0x444444) OR (Sittingout=0x333333)) { back_x:=0.0141 back_y:=0.6860 PostClickStars(back_x, back_y, Z, 0) } } return ;----------------------------------------------------------------------------------------------------- RemoveSitout: ;ClickImBack:=true if ClickImBack settimer,ClickBack,1500 WinGet, list, List,Logged In ahk_class PokerStarsTableFrameClass Loop, %list% { Z:=list%A_Index% WinGetPos,,, W, H, ahk_id %Z% Sittingout:=PixelColorA(0.8125,0.8621,Z) JoinWaitingList:=PixelColorA(0.8625,0.8621,Z) If (Sittingout=0x000000) OR (Sittingout=0xDFD9CE) OR (Sittingout=0xD2EBF3) OR (Sittingout=0xB3A39D) OR (Sittingout=0x9D9D9D) OR (Sittingout=0xCCCCCC) OR (Sittingout=0xDEDBCE) OR (Sittingout=0xB5A29c) OR (Sittingout=0xBDAEAD) OR (Sittingout=0x343434) OR (Sittingout=0x444444) OR (Sittingout=0x333333) If (JoinWaitingList!=0x000000) AND (JoinWaitingList!=0xDFD9CE) AND (JoinWaitingList!=0xDEDBCE) AND (JoinWaitingList!=0x0xB5A29c) AND (JoinWaitingList!=0xBDAEAD) AND (JoinWaitingList!=0x1f1f1f) AND (JoinWaitingList!=0x343434) AND (JoinWaitingList!=0x0202020) AND (JoinWaitingList!=0xe6e6e6) AND (JoinWaitingList!=0xdddddd) AND (JoinWaitingList!=0x1e1e1e) AND (JoinWaitingList!=0xb0b0b0) { back_x :=0.7515 back_y :=0.8468 PostClickStars(back_x, back_y, Z, 0) } } return ;----------------------------------------------------------------------------------------------------- UncheckAutopostAll: sitx:=0.0126 sity:=0.7201 click_x:=sitx+0.0070 click_y:=sity+0.0070 WinGet, list, List,Logged In ahk_class PokerStarsTableFrameClass Loop, %list% { Z:=list%A_Index% wingettitle,title,ahk_id%Z% if !instr(title,"fast") { Sittingout:=PixelColorA(sitx,sity,Z,1) if (instr(Sittingout,"-0-")) ; & !(instr(Sittingout,"1710618")) ; & !(instr(Sittingout,"16777215")) { PostClickStars(click_x, click_y, Z, 0) } } } return ;----------------------------------------------------------------------------------------------------- ClickBack: imback() return ;----------------------------------------------------------------------------------------------------- imback() { winget,list,list,Logged In ahk_class PokerStarsTableFrameClass back_x:=0.8031 back_y:=0.8405 join_x:=0.8631 join_y:=0.8405 loop %list% { id:=list%A_index% col:=PixelColorA(back_x,back_y,id,1,join_x,join_y,1) stringsplit,col,col,* Sittingout:=col1 JoinWaitingList:=col2 if (instr(Sittingout,"4473924")) or (instr(Sittingout,"14670286")) or (instr(Sittingout,"-0-")) or (instr(Sittingout,"-0x0-")) if !((instr(JoinWaitingList,"3684408")) or (instr(JoinWaitingList,"4473924")) or (instr(JoinWaitingList,"14670286")) or (instr(JoinWaitingList,"-0-")) or (instr(JoinWaitingList,"-0x0-"))) { postclickstars(back_x,back_y,id,0) } } } return ;----------------------------------------------------------------------------------------------------- Toggleimback: If (ClickImBack=true) { ClickImBack:=false settimer,ClickBack,off T=Off } else { ClickImBack:=true settimer,ClickBack,1500 T=On } Gui, 12:Add, Text,, Auto Click Im Back: %T% Gui, 12:+ToolWindow Gui, 12:Show, w150 h20 Sleep, 1000 Gui, 12:Destroy return ;----------------------------------------------------------------------------------------------------- ClickTimebank: clicktime() return ;----------------------------------------------------------------------------------------------------- clicktime() { global SlickTheme,BlackTheme,tablequeuetimebank if BlackTheme { timex:=0.5775 timey:=0.7431 } else if SlickTheme { timex:=0.4920 timey:=0.7958 } else { timex:=0.6500 timey:=0.7670 timex1:=0.7341 timey1:=0.8027 } winget,list,list,Logged In ahk_class PokerStarsTableFrameClass loop %list% { id:=list%A_index% col:=PixelColorA(timex,timey,id,1,timex1,timey1,1) stringsplit,col,col,* if (instr(col1,"13484978")) or (instr(col1,"1000084")) or (instr(col1,"16777215")) or (instr(col2,"13484978")) or (instr(col2,"1000084")) or (instr(col2,"16777215")) { if !InStr(tablequeuetimebank,id) movetolisttimebank(id,A_TickCount) } else if InStr(tablequeuetimebank,id) removefromlisttimebank(id) } } return ;----------------------------------------------------------------------------------------------------- Joinwaitlist: winget,list,list, ahk_class PokerStarsTableFrameClass loop %list% { id:=list%A_index% col:=PixelColorA(0.6274,0.9352,id,1) if !(instr(col,"15921906")) & !(instr(col,"16777215")) { click_x :=0.8625 click_y :=0.8621 PostclickStars(click_x,click_y,id,0) } } return ;----------------------------------------------------------------------------------------------------- Unjoinwaitlist: winget,list,list, ahk_class PokerStarsTableFrameClass loop %list% { id:=list%A_index% col:=PixelColorA(0.6274,0.9352,id,1) if InStr(col,"15921906") or (instr(col,"16777215")) { click_x :=0.8625 click_y :=0.8621 PostclickStars(click_x,click_y,id,0) } } return ;----------------------------------------------------------------------------------------------------- JoinWaitlistlobby: ControlGet, Black, Visible,, PokerStarsButtonClass1, PokerStars Lobby If black { ControlGet, Join, Visible,, PokerStarsButtonClass4, PokerStars Lobby ControlGet, Leave, Visible,, PokerStarsButtonClass3, PokerStars Lobby If (Join=1) { ControlClick, PokerStarsButtonClass4, PokerStars Lobby SetControlDelay -1 ControlClick, Button1, Waiting List } else { If (Leave=1) ControlClick, PokerStarsButtonClass3, PokerStars Lobby } } else { ControlGet, Join, Visible,, PokerStarsButtonClass3, PokerStars Lobby ControlGet, Leave, Visible,, PokerStarsButtonClass2, PokerStars Lobby If (Join=1) { ControlClick, PokerStarsButtonClass3, PokerStars Lobby SetControlDelay -1 ControlClick, Button1, Waiting List } else { If (Leave=1) ControlClick, PokerStarsButtonClass2, PokerStars Lobby } } return ;----------------------------------------------------------------------------------------------------- JoinWaitlistlobbyGroup: joingroup(waitlists) return joingroup(waitinglists) { winget,id,id,PokerStars Lobby - ahk_class #32770 ifwinactive, ahk_id%id% { ControlGet, Black, Visible,, PokerStarsButtonClass1, ahk_id%id% If Black { joinbutton=PokerStarsButtonClass4 unjoinbutton=PokerStarsButtonClass3 } else { joinbutton=PokerStarsButtonClass3 unjoinbutton=PokerStarsButtonClass2 } list=PokerStarsListClass1 loop %waitinglists% { SetControlDelay,-1 ControlGet, Join, Visible,, %joinbutton%, ahk_id%id% If (Join=1) { controlfocus,%joinbutton%,,ahk_id%id% sleep,-1 PostLeftClick(50,25,id,0,joinbutton) } controlfocus,PokerStarsListClass1,,ahk_id%id% sleep,-1 controlsend,PokerStarsListClass1,{Down},ahk_id%id% sleep,600 } } } return ;----------------------------------------------------------------------------------------------------- MoveBackByKey: ifwinactive, ahk_class PokerStarsTableFrameClass { winget,id,id,A if (seated%id%=1) or (seated%id%=3) { wingettitle,title,ahk_id%id% seated%id%:=2 WinMove, ahk_id%id%,, xstart%id%,ystart%id% } } return ;----------------------------------------------------------------------------------------------------- TakeSeat() { ;global AutoReservedSeat,tablequeue local list,id,This_id IfWinExist, PokerStars ahk_class #32770 { WinGet, list, list, Seat Available ahk_class #32770 winget, tablelist,list,ahk_class PokerStarsTableFrameClass Loop, %list% { This_id := list%A_Index% if tablelist<%totalnumber% { ControlFocus, Button2, ahk_id%this_id% Sleep, -1 ControlSend, Button2, {SPACE}, ahk_id%this_id% } else { Control, Check,,Button1, ahk_id%this_id% Sleep, -1 ControlSend, Button3, {SPACE}, ahk_id%this_id% } } if tablelist<%totalnumber% { setwindelay,-1 if AutoReservedSeat if list>0 { ;sleep,500 ;winget,id,id,ahk_class PokerStarsTableFrameClass ;winwaitactive,ahk_class PokerStarsTableFrameClass,,1 winwait, ahk_class PokerStarsTableFrameClass,, 1 if !errorlevel { ;winget,id,id,A ;id:=winexist("ahk_class PokerStarsTableFrameClass") winget,id,id,ahk_class PokerStarsTableFrameClass ;ClickSeats(id) if !InStr(tablequeue,id) movetolist(id,A_TickCount) seated%id%:=1 } } } } } return ;----------------------------------------------------------------------------------------------------- ClickSeats(id) { ;setwindelay,500 global SlickTheme if !SlickTheme { ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.5000,0.6903,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.2299,0.6536,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.0697,0.4250,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.1770,0.1835,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.3401,0.0867,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.6566,0.0867,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.8333,0.1910,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.9328,0.4250,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.7764,0.6513,id,0) } else { Postclickstars(0.5000,0.6903,id,0) Postclickstars(0.2299,0.6536,id,0) Postclickstars(0.1028,0.5114,id,0) Postclickstars(0.1028,0.2591,id,0) Postclickstars(0.3401,0.0867,id,0) Postclickstars(0.6566,0.0867,id,0) Postclickstars(0.8876,0.2591,id,0) Postclickstars(0.8876,0.5114,id,0) Postclickstars(0.7764,0.6513,id,0) } setwindelay,-1 } return ;----------------------------------------------------------------------------------------------------- FindTableToAct: findactivetable() return ;----------------------------------------------------------------------------------------------------- findactivetable() { WinGet, l, List, ahk_class PokerStarsTableFrameClass found:=false v:=30 foldx:=0.5575 foldy:=0.9846 foldx1:=0.5063 foldy1:=0.9846 Loop, %l% { winid:=l%A_Index% ControlGet, Z, Visible,,PokerStarsSliderClass1, ahk_id %winid% If Z { WinActivate, ahk_id %winid% found:=true Break } } if !found Loop, %l% { winid:=l%A_Index% col:=PixelColorA(foldx,foldy,winid,0,foldx1,foldy1,0) stringsplit,col,col,- if comparecolors(col1,col2,v)=0 { WinActivate, ahk_id %winid% break } } } return ;----------------------------------------------------------------------------------------------------- ActivateBottomWindow: GroupActivate, StarsTables return ;----------------------------------------------------------------------------------------------------- activateundermouse: activatetableundermouse() return activatetableundermouse() { If winactive("ahk_class PokerStarsTableFrameClass") or winactive("PokerStars Lobby") { MousegetPos,,,WinID WinGetClass, class, ahk_id %WinID% WinGetTitle, title, ahk_id %WinID% if (class="PokerStarsTableFrameClass") or (instr(title,"PokerStars Lobby")) winactivate, ahk_id %WinID% } } return ;----------------------------------------------------------------------------------------------------- Cashier: IfWinExist Cashier ahk_class #32770 { WinActivate Cashier ahk_class #32770 SetControlDelay -1 ControlClick, PokerStarsButtonClass8, Cashier } else { WinActivate PokerStars Lobby WinMenuSelectItem, PokerStars Lobby,, Lobby, Cashier... } return ;----------------------------------------------------------------------------------------------------- Layout1: layx:=0.5047 layy:=0.1880 layy1:=0.0940 WinGet, WinId, ID, ahk_class PokerStarsTableFrameClass if Winid { winactivate,ahk_id%winid% if HyperSimpleTheme { relstarsclientpoint(winid,layx,layy1,0) ControlClick,x%layx% y%layy1%,ahk_id %WinID%,,,,NA } else { relstarsclientpoint(winid,layx,layy,0) ControlClick,x%layx% y%layy%,ahk_id %WinID%,,,,NA } Loop { WinWait, Options Winactivate, Options SetControlDelay, -1 ControlClick, Button13, Options,,,,NA sleep 100 Send {down 5} Send {Enter} WinWaitClose, Options,,1 If (!ErrorLevel) Break } } return ;----------------------------------------------------------------------------------------------------- Layout2: layx:=0.5047 layy:=0.1880 layy1:=0.0940 WinGet, WinId, ID, ahk_class PokerStarsTableFrameClass if Winid { winactivate,ahk_id%winid% if HyperSimpleTheme { relstarsclientpoint(winid,layx,layy1,0) ControlClick,x%layx% y%layy1%,ahk_id %WinID%,,,,NA } else { relstarsclientpoint(winid,layx,layy,0) ControlClick,x%layx% y%layy%,ahk_id %WinID%,,,,NA } Loop { WinWait, Options Winactivate, Options SetControlDelay, -1 ControlClick, Button13, Options,,,,NA sleep 100 Send {down 6} Send {Enter} WinWaitClose, Options,,1 If (!ErrorLevel) Break } } return ;----------------------------------------------------------------------------------------------------- Layout3: layx:=0.5047 layy:=0.1880 layy1:=0.0940 WinGet, WinId, ID, ahk_class PokerStarsTableFrameClass if Winid { winactivate,ahk_id%winid% if HyperSimpleTheme { relstarsclientpoint(winid,layx,layy1,0) ControlClick,x%layx% y%layy1%,ahk_id %WinID%,,,,NA } else { relstarsclientpoint(winid,layx,layy,0) ControlClick,x%layx% y%layy%,ahk_id %WinID%,,,,NA } Loop { WinWait, Options Winactivate, Options SetControlDelay, -1 ControlClick, Button13, Options,,,,NA sleep 100 Send {down 7} Send {Enter} WinWaitClose, Options,,1 If (!ErrorLevel) Break } } return ;----------------------------------------------------------------------------------------------------- Highlighter: HighLighter(1) return HighLighter(Highlight=1) { global last_table_id global border_color global border_size global trans global OldX,OldY,OldW,OldH global highlighthero foldx:=0.5575 foldx1:=0.5079 foldy:=0.9846 foldy1:=0.9846 v:=25 ifwinactive,ahk_class PokerStarsTableFrameClass { winget,id,id,A WinGetActiveStats,ActiveTitle, ActiveW, ActiveH, ActiveX, ActiveY relstarsclientpoint(id,foldx,foldy,0) pixelgetcolor,fold,foldx,foldy,ahk_id%id% relstarsclientpoint(id,foldx1,foldy1,0) pixelgetcolor,bacgr,foldx1,foldy1,ahk_id%id% if (id != last_table_id) || ((OldX <> ActiveX || OldY <> ActiveY || OldW <> ActiveW || OldH <> ActiveH)) { OldX:=ActiveX OldY:=ActiveY OldW:=ActiveW OldH:=ActiveH mouse_last:=last_table_id last_table_id:=id if(!id) { Gui, 2: Cancel Gui, 3: Cancel Gui, 4: Cancel Gui, 5: Cancel return } WinGetPos, x, y, w, h, ahk_id%id% global xbord global cap x := x + xbord y := y + xbord + cap w := w - (2*xbord) h := h - (2*xbord) - cap ;Makes Border around urgent table if (highlighthero=0) || (highlighthero=1 & comparecolors(fold,bacgr,v)=0) { ;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 } else if highlighthero last_table_id= } else if highlighthero if comparecolors(fold,bacgr,v)=1 { Gui, 2: Cancel Gui, 3: Cancel Gui, 4: Cancel Gui, 5: Cancel last_table_id= } } else { Gui, 2: Cancel Gui, 3: Cancel Gui, 4: Cancel Gui, 5: Cancel last_table_id= } } return ;----------------------------------------------------------------------------------------------------- MouseMove: MoveMouse() return MoveMouse(x_mouse=0.75, y_mouse=0.75) { if IsWindowNew() { wingetclass,class,A wingetactivetitle,title if class=PokerStarsTableFrameClass if instr(title,"Logged In") { winget,id,id,A relStarsClientPoint(id, x_mouse, y_mouse,0,1) DllCall("SetCursorPos", int, x_mouse, int, y_mouse) } } } return ;----------------------------------------------------------------------------------------------------- AlterAmount(id, dir="", frac=1, unit="") { global stars_editbox WinGetTitle, title, ahk_id%id% amount := 0 StringTrimRight, tablename, title, ( StrLen(title) - (InStr(title, " - ")-1) ) IfWinExist, ahk_id%id% ahk_group StarsTables { If ((InStr(title, "No Limit") OR InStr(title, "Pot Limit")) AND InStr(title, "Tournament") = 0) { StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 } else if (InStr(title, "No Limit") <> 0 AND InStr(title, "Tournament") <> 0) { StringMid, bb, title, InStr(title, "/", "", InStr(title, "Blinds")) + 1, InStr(title, a_space, "", InStr(title, "Blinds") + 8) - InStr(title, "/", "", InStr(title, "Blinds")) - 1 } } StringReplace,bb,bb,$,,1 StringReplace,bb,bb,Ј,,1 StringReplace,bb,bb,Ђ,,1 StringReplace,bb,bb,€,,1 ;bb++ ;bb-- 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 StarsTables { PotSizeStars(id, pot, call, sb, bb, hero_bet, street, hero_position, open) } 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 StarsTables { ControlGetText, t, %stars_editbox%, ahk_id%id% t := t + amount if (t < 0) { t := 0 } t1 := Round(t, 2) t := Round(t, 3) if t-t1=0 t:=t1 ControlSetText, %stars_editbox%, %t%, ahk_id%id% Sleep, -1 WinSet, Redraw,, ahk_id%id% } } Pot(id, frac=1, round_bet=0.2, open_adjust="", fixblinds=0) { global debug global stars_editbox 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 StarsTables { loop %attempts% { PotSizeStars(id, pot, call, sb, bb, hero_bet, street, hero_position, open) 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 } ; listvars 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") { pot := Round((Floor((pot / sb)) * sb),2) } 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 StarsTables { ControlSetText, %stars_editbox%, %pot%, ahk_id%id% Sleep, -1 } } PotSizeStars(id, ByRef pot, ByRef call, ByRef sb, ByRef bb, ByRef hero_bet, ByRef street, ByRef hero_position, ByRef open) { global use_old_stars_buttons, stars_editbox , ClassicTheme , HyperSimpleTheme, SlickTheme CoordMode, Pixel, Screen setwindelay,-1 if ClassicTheme { PotThemeDir := "classic" CallThemeDir := "classic" pot_x1:=0.4400 pot_x2:=0.5706 pot_y1:=0.0140 pot_y2:=0.0685 call_x1:=0.7143 call_y1:=0.9342 call_y2:=0.9802 call_x2:=0.7843 raise_x1:=0.8727 raise_y1:=0.9342 raise_y2:=0.9802 raise_x2:=0.9423 } else if HyperSimpleTheme { PotThemeDir := "hypersimple" CallThemeDir := "hypersimple" pot_x1:=0.4900 pot_x2:=0.5706 pot_y1:=0.0140 pot_y2:=0.0885 call_x1:=0.7143 call_y1:=0.9342 call_y2:=0.9802 call_x2:=0.7843 raise_x1:=0.8727 raise_y1:=0.9342 raise_y2:=0.9802 raise_x2:=0.9423 } else if SlickTheme { PotThemeDir := "slick" CallThemeDir := "slick" pot_x2:=0.5466 pot_y2:=0.1645 pot_x1:=0.4640 pot_y1:=0.0895 call_y2:=0.9802 call_y1:=0.9342 call_x2:=0.7454 call_x1:=0.6754 raise_x1:=0.8474 raise_y1:=0.9342 raise_y2:=0.9802 raise_x2:=0.9304 } else { return } if (use_old_stars_buttons) { CallThemeDir := CallThemeDir . "\old" } street := GetStreetStars(id) WinGetPos, x, y, w, h, ahk_id%id% if (w <= 526) { SizeDir := 0 } else if (w <= 621) { SizeDir := 1 } else if (w <= 736) { SizeDir := 2 } else if (w <= 875) { SizeDir := 3 } else if (w <= 1037) { SizeDir := 4 } else if (w <= 1227) { SizeDir := 5 } else { SizeDir := 6 } PicDir := "StarsPics" potPicDir := PicDir . "\" . PotThemeDir . "\pot\" . SizeDir buttonPicDir := PicDir . "\" . CallThemeDir . "\call\" . SizeDir relStarsclientPoint(id, pot_x1, pot_y1,0) relStarsclientPoint(id, pot_x2, pot_y2,0) pot := DigitSearch(pot_x1, pot_y1, pot_x2, pot_y2, id, potPicDir, "", 50) relStarsclientPoint(id, call_x1, call_y1,0) relStarsclientPoint(id, call_x2, call_y2,0) call := DigitSearch(call_x1, call_y1, call_x2, call_y2, id, buttonPicDir, "", 50) call := iif( call, call, 0 ) bb := GetBBStars(id, GameTypeStars(WinGetTitle(id))) sb := sb(bb) if (street = "pre") { ControlGetText, t, %stars_editbox%, ahk_id%id% ControlSetText, %stars_editbox%, 0, ahk_id%id% relStarsclientPoint(id, raise_x1, raise_y1,0) relStarsclientPoint(id, raise_x2, raise_y2,0) minraise := DigitSearch(raise_x1, raise_y1, raise_x2, raise_y2, id, buttonPicDir, "", 50) t := Round(t, 2) ControlSetText, %stars_editbox%, %t%, ahk_id%id% Sleep, -1 if (minraise > (2*bb)) { ;pot has been raised if (call = bb) { ;pot was minraised, and we are the BB hero_bet := bb hero_position := "bb" } else if (call < (bb*2)) { ;pot was minraised, and we are the SB hero_bet := sb hero_position := "sb" } } else if (call = bb) { ;hero is not a blind, unraised pot, do nothing } else if (call = 0) { ;unraised pot, hero is the BB hero_bet := bb hero_position := "bb" } else if (call < bb) { ;unraised pot, hero is the SB hero_bet := sb hero_position := "sb" } else { ;pot has been raised, we are not opening open := 0 } } else { ;not pre-flop, no need for open adjustment open := 0 } return } DigitSearch(startX,startY,endX,endY,win,dir,ex="",shades=1) { If ex = ex = bmp batchlines = %A_BatchLines% SetBatchLines -1 WinGetPos,Xwin,Ywin,,,ahk_id%win% CoordMode, Pixel, Screen Loop, 11 { i = %a_index% If i = 10 i = 0 else if i = 11 i = -1 lastXpos := startX + Xwin Loop { x1 := lastXpos + 1 y1 := startY + Ywin x2 := endX + Xwin y2 := endY + Ywin ImageSearch, lastXpos,, x1, y1, x2, y2, *%shades% %dir%\%i%.%ex% If ( errorLevel ) { break } p++ p%p% = %lastXpos% If i = -1 t = . else t = %i% StringReplace, xpos, lastXpos, -, _ c%xpos% = %t% } } Loop, %p% p_all := p_all "," p%a_index% Sort, p_all, N D, U Loop, Parse, p_all, `, { StringReplace, xpos, a_loopfield, -, _ amount := amount "" c%xpos% } CoordMode, Pixel, Relative SetBatchLines %batchlines% return amount } ; finds number of specified pixels in a region GetPixelCount(x1, y1, x2, y2, color, options="") { 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 } PixelGetColor, c, x, y, %options% If ( c = color ) { count++ } y++ } x++ } return count } GetBBStars(id, game_type) { WinGetTitle, title, ahk_id%id% StringReplace,title,title,€,,1 StringReplace,title,title,Ђ,,1 StringReplace,title,title,Ј,,1 If (game_type = "NL Ring") return StrRep(StrMid(title,"/",a_space), "$") else if (game_type = "NL Tourney") return StrRep(StrMid(title,"/",a_space,InStr(title," - Blinds")),"$") } GameTypeStars(title) { If InStr(title, " - Limit Stud") return "Stud" else if ((InStr(title, "NL Hold'em") || InStr(title, " - Pot Limit Hold'em") || InStr(title, " - No Limit Hold'em") || InStr(title, "PL Hold'em")) && InStr(title, "Tournament")) return "NL Tourney" else if (InStr(title, " - No Limit Hold'em") || InStr(title, " - Pot Limit Hold'em")) return "NL Ring" else return "Limit" } 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 } GetStreetStars(id) { global debug CoordMode, Pixel, Screen street := "pre" x1 := 0.6168 y1 := 0.3315 x2 := 0.6660 y2 := 0.3811 relStarsClientPoint(id, x1, y1,0,1) relStarsClientPoint(id, x2, y2,0,1) If ( GetPixelCount(x1, y1, x2, y2, 0xffffff) > 10 ) { street := "river" return street } x1 := 0.5394 y1 := 0.3315 x2 := 0.5887 y2 := 0.3811 relStarsClientPoint(id, x1, y1,0,1) relStarsClientPoint(id, x2, y2,0,1) If ( GetPixelCount(x1, y1, x2, y2, 0xffffff) > 10 ) { street := "turn" return street } x1 := 0.3373 y1 := 0.3315 x2 := 0.3867 y2 := 0.3811 relStarsClientPoint(id, x1, y1,0,1) relStarsClientPoint(id, x2, y2,0,1) If ( GetPixelCount(x1, y1, x2, y2, 0xffffff) > 10 ) { street := "flop" } return street } 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 } WinGetTitle(win) { WinGetTitle, title, ahk_id%win% return title } FoldStars(id) { PostClickStars(0.59,0.9241,id) ; Sleep, 20 ; PostStarsClickpot(416,478,id) } CallStars(id) { PostClickStars(0.7462,0.9241,id) } RaiseStars(id) { PostClickStars(0.8860,0.9241,id) } Fold2anyStars(id) { PostClickStars(0.0158,0.6467,id) } fold: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=PokerStarsTableFrameClass { if suspendforchat { ; If ActOnActiveTable if IsMouseInChat(id) { ControlGetFocus, ctrl, ahk_id%id% ControlSend,%ctrl% , %fold%, ahk_id%id% } else FoldStars(id) } else FoldStars(id) } else { ControlGetFocus,ctrl,ahk_id%id% ControlSend,%ctrl%,%fold%,ahk_id%id% } sendmode input return call: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=PokerStarsTableFrameClass { if suspendforchat { ; If ActOnActiveTable if IsMouseInChat(id) { ControlGetFocus, ctrl, ahk_id%id% ControlSend,%ctrl% , %call%, ahk_id%id% } else callStars(id) } else callStars(id) } else { ControlGetFocus,ctrl,ahk_id%id% ControlSend,%ctrl%,%call%,ahk_id%id% } sendmode input return raise: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=PokerStarsTableFrameClass { if suspendforchat { ; If ActOnActiveTable if IsMouseInChat(id) { ControlGetFocus, ctrl, ahk_id%id% ControlSend,%ctrl% , %raise%, ahk_id%id% } else raiseStars(id) } else raiseStars(id) } else { ControlGetFocus,ctrl,ahk_id%id% ControlSend,%ctrl%,%raise%,ahk_id%id% } sendmode input return fold2any: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=PokerStarsTableFrameClass { if suspendforchat { ; If ActOnActiveTable if IsMouseInChat(id) { ControlGetFocus, ctrl, ahk_id%id% ControlSend,%ctrl% , %fold2any%, ahk_id%id% } else fold2anyStars(id) } else fold2anyStars(id) } else { ControlGetFocus,ctrl,ahk_id%id% ControlSend,%ctrl%,%fold2any%,ahk_id%id% } sendmode input return pot1: If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id 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 raisestars(id) return pot2: If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id 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 raisestars(id) return pot3: If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id 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 raisestars(id) return alt1: If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id if sb1 sb:="sb" else sb:="" AlterAmount(id,"up", incr1, sb) return alt2: If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id if sb2 sb:="sb" else sb:="" AlterAmount(id,"down", incr2, sb) return alt3: If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id if sb3 sb:="sb" else sb:="" AlterAmount(id,"up", incr3, sb) return alt4: If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id if sb4 sb:="sb" else sb:="" AlterAmount(id,"down", incr4, sb) return ;----------------------------------------------------------------------------------------------------- BetPot: GroupAdd, StarsTables, ahk_class PokerStarsTableFrameClass ,,, PokerStars Lobby if autopot { isbetboxnew() } return ;----------------------------------------------------------------------------------------------------- BuildGui: Gui, color, white Gui, add, tab, h490 w290, General|Time|Annoyances|Table moving|BetPot|Table hotkeys|Global hotkeys Gui, Tab, General Gui, Add, Radio, x26 y50 w180 h20 Checked%ClassicTheme% vClassicTheme, Classic Theme Gui, Add, Radio, x26 y70 w180 h20 Checked%HyperSimpleTheme% vHyperSimpleTheme, HyperSimple Theme Gui, Add, Radio, x26 y90 w180 h20 Checked%BlackTheme% vBlackTheme, Black Theme Gui, Add, Radio, x26 y110 w180 h20 Checked%SlickTheme% vSlickTheme, Slick Theme Gui, add, text, y145 x25, Highlight table Gui, add, Checkbox, y145 x100 Checked%Highlight% VHighlight Gui, Add, Radio, x126 y140 w120 h15 Checked%highlightactive% vhighlightactive, Active Gui, Add, Radio, x126 y155 w120 h15 Checked%highlighthero% vhighlighthero, With action on hero Gui, add, text, y185 x25, Move mouse to action buttons Gui, add, Checkbox, y185 x230 Checked%MoveMouse% VMoveMouse Gui, add, text, y205 x65, Move mouse from nonstars app Gui, add, Checkbox, y205 x230 Checked%stealfocus% Vstealfocus Gui, add, text, y235 x25, Suspend table hotkeys for chat/notes area Gui, add, Checkbox, y235 x230 Checked%suspendforchat% Vsuspendforchat Gui, add, text, y255 x25, Suspend all hotkeys for chat/notes area Gui, add, Checkbox, y255 x230 Checked%suspendforchatall% Vsuspendforchatall 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 x230 Checked%activatetableundermouse% Vactivatetableundermouse Gui, Add, Text, x26 y345 ,Limit total number of tables to Gui, Add, Edit, x170 y342 w30 h20 vtotalnumber, %totalnumber% Gui, add, Checkbox, y345 x230 Checked%limit% Vlimit Gui, Add, Button, x75 y395 w55 h20 gSave,Submit Gui, Add, Button, x135 y395 w55 h20 gCancel,Cancel Gui, Tab, Global hotkeys Gui, Add, Text, x25 y105 ,Find table needing action Gui, Add, Edit, x220 y102 w50 h20 vfindtabletoact, %findtabletoact% Gui, Add, Text, x25 y125 ,Activate next table Gui, Add, Edit, x220 y122 w50 h20 vActivateBottomWindow, %ActivateBottomWindow% Gui, Add, Text, x25 y155 ,Close all tables with hero not in a hand Gui, Add, Edit, x220 y152 w50 h20 vCloseAllWithNoAction, %CloseAllWithNoAction% Gui, Add, Text, x25 y55 ,Suspend all hotkeys Gui, Add, Edit, x220 y52 w50 h20 vsuspend, %suspend% Gui, Add, Text, x25 y75 ,Pause/unpause Gui, Add, Edit, x220 y72 w50 h20 vTogglePause, %TogglePause% Gui, Add, Text, x25 y185 ,Cashier Gui, Add, Edit, x220 y182 w50 h20 vCashier, %Cashier% Gui, Add, Text, x25 y225 ,Custom layout 1 Gui, Add, Edit, x220 y222 w50 h20 vlayout1, %layout1% Gui, Add, Text, x25 y245 ,Custom layout 2 Gui, Add, Edit, x220 y242 w50 h20 vlayout2, %layout2% Gui, Add, Text, x25 y265 ,Custom layout 3 Gui, Add, Edit, x220 y262 w50 h20 vlayout3, %layout3% Gui, Add, Text, x25 y295 ,Join/unjoin Waitlist from lobby Gui, Add, Edit, x220 y292 w50 h20 vJoinWaitlistlobby, %JoinWaitlistlobby% Gui, Add, Text, x25 y315 ,Join Gui, Add, Edit, x50 y312 w20 h20 vwaitlists, %waitlists% Gui, Add, Text, x70 y315 ,waitlists counting from selected Gui, Add, Edit, x220 y312 w50 h20 vJoinWaitlistlobbyGroup, %JoinWaitlistlobbyGroup% Gui, Add, Button, x75 y415 w55 h20 gSave,Submit Gui, Add, Button, x135 y415 w55 h20 gCancel,Cancel Gui, Tab, Table moving Gui, add, text, y55 x25, Move new table Gui, add, Checkbox, y55 x120 Checked%move% Vmove Gui, add, text, y75 x35, to position Gui, Add, Text, x25 y95 w120 h20 , x Gui, Add, Edit, x50 y95 w50 h20 vxpos, %xpos% Gui, Add, Text, x25 y115 ,y Gui, Add, Edit, x50 y115 w50 h20 vypos, %ypos% Gui, add, Checkbox, y145 x180 Checked%automoveback% Vautomoveback Gui, add, text, y145 x25,Move table back automatically Gui, Add, Text, x25 y165 ,Move table back manually Gui, Add, Edit, x180 y162 w50 h20 vmovebackByKey, %movebackByKey% Gui, Add, Button, x75 y315 w55 h20 gSave,Submit Gui, Add, Button, x135 y315 w55 h20 gCancel,Cancel Gui, Tab, Annoyances Gui, add, Checkbox, y55 x220 Checked%Autopost% VAutopost Gui, add, text, y55 x25,Auto post blinds Gui, add, Checkbox, y75 x220 Checked%Waitbb% VWaitbb Gui, add, text, y75 x25,Uncheck wait for big blind (fast tables) Gui, add, Checkbox, y95 x220 Checked%clickWaitbb% VclickWaitbb Gui, add, text, y95 x25,Press wait for big blind (nonfast tables) Gui, add, Checkbox, y120 x220 Checked%CheckWhenFree% VCheckWhenFree Gui, add, text, y120 x25,Never fold for free Gui, add, Checkbox, y160 x90 Checked%Buyin% VBuyin Gui, add, text, y160 x25,Auto Buy-in Gui, Add, Radio, x120 y150 w100 h20 Checked%max% vmax, Maximum Gui, Add, Radio, x120 y170 w120 h20 Checked%remembered% vremembered, Remembered/default Gui, Add, Radio, x120 y190 w20 h20 Checked%xbb% vxbb Gui, Add, Edit, x140 y190 w30 h20 vbbmultiplier, %bbmultiplier% Gui, Add, Text, x170 y193,BB Gui, add, Checkbox, y220 x190 Checked%TakeSeat% VTakeSeat Gui, add, text, y220 x25,Auto Take Seat (from waiting list) Gui, add, Checkbox, y240 x190 Checked%AutoReservedSeat% VAutoReservedSeat Gui, add, text, y240 x55,Auto take reserved seat Gui, add, Checkbox, y265 x190 Checked%autoTakeSeat% VautoTakeSeat Gui, add, text, y265 x25,Auto Seat on new table Gui, add, Checkbox, y290 x190 Checked%leavetable% Vleavetable Gui, add, text, y290 x25,Auto leaving table confirmation Gui, add, Checkbox, y320 x250 Checked%closeOKwindow% VcloseOKwindow Gui, add, text, y320 x25,Close PokerStars windows with just OK button Gui, Add, Button, x75 y365 w55 h20 gSave,Submit Gui, Add, Button, x135 y365 w55 h20 gCancel,Cancel Gui, Tab, Time Gui, add, Checkbox, y50 x220 Checked%ClickImBack% VClickImBack Gui, add, text, y50 x25,Click Im Back automatically Gui, Add, Text, x25 y70 ,Toggle Click Im Back Gui, Add, Edit, x220 y67 w50 h20 vToggleImBack, %ToggleImBack% Gui, add, Checkbox, y100 x180 Checked%Timebank% VTimebank Gui, add, text, y100 x25,Click Timebank automatically Gui, add, Text, w220 y115 x25, Time delay for pressing Time button Gui, add, DropDownList, w40 y107 x220 vInterval1, %ddlist1% Gui, Add, Text, x25 y150 ,Sitout on all tables Gui, Add, Edit, x220 y147 w50 h20 vSitOutNextAll, %SitOutNextAll% Gui, Add, Text, x25 y175 ,Remove sitout on all tables Gui, Add, Edit, x220 y172 w50 h20 vRemoveSitout, %RemoveSitout% Gui, Add, Text, x25 y220 ,Join waiting list on all tables Gui, Add, Edit, x220 y217 w50 h20 vjoinwaitlist, %joinwaitlist% Gui, Add, Text, x25 y245 ,Unjoin waiting list on all tables Gui, Add, Edit, x220 y242 w50 h20 vunjoinwaitlist, %unjoinwaitlist% Gui, Add, Text, x25 y275 ,Uncheck auto post blinds on all tables Gui, Add, Edit, x220 y272 w50 h20 vUncheckAutopostAll, %UncheckAutopostAll% Gui, Add, Button, x75 y415 w55 h20 gSave,Submit Gui, Add, Button, x135 y415 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, %ddlist% 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, %ddlist% 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, %ddlist% 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, %ddlist% 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 y410 ,Attempts to read Pot amount from screen Gui, Add, Edit, x230 y407 w25 h20 vattempts, %attempts% Gui, Add, Text, x15 y440 ,* Pot percent Gui, Add, Button, x75 y465 w55 h20 gSave,Submit Gui, Add, Button, x135 y465 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, Button, x75 y315 w55 h20 gSave,Submit Gui, Add, Button, x135 y315 w55 h20 gCancel,Cancel gosub,getini Gui, show, w306, %thisahk% Return ;----------------------------------------------------------------------------------------------------- GetIni: IfNotExist, %thisahk%.ini gosub, CreateIni IniRead, ClassicTheme,%thisahk%.ini, Options, ClassicTheme,0 IniRead, HyperSimpleTheme,%thisahk%.ini, Options, HyperSimpleTheme,0 IniRead, SlickTheme,%thisahk%.ini, Options, SlickTheme,0 IniRead, BlackTheme,%thisahk%.ini, Options, BlackTheme,0 IniRead, Highlight, %thisahk%.ini, Settings, Highlight, 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, suspendforchat, %thisahk%.ini, Settings, suspendforchat, 0 IniRead, suspendforchatall, %thisahk%.ini, Settings, suspendforchatall, 0 IniRead, ActOnActiveTable, %thisahk%.ini, Options, ActOnActiveTable, 0 IniRead, sendundermouse, %thisahk%.ini, Options, sendundermouse, 0 IniRead, activatetableundermouse, %thisahk%.ini, Settings, activatetableundermouse, 0 IniRead, totalnumber, %thisahk%.ini, Variables, totalnumber, 0 IniRead, limit, %thisahk%.ini, Settings, limit, 0 IniRead, ActivateBottomWindow, %thisahk%.ini, Hotkeys, ActivateBottomWindow,%A_Space% if ActivateBottomWindow Hotkey, %ActivateBottomWindow%,ActivateBottomWindow IniRead, findtabletoact, %thisahk%.ini, Hotkeys, findtabletoact,%A_Space% if findtabletoact Hotkey, %findtabletoact%,findtabletoact 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, CloseAllWithNoAction, %thisahk%.ini, Hotkeys, CloseAllWithNoAction,%A_Space% if CloseAllWithNoAction Hotkey, %CloseAllWithNoAction%,CloseAllWithNoAction IniRead, Cashier, %thisahk%.ini, Hotkeys, Cashier,%A_Space% if Cashier Hotkey, %Cashier%,Cashier 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, JoinWaitlistlobby, %thisahk%.ini, Hotkeys, JoinWaitlistlobby,%A_Space% if JoinWaitlistlobby Hotkey, %JoinWaitlistlobby%,JoinWaitlistlobby IniRead, JoinWaitlistlobbyGroup, %thisahk%.ini, Hotkeys, JoinWaitlistlobbyGroup,%A_Space% if JoinWaitlistlobbyGroup Hotkey, %JoinWaitlistlobbyGroup%,JoinWaitlistlobbyGroup IniRead, waitlists, %thisahk%.ini, Settings, waitlists, 0 IniRead, ClickImBack, %thisahk%.ini, Settings, ClickImBack, 0 IniRead, Toggleimback, %thisahk%.ini, Hotkeys, Toggleimback,%A_Space% IniRead, TakeSeat, %thisahk%.ini, Settings, TakeSeat, 0 IniRead, autoTakeSeat, %thisahk%.ini, Settings, autoTakeSeat, 0 IniRead, AutoReservedSeat, %thisahk%.ini, Settings, AutoReservedSeat, 0 IniRead, Timebank, %thisahk%.ini, Settings, Timebank, 0 IniRead, Interval1, %thisahk%.ini, Settings, Interval1 StringReplace, ddlist1, ddlist1, %interval1%, %Interval1%| GuiControl, , Interval1, |%ddlist1% StringReplace, ddlist1, ddlist1, %interval1%|, %Interval1% IniRead, Autopost, %thisahk%.ini, Settings, Autopost, 0 IniRead, Waitbb, %thisahk%.ini, Settings, Waitbb, 0 IniRead, clickWaitbb, %thisahk%.ini, Settings, clickWaitbb, 0 IniRead, CheckWhenFree, %thisahk%.ini, Settings, CheckWhenFree, 0 IniRead, checkbb, %thisahk%.ini, Settings, checkbb, 0 IniRead, uncheckbb, %thisahk%.ini, Settings, uncheckbb, 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, SitOutNextAll, %thisahk%.ini, Hotkeys, SitOutNextAll,%A_Space% IniRead, RemoveSitout, %thisahk%.ini, Hotkeys, RemoveSitout,%A_Space% IniRead, joinwaitlist, %thisahk%.ini, Hotkeys, joinwaitlist,%A_Space% IniRead, unjoinwaitlist, %thisahk%.ini, Hotkeys, unjoinwaitlist,%A_Space% IniRead, UncheckAutopostAll, %thisahk%.ini, Hotkeys, UncheckAutopostAll,%A_Space% if SitOutNextAll Hotkey, %SitOutNextAll%,SitOutNextAll if RemoveSitout Hotkey, %RemoveSitout%,RemoveSitout if joinwaitlist Hotkey, %joinwaitlist%,joinwaitlist if Unjoinwaitlist Hotkey, %Unjoinwaitlist%,Unjoinwaitlist if UncheckAutopostAll Hotkey, %UncheckAutopostAll%,UncheckAutopostAll If Toggleimback { HotKey, IfWinActive Hotkey, %Toggleimback%, Toggleimback } IniRead, leavetable, %thisahk%.ini, Settings, leavetable,0 IniRead, move, %thisahk%.ini, Settings, move, 0 IniRead, automoveback, %thisahk%.ini, Settings, automoveback, 0 IniRead, movebackByKey, %thisahk%.ini, Hotkeys, movebackByKey,%A_Space% IniRead, ypos, %thisahk%.ini, Variables, ypos,0 IniRead, xpos, %thisahk%.ini, Variables, xpos,0 if MoveBackByKey Hotkey, %MoveBackByKey%,MoveBackByKey IniRead, OpenDef, %thisahk%.ini, BetPotSettings, OpenDef StringReplace, ddlist, ddlist, %OpenDef%, %OpenDef%| GuiControl, , OpenDef, |%ddlist% StringReplace, ddlist, ddlist, %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, ddlist, ddlist, %Open1%, %Open1%| GuiControl, , Open1, |%ddlist% StringReplace, ddlist, ddlist, %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, ahk_class PokerStarsTableFrameClass HotKey, IfWinActive Hotkey, %pot1%,pot1 } IniRead, Open2, %thisahk%.ini, BetPotSettings, Open2 StringReplace, ddlist, ddlist, %Open2%, %Open2%| GuiControl, , Open2, |%ddlist% StringReplace, ddlist, ddlist, %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, ahk_class PokerStarsTableFrameClass HotKey, IfWinActive Hotkey, %pot2%,pot2 } IniRead, Open3, %thisahk%.ini, BetPotSettings, Open3 StringReplace, ddlist, ddlist, %Open3%, %Open3%| GuiControl, , Open3, |%ddlist% StringReplace, ddlist, ddlist, %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, ahk_class PokerStarsTableFrameClass 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 PokerStarsTableFrameClass 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 PokerStarsTableFrameClass 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 PokerStarsTableFrameClass 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 PokerStarsTableFrameClass Hotkey, %alt4%,alt4 } IniRead, autopot, %thisahk%.ini, BetPotSettings, autopot, 0 IniRead, autobet, %thisahk%.ini, BetPotSettings, autobet, 0 IniRead, attempts, %thisahk%.ini, Variables, attempts, 0 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% if fold { ;HotKey, IfWinActive, ahk_class PokerStarsTableFrameClass HotKey, IfWinActive Hotkey, %fold%,fold } if call { ;HotKey, IfWinActive, ahk_class PokerStarsTableFrameClass HotKey, IfWinActive Hotkey, %call%,call } if raise { ;HotKey, IfWinActive, ahk_class PokerStarsTableFrameClass HotKey, IfWinActive Hotkey, %raise%,raise } if fold2any { ;HotKey, IfWinActive, ahk_class PokerStarsTableFrameClass HotKey, IfWinActive Hotkey, %fold2any%,fold2any } Return ;----------------------------------------------------------------------------------------------------- MakeIni: If ClassicTheme IniWrite, %ClassicTheme%, %thisahk%.ini, Options, ClassicTheme If HyperSimpleTheme IniWrite, %HyperSimpleTheme%, %thisahk%.ini, Options, HyperSimpleTheme If SlickTheme IniWrite, %SlickTheme%, %thisahk%.ini, Options, SlickTheme If BlackTheme IniWrite, %BlackTheme%, %thisahk%.ini, Options, BlackTheme IniWrite, %Highlight%, %thisahk%.ini, Settings, Highlight 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, %suspendforchat%, %thisahk%.ini, Settings, suspendforchat IniWrite, %suspendforchatall%, %thisahk%.ini, Settings, suspendforchatall if ActOnActiveTable IniWrite, %ActOnActiveTable%, %thisahk%.ini, Options, ActOnActiveTable if sendundermouse IniWrite, %sendundermouse%, %thisahk%.ini, Options, sendundermouse IniWrite, %activatetableundermouse%, %thisahk%.ini, Settings, activatetableundermouse IniWrite, %totalnumber%, %thisahk%.ini, Variables, totalnumber IniWrite, %limit%, %thisahk%.ini, Settings, limit if ActivateBottomWindow IniWrite, %ActivateBottomWindow%, %thisahk%.ini, Hotkeys, ActivateBottomWindow if findtabletoact IniWrite, %findtabletoact%, %thisahk%.ini, Hotkeys, findtabletoact if suspend IniWrite, %suspend%, %thisahk%.ini, Hotkeys, suspend if TogglePause IniWrite, %TogglePause%, %thisahk%.ini, Hotkeys, TogglePause if CloseAllWithNoAction IniWrite, %CloseAllWithNoAction%, %thisahk%.ini, Hotkeys, CloseAllWithNoAction if Cashier IniWrite, %Cashier%, %thisahk%.ini, Hotkeys, Cashier 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 JoinWaitlistlobby IniWrite, %JoinWaitlistlobby%, %thisahk%.ini, Hotkeys, JoinWaitlistlobby if JoinWaitlistlobbyGroup IniWrite, %JoinWaitlistlobbyGroup%, %thisahk%.ini, Hotkeys, JoinWaitlistlobbyGroup IniWrite, %waitlists%, %thisahk%.ini, Settings, waitlists IniWrite, %ClickImBack%, %thisahk%.ini, Settings, ClickImBack IniWrite, %TakeSeat%, %thisahk%.ini, Settings, TakeSeat IniWrite, %autoTakeSeat%, %thisahk%.ini, Settings, autoTakeSeat IniWrite, %AutoReservedSeat%, %thisahk%.ini, Settings, AutoReservedSeat IniWrite, %Timebank%, %thisahk%.ini, Settings, Timebank IniWrite, %Interval1%, %thisahk%.ini, Settings, Interval1 IniWrite, %Autopost%, %thisahk%.ini, Settings, Autopost IniWrite, %Waitbb%, %thisahk%.ini, Settings, Waitbb IniWrite, %clickWaitbb%, %thisahk%.ini, Settings, clickWaitbb IniWrite, %closeOKwindow%, %thisahk%.ini, Settings, closeOKwindow IniWrite, %CheckWhenFree%, %thisahk%.ini, Settings, CheckWhenFree 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 if SitOutNextAll IniWrite, %SitOutNextAll%, %thisahk%.ini, Hotkeys, SitOutNextAll if RemoveSitout IniWrite, %RemoveSitout%, %thisahk%.ini, Hotkeys, RemoveSitout if joinwaitlist IniWrite, %joinwaitlist%, %thisahk%.ini, Hotkeys, joinwaitlist if Unjoinwaitlist IniWrite, %unjoinwaitlist%, %thisahk%.ini, Hotkeys, unjoinwaitlist if UncheckAutopostAll IniWrite, %UncheckAutopostAll%, %thisahk%.ini, Hotkeys, UncheckAutopostAll if Toggleimback IniWrite, %Toggleimback%, %thisahk%.ini, Hotkeys, Toggleimback IniWrite, %leavetable%, %thisahk%.ini, Settings, leavetable IniWrite, %move%, %thisahk%.ini, Settings, move IniWrite, %automoveback%, %thisahk%.ini, Settings, automoveback if moveback IniWrite, %moveback%, %thisahk%.ini, Hotkeys, moveback if MoveBackByKey IniWrite, %MoveBackByKey%, %thisahk%.ini, Hotkeys, MoveBackByKey IniWrite, %ypos%, %thisahk%.ini, Variables, ypos IniWrite, %xpos%, %thisahk%.ini, Variables, xpos 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, Variables, attempts 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 Return ;----------------------------------------------------------------------------------------------------- CreateIni: HyperSimpleTheme:=1 ClassicTheme:=0 SlickTheme:=0 BlackTheme:=0 Highlight:=0 highlightactive:=1 highlighthero:=0 MoveMouse:=0 stealfocus:=1 ActOnActiveTable:=1 sendundermouse:=0 activatetableundermouse:=0 suspendforchat:=0 suspendforchatall:=0 limit:=0 totalnumber:=24 waitlists:=5 TakeSeat:=0 autoTakeSeat:=0 AutoReservedSeat:=0 Timebank:=0 Interval1:=1 Autopost:=0 Waitbb:=0 clickWaitbb:=0 closeOKwindow:=1 CheckWhenFree:=1 Buyin:=0 remembered:=1 bbmultiplier:=50 ClickImBack:=0 leavetable:=0 move:=0 automoveback:=0 xpos:=100 ypos:=100 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:=999 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 { suspended=Off } else { suspended=On } Gui, 13:Add, Text,,Suspend: %suspended% Gui, 13:+ToolWindow Gui, 13:Show, w150 h20 Sleep, 1500 Gui, 13:Destroy return ;----------------------------------------------------------------------------------------------------- Edit: edit return ;----------------------------------------------------------------------------------------------------- donation: WinMenuSelectItem, PokerStars Lobby,, Requests, Transfer Funds... WinWait, Transfer Funds ahk_class #32770, , 10 WinGet, tf, id ControlFocus, Edit2, ahk_id%tf% ControlSetText, Edit2, Max1mums ControlFocus, Edit1, ahk_id%tf% Sleep, -1 ControlSetText, Edit1, GuiControl, Disable, Donate return ;----------------------------------------------------------------------------------------------------- exitSub: exitApp return ;-----------------------------------------------------------------------------------------------------
Put StarsPics folder to the folder with ahk file.
Don't forget to choose correct table theme on General tab.
BetPot function won't be efficient with aero theme on, easiest way to disable aero theme just for PokerStars: rightclick PokerStarsUpdate.exe, choose Properties - Compatibility - Disable desktop composition.
02-24-2010
, 10:18 AM
Join Date: May 2007
Posts: 21
this scrypt is almost perfect, the only thing that i don't like is that when i reach the maximum number of tables i want, ant the next table pop-up inmediately i unjoin all the waiting list, it's possible to solve this? thanks Max1mums, great job!!!
02-24-2010
, 10:22 AM
Join Date: Aug 2009
Posts: 1,700
So you don't want to unjoin from all waitlists with total limit reached, what's the point?
02-24-2010
, 07:46 PM
Join Date: May 2007
Posts: 21
the point is that i play shortstack then i enter and exit a lot of the tables. do you understand? then when i reach my confortable level of tables, in some minutes may be i close one table and open another one. I hope you can nderstand my explanation, my english is not very good at the moment.
Thanks for your quick response and for all you work!!
Thanks for your quick response and for all you work!!
02-26-2010
, 03:08 AM
Thanks for the program Max1mus you have done a great job on it, makes multitabling so much easier. One feature I would suggest is a Hotkey to check the 'sit out next blind' box. This option only appears on the fast tables.
Thanks!
Thanks!
03-01-2010
, 04:34 AM
Join Date: Oct 2009
Posts: 50
I've got problem with "Added option to press "wait for big blind" button on normal speed tables automatically"
Then new table pops up it sometimes presses, "call". Stacked. Hyper Simple.
Then new table pops up it sometimes presses, "call". Stacked. Hyper Simple.
03-01-2010
, 06:37 AM
Join Date: Aug 2009
Posts: 1,700
It shouldn't be pressed with betting slider not visible but if you say that it does... PM me screenshot of your table with Call button visible please. Are you sure that Call button is being pressed and not Wait for big blind?
Can anyone else confirm that problem?
Can anyone else confirm that problem?
Last edited by Max1mums; 03-01-2010 at 06:54 AM.
03-01-2010
, 07:11 AM
Join Date: Aug 2009
Posts: 1,700
Don't use this function then or use with caution, i wasn't sure if there was a safe way of implementing it.
03-01-2010
, 01:31 PM
Join Date: Oct 2009
Posts: 50
I will try it more later and report.
03-01-2010
, 04:20 PM
Join Date: Sep 2009
Posts: 45
I am testing and i have a problem with tha bet pot i choose ssnl but the bet size is 3BB + 1BB* limpers instead of 4bb+ 1(bb) *limpers
I tired to change the script but i couldn´t...
I wanto 4bb + 1bb *limpers how can i change that...
Thanks!!
I tired to change the script but i couldn´t...
I wanto 4bb + 1bb *limpers how can i change that...
Thanks!!
03-01-2010
, 04:46 PM
Join Date: Aug 2009
Posts: 1,700
Set pre to 100.
03-01-2010
, 07:54 PM
Join Date: Feb 2010
Posts: 8
Quote:
03-02-2010
, 12:23 AM
Join Date: Sep 2009
Posts: 45
This works great, sometimes when i am in the bb and there is one limper it puts
45 in the box instead of 50
Another problem is the option "Uncheck Auto post blinds in all tables" is not working
45 in the box instead of 50
Another problem is the option "Uncheck Auto post blinds in all tables" is not working
03-02-2010
, 01:03 AM
Join Date: Feb 2008
Posts: 14
This happened to me also. I was on the button, UTG+2 raised, MP re-raised all-in and apparently I insta-called. Didn't even get the chance to fold.
I'm using the latest version of your script and AutoHotKey with the "Slick" theme.
I'm using the latest version of your script and AutoHotKey with the "Slick" theme.
03-02-2010
, 06:47 AM
Join Date: Aug 2009
Posts: 1,700
I will remove this option then, don't see any way to determine if that is Call button or Wait for big blind button, maybe you guys have any ideas?
javirap, try checking/unchecking fix blinds option, auto post blinds checkbox was moved after recent update, i'll fix it.
javirap, try checking/unchecking fix blinds option, auto post blinds checkbox was moved after recent update, i'll fix it.
03-02-2010
, 07:41 AM
Join Date: Sep 2009
Posts: 45
Please don't remove that option, is very usefull and only fails when you are in the bb and then you must adjust de amount but is a very very useful option
03-02-2010
, 08:15 AM
Join Date: Aug 2009
Posts: 1,700
StarsCash 1.43
Fixed all functions with use of sitout/autopost checkboxes, uncheck autopost all function will press sitout next blind additionally on normal speed tables now, wait for bb function for normal speed tables was removed until i find a safe way of implementing it.
StarsPics (needed for BetPot function only) can be found here: http://depositfiles.com/files/40h0rmelj
Put StarsPics folder to the folder with ahk file.
Don't forget to choose correct table theme on General tab.
BetPot function won't be efficient with aero theme on, easiest way to disable aero theme just for PokerStars: rightclick PokerStarsUpdate.exe, choose Properties - Compatibility - Disable desktop composition.
Fixed all functions with use of sitout/autopost checkboxes, uncheck autopost all function will press sitout next blind additionally on normal speed tables now, wait for bb function for normal speed tables was removed until i find a safe way of implementing it.
Code:
; #### StarsCash #### ; AHK version: 1.0.48.05 ; date: March 02,2010 version := "1.43" ; author: Max1mums (max1mums@overcards.com) #SingleInstance, Force #NoEnv #MaxHotkeysPerInterval 500| Settitlematchmode, 2 OnExit exitSub debug:=0 StringTrimRight, thisahk, A_ScriptName, 4 SetWorkingDir %A_ScriptDir% Menu, Tray, NoStandard Menu, Tray, Add, Settings, menugui Menu, Tray, Add Menu, Tray, Add, Reload, reload Menu, Tray, Default, Settings Menu, Tray, Add Menu, Tray, Add, Suspend, Suspend Menu, Tray, Add, Pause, TogglePause Menu, Tray, Add Menu, Tray, Add, Edit, Edit Menu, Tray, Add Menu, Tray, Add, Donate, Donation Menu, Tray, Add, Exit, ExitSub OnMessage(0x112,"WM_SYSCOMMAND") WM_SYSCOMMAND(wParam) { if (A_Gui && wParam = 0xF020) ; SC_MINIMIZE { Gui, destroy return 0 } } SetBatchLines,1ms SetWinDelay,-1 SendMode Input SysGet, xbord, 32 SysGet, border, 32 SysGet, ybord, 33 SysGet, cap, 4 SysGet, caption, 4 ; Border of the "Highlighter" border_color := "ff0000" border_size := 5 trans := 255 boost:=false ;betpot stuff stars_editbox = PokerStarsSliderEditorClass1 ddlist= ddlist.="ssnl" . "|" ddlist.="trny" . "|" ddlist.="mix" . "|" ddlist.="----" . "|" ddlist1= Loop 14 ddlist1:=ddlist1 . A_index . "|" gosub,getini Gui 11:Show, w1 1 x1 y1, PokerWindow WinGet,PokerWindowID, id, PokerWindow Gui 11:Show,hide, w1 h1 x1 y1, PokerWindow Init() ;;;;;;;;;;;;;;End of init;;;;;;;;;;;;;; settimer,HeroSeated,1103 settimer,Popupwatcher,139 if CheckWhenFree settimer,FreeCheck,77 if ClickImBack settimer,ClickBack,2033 if Timebank settimer,ClickTimebank,1555 settimer,BetPot,37 settimer,clickwithdelay,93 settimer,NewTable,67 if Highlight settimer,Highlighter,70 if activatetableundermouse settimer,activateundermouse,133 if MoveMouse settimer,MouseMove,119 if leavetable settimer,closetable,249 if suspendforchatall settimer,suspendallforchat,24 if clickWaitbb settimer,clickbb,1211 return ;----------------------------------------------------------------------------------------------------- Init() { local list,id winget,list,list,ahk_class PokerStarsTableFrameClass ;Logged In loop %list% { id:=list%A_index% if seated%id% is not number { loop %list% { id:=list%A_index% seated%id%:=2 } break } } } return ;----------------------------------------------------------------------------------------------------- NewTable: IsTableNew() return IsTableNew() { local list,id winget,list,list,ahk_class PokerStarsTableFrameClass 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(tablequeue,id) movetolist(id,A_TickCount) } seated%id%:=1 } else if ((limit=1) & (list>totalnumber)) winclose,ahk_id%id% } } } 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=PokerStarsTableFrameClass return 1 else return 0 } } else return 0 } ;----------------------------------------------------------------------------------------------------- IsBetBoxNew() { global oldid,PotDefPre,PotDefFlop,PotDefTurn,PotDefRiver,RoundDef,OpenDef,FixDef winget winid,id,A if (winid<>oldid) { ControlGet, Z, Visible,,PokerStarsSliderClass1, ahk_id %winid% if Z { oldid:=winid if RoundDef Roundsb:="smallblind" else Roundsb:=0.2 Pot(winid,PotDefPre A_space PotDefFlop A_space PotDefTurn A_space PotDefRiver, Roundsb, OpenDef, FixDef) } else oldid= } else { ControlGet, Z, Visible,,PokerStarsSliderClass1, ahk_id %winid% if !Z oldid= } } return ;----------------------------------------------------------------------------------------------------- IsMouseInChat(id) { wingetpos,,,w,h,ahk_id%id% coordmode,mouse,relative mousegetpos,x1,y1 mousex:=0.5000 mousey:=0.7477 relstarsclientpoint(id,mousex,mousey,0) if ((x1<mousex) and (y1>mousey)) & ((x1>0) & (y1>0) & (y1<h) & (x1<w)) return 1 else return 0 } ;----------------------------------------------------------------------------------------------------- suspendallforchat: if suspended!=on suspendall() return suspendall() { wingetclass,class,A if class=PokerStarsTableFrameClass { winget,id,id,A if IsMouseInChat(id) suspend,on else if A_isSuspended suspend,off } } return ;----------------------------------------------------------------------------------------------------- listAdd( byRef list, item, del="," ) { list:=( list!="" ? ( list . del . item ) : item ) return list } ;----------------------------------------------------------------------------------------------------- listDelItem( byRef list, item, del=",") { ifEqual, item,, return list list:=del . list . del StringReplace, list, list, %item%%del% StringTrimLeft, list, list, 1 StringTrimRight, list, list, 1 return list } ;----------------------------------------------------------------------------------------------------- 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 ;----------------------------------------------------------------------------------------------------- movetolisttimebank(winid,time) { global tablequeuetimebank listAdd(tablequeuetimebank, winid . "-" . time) } return ;----------------------------------------------------------------------------------------------------- removefromlisttimebank(winid) { global tablequeuetimebank Loop, Parse, tablequeuetimebank, `, { if InStr(A_loopfield,winid) listDelItem(tablequeuetimebank, A_Loopfield) } } return ;----------------------------------------------------------------------------------------------------- clickwithdelay: clickdelay() clickdelaytimebank() return ;----------------------------------------------------------------------------------------------------- clickdelay() { global tablequeue Loop, Parse, tablequeue, `, { stringsplit,tab,A_loopfield,- if abs(tab2-A_TickCount)>500 { ClickSeats(tab1) listDelItem(tablequeue, A_Loopfield) } } } return ;----------------------------------------------------------------------------------------------------- clickdelaytimebank() { global tablequeuetimebank,interval1,BlackTheme,SlickTheme interval:=interval1*1000 Loop, Parse, tablequeuetimebank, `, { stringsplit,tab,A_loopfield,- if abs(tab2-A_TickCount)>interval { if BlackTheme { click_x :=0.5875 click_y :=0.7531 } else if SlickTheme { click_x :=0.5047 click_y :=0.8256 } else { click_x :=0.6582 click_y :=0.7729 click_x1:=0.7441 click_y1:=0.8127 } PostClickStars(click_x, click_y, tab1, 0) PostClickStars(click_x1, click_y1, tab1, 0) listDelItem(tablequeuetimebank, A_Loopfield) } } } return ;----------------------------------------------------------------------------------------------------- clickok() { ifwinexist,PokerStars ahk_class #32770 { ControlGet, Z, Visible,,Button2, PokerStars ahk_class #32770 if !z ControlGet, Z, Visible,,Button3, PokerStars ahk_class #32770 if !z controlclick,Button1,PokerStars ahk_class #32770 } } return ;----------------------------------------------------------------------------------------------------- autobuy() { global max,remembered,xbb,bbmultiplier ifwinexist, Buy-in ahk_class #32770 { winget,id,id,Buy-in ahk_class #32770 ControlGet, v, Visible,,Edit1, ahk_id %id% if v { SetControlDelay, -1 if max { Control, Check,, Button1, ahk_id %id% sleep,-1 ControlClick, OK, ahk_id %id% } if remembered { ControlClick, OK, ahk_id %id% } if xbb { parent:=DllCall("GetParent","uint",id) wingettitle,title,ahk_id %parent% stringtrimleft,hero,title,InStr(title, A_space,false,0) If ((InStr(title, "No Limit") OR InStr(title, "Pot Limit")) AND InStr(title, "Tournament") = 0) { StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 } else if (InStr(title, "No Limit") <> 0 AND InStr(title, "Tournament") <> 0) { StringMid, bb, title, InStr(title, "/", "", InStr(title, "Blinds")) + 1, InStr(title, a_space, "", InStr(title, "Blinds") + 8) - InStr(title, "/", "", InStr(title, "Blinds")) - 1 ;___so we retrieve the big blind instead } StringReplace,bb,bb,$,,1 StringReplace,bb,bb,€,,1 StringReplace,bb,bb,Ђ,,1 StringReplace,bb,bb,Ј,,1 bb*=bbmultiplier bb := Round(bb, 2) Control, Check,, Button2, ahk_id %id% sleep,-1 ControlSetText, Edit1, %bb%, ahk_id%id% ControlClick, OK, ahk_id %id% winwaitclose,ahk_id %id%,,1.5 if errorlevel ControlClick, Cancel, ahk_id %id% } } } } return ;----------------------------------------------------------------------------------------------------- Popupwatcher: if TakeSeat TakeSeat() if Buyin autobuy() if closeOKwindow clickok() return ;----------------------------------------------------------------------------------------------------- FreeCheck: IfWinExist, PokerStars, Check { SetControlDelay, -1 ControlFocus, Check Sleep, -1 ControlClick, Check Sleep, -1 ControlSend, Check, {SPACE} } return ;----------------------------------------------------------------------------------------------------- HeroSeated: IsHeroSeared() return IsHeroSeared() { local list,winid,title local col,click_x,click_y winget,list,list,ahk_class PokerStarsTableFrameClass loop %list% { winid:=list%A_index% wingettitle,title,ahk_id%winid% col:=PixelColorA(0.0115,0.6800,winid,1) if seated%winid%=1 if instr(title,"Logged In") if (instr(col,"15193294")) or (instr(col,"-0-")) or (instr(col,"16777215") or (instr(col,"65331"))) { if move { if AutoMoveBack { WinMove, ahk_id%winid%,, xstart%winid%,ystart%winid% seated%winid%:=2 } } if Autopost { if !instr(title,"fast") { click_x :=0.0142 ;click_y :=0.7224 click_y :=0.7075 PostclickStars(click_x,click_y,winid,0) } } if waitbb { click_x :=0.6629 click_y :=0.8555 PostclickStars(click_x,click_y,winid,0) } if seated%winid%!=2 seated%winid%:=3 } } } return ;----------------------------------------------------------------------------------------------------- clickbb: clickwaitbb() return clickwaitbb() { global HyperSimpleTheme,ClassicTheme,SlickTheme,BlackTheme winget,list,list,Logged In ahk_class PokerStarsTableFrameClass loop %list% { id:=list%A_index% wingettitle,title,ahk_id%id% ControlGet,vis,Visible,,PokerStarsSliderClass1,ahk_id%id% if !instr(title,"fast") & (vis!=1) { waitx1:=0.6962 waity1:=0.9747 waitx2:=0.6962 waity2:=0.9908 v:=30 col:=PixelColorA(waitx1,waity1,id,0,waitx2,waity2,0) stringsplit,col,col,- if comparecolors(col1,col2,v)=0 PostclickStars(waitx1,waity1,id,0) } } } return ;----------------------------------------------------------------------------------------------------- relStarsClientPoint(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 ;----------------------------------------------------------------------------------------------------- PostLeftClick(x, y, table_id, activate=1, control_class="") { ; ### 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% critical,6 PostMessage, 0x201, 0x0001, ((y<<16)^x), %control_class%, ahk_id%table_id% PostMessage, 0x202 , 0, ((y<<16)^x), %control_class%, ahk_id%table_id% critical,off sleep,-1 } return ;----------------------------------------------------------------------------------------------------- PostclickStars(x,y,winid,activate=1,client=1) { relStarsClientPoint(winid, x, y,client) DllCall("SetCapture","Uint",winid) PostLeftClick(x, y, winid, activate) DllCall("ReleaseCapture") } return ;----------------------------------------------------------------------------------------------------- PixelColorA(colx,coly,id,region=0,colx1=0,coly1=0,region1=0,mini=0) { global xbord,ybord,cap hdc_frame := DllCall( "GetDC", "UInt",PokerWindowID) hdc_buffer := DllCall("gdi32.dll\CreateCompatibleDC","UInt",hdc_frame) WinGetPos,,,W,H,ahk_id %id% hbm_buffer := DllCall("gdi32.dll\CreateCompatibleBitmap", "UInt",hdc_frame, "Int",w, "Int",h) DllCall( "gdi32.dll\SelectObject", "UInt",hdc_buffer, "UInt",hbm_buffer) DllCall( "PrintWindow", "UInt" , id , "UInt" , hdc_buffer , "UInt" , 0 ) WinGet,ctrls,ControlList,ahk_id %id% Loop,Parse,ctrls,`n { class:=A_LoopField ControlGet,ctrlid,Hwnd,,%class%,ahk_id %id% ControlGet,visible,Visible,,,ahk_id %ctrlid% If visible=1 DllCall("RedrawWindow","UInt",ctrlid,"UInt",0,"UInt",0,"UInt", 1|4|64|1024) } DllCall("RedrawWindow","UInt",id,"UInt",0,"UInt",0,"UInt", 1|4|64|1024) x:=floor(((W-2*xbord)*colx)) + xbord y:=floor(((H-(2*ybord)-cap)*coly)) + ybord + cap if mini regiondim:=5 else regiondim:=10 if region { loop %regiondim% { delta:=A_index loop %regiondim% { 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 ;pix.=p . "*" . p1 . "-" pix.=p . "-" } } } else { pix := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) SetFormat, IntegerFast, hex pix += 0 pix .= "" SetFormat, IntegerFast, d } if colx1 { x:=floor(((W-2*xbord)*colx1)) + xbord y:=floor(((H-(2*ybord)-cap)*coly1)) + ybord + cap if region1 { loop %regiondim% { delta:=A_index loop %regiondim% { delta1:=A_index p := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x+delta , "Int", y+delta1) pix1.=p . "-" } } } else { pix1 := DllCall("GetPixel", "UInt", hdc_buffer, "Int", x, "Int", y) SetFormat, IntegerFast, hex pix1 += 0 pix1 .= "" SetFormat, IntegerFast, d } } if region1 pix.="*" . pix1 else if colx1 pix.="-" . pix1 sleep,1 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) return pix } ;----------------------------------------------------------------------------------------------------- CompareColors(ByRef bgr1, ByRef bgr2, ByRef variation) { c1 := bgr1 & 0xff c2 := bgr2 & 0xff if (abs(c1 - c2) > variation) return false c1 := (bgr1 >> 8) & 0xff c2 := (bgr2 >> 8) & 0xff if (abs(c1 - c2) > variation) return false c1 := (bgr1 >> 16) & 0xff c2 := (bgr2 >> 16) & 0xff if (abs(c1 - c2) > variation) return false return true } ;----------------------------------------------------------------------------------------------------- CloseAllWithNoAction: settimer,ClickBack,off SetControlDelay, -1 WinGet, list, List, ahk_class PokerStarsTableFrameClass Loop, %list% { winid:=list%A_Index% wingettitle,title,ahk_id%winid% Sittingout:=PixelColorA(0.8125,0.8621,winid) If !instr(title,"Logged In") OR ((Sittingout=0x000000) OR (Sittingout=0xDFD9CE) OR (Sittingout=0xD2EBF3) OR (Sittingout=0xB3A39D) OR (Sittingout=0x9D9D9D) OR (Sittingout=0xCCCCCC) OR (Sittingout=0xDEDBCE) OR (Sittingout=0xB5A29c) OR (Sittingout=0xBDAEAD) OR (Sittingout=0x343434) OR (Sittingout=0x444444) OR (Sittingout=0x333333)) WinKill,ahk_id%winid% } WinGet, list, List, ahk_class PokerStarsTableFrameClass Loop, %list% { winid:=list%A_Index% Sittingout:=PixelColorA(0.8125,0.8621,winid) If !((Sittingout=0x000000) OR (Sittingout=0xDFD9CE) OR (Sittingout=0xD2EBF3) OR (Sittingout=0xB3A39D) OR (Sittingout=0x9D9D9D) OR (Sittingout=0xCCCCCC) OR (Sittingout=0xDEDBCE) OR (Sittingout=0xB5A29c) OR (Sittingout=0xBDAEAD) OR (Sittingout=0x343434) OR (Sittingout=0x444444) OR (Sittingout=0x333333)) { back_x:=0.0141 back_y:=0.6860 PostClickStars(back_x, back_y, winid, 0) } } sleep,300 WinGet, list, List, ahk_class PokerStarsTableFrameClass Loop, %list% { winid:=list%A_Index% Sittingout:=PixelColorA(0.8125,0.8621,winid) If ((Sittingout=0x000000) OR (Sittingout=0xDFD9CE) OR (Sittingout=0xD2EBF3) OR (Sittingout=0xB3A39D) OR (Sittingout=0x9D9D9D) OR (Sittingout=0xCCCCCC) OR (Sittingout=0xDEDBCE) OR (Sittingout=0xB5A29c) OR (Sittingout=0xBDAEAD) OR (Sittingout=0x343434) OR (Sittingout=0x444444) OR (Sittingout=0x333333)) WinKill,ahk_id%winid% } WinGet, list, List,Table ahk_class #32770 Loop, %list% { winid:=list%A_Index% ControlFocus,Button1, ahk_id%winid% Sleep, -1 ControlClick,Button1, ahk_id%winid% Sleep, -1 ControlSend,Button1, {SPACE}, ahk_id%winid% } return ;----------------------------------------------------------------------------------------------------- closeTable: LeaveTable() return LeaveTable() { settitlematchmode,2 SetControlDelay, -1 ifwinexist,Table ahk_class #32770 { winget,winid,id,Table ahk_class #32770 ControlGet, v, Visible,,Button2, ahk_id %winid% ControlGet, z, Visible,,Button3, ahk_id %winid% if (v) & (!z) { ControlFocus,Button1, ahk_id%winid% Sleep, -1 ControlClick,Button1, ahk_id%winid% Sleep, -1 ControlSend,Button1, {SPACE}, ahk_id%winid% } } } return ;----------------------------------------------------------------------------------------------------- SitOutNextAll: ;ClickImBack:=false settimer,ClickBack,off WinGet, list, List,Logged In ahk_class PokerStarsTableFrameClass Loop, %list% { Z:=list%A_Index% WinGetPos,,, W, H, ahk_id %Z% Sittingout:=PixelColorA(0.8125,0.8621,Z) If !((Sittingout=0x000000) OR (Sittingout=0xDFD9CE) OR (Sittingout=0xD2EBF3) OR (Sittingout=0xB3A39D) OR (Sittingout=0x9D9D9D) OR (Sittingout=0xCCCCCC) OR (Sittingout=0xDEDBCE) OR (Sittingout=0xB5A29c) OR (Sittingout=0xBDAEAD) OR (Sittingout=0x343434) OR (Sittingout=0x444444) OR (Sittingout=0x333333)) { if SlickTheme { back_x:=0.0146 back_y:=0.7148 } else { back_x:=0.0141 back_y:=0.6860 } PostClickStars(back_x, back_y, Z, 0) } } return ;----------------------------------------------------------------------------------------------------- RemoveSitout: ;ClickImBack:=true if ClickImBack settimer,ClickBack,1500 WinGet, list, List,Logged In ahk_class PokerStarsTableFrameClass Loop, %list% { Z:=list%A_Index% WinGetPos,,, W, H, ahk_id %Z% Sittingout:=PixelColorA(0.8125,0.8621,Z) ; JoinWaitingList:=PixelColorA(0.8625,0.8621,Z) If (Sittingout=0x000000) OR (Sittingout=0xDFD9CE) OR (Sittingout=0xD2EBF3) OR (Sittingout=0xB3A39D) OR (Sittingout=0x9D9D9D) OR (Sittingout=0xCCCCCC) OR (Sittingout=0xDEDBCE) OR (Sittingout=0xB5A29c) OR (Sittingout=0xBDAEAD) OR (Sittingout=0x343434) OR (Sittingout=0x444444) OR (Sittingout=0x333333) ; If (JoinWaitingList!=0x000000) AND (JoinWaitingList!=0xDFD9CE) AND (JoinWaitingList!=0xDEDBCE) AND (JoinWaitingList!=0x0xB5A29c) AND (JoinWaitingList!=0xBDAEAD) AND (JoinWaitingList!=0x1f1f1f) AND (JoinWaitingList!=0x343434) AND (JoinWaitingList!=0x0202020) AND (JoinWaitingList!=0xe6e6e6) AND (JoinWaitingList!=0xdddddd) AND (JoinWaitingList!=0x1e1e1e) AND (JoinWaitingList!=0xb0b0b0) { back_x :=0.7515 back_y :=0.8468 PostClickStars(back_x, back_y, Z, 0) } } return ;----------------------------------------------------------------------------------------------------- UncheckAutopostAll: ;sitx:=0.0126 ;sity:=0.7201 if SlickTheme { sitx:=0.0115 sity:=0.7342 } else { sitx:=0.0131 sity:=0.7000 } click_x:=sitx+0.0070 click_y:=sity+0.0070 WinGet, list, List,Logged In ahk_class PokerStarsTableFrameClass Loop, %list% { Z:=list%A_Index% wingettitle,title,ahk_id%Z% if !instr(title,"fast") { Sittingout:=PixelColorA(sitx,sity,Z,1,0,0,0,1) if (instr(Sittingout,"-0-")) ; & !(instr(Sittingout,"1710618")) ; & !(instr(Sittingout,"16777215")) { PostClickStars(click_x, click_y, Z, 0) } } else { Sittingout:=PixelColorA(sitx,sity,Z,1,0,0,0,1) if !(instr(Sittingout,"-0-")) ; & !(instr(Sittingout,"1710618")) ; & !(instr(Sittingout,"16777215")) { PostClickStars(click_x, click_y, Z, 0) } } } return ;----------------------------------------------------------------------------------------------------- ClickBack: imback() return ;----------------------------------------------------------------------------------------------------- imback() { winget,list,list,Logged In ahk_class PokerStarsTableFrameClass back_x:=0.8031 back_y:=0.8405 join_x:=0.8631 join_y:=0.8405 loop %list% { id:=list%A_index% Sittingout:=PixelColorA(back_x,back_y,id,1) ;col:=PixelColorA(back_x,back_y,id,1,join_x,join_y,1) ;stringsplit,col,col,* ;Sittingout:=col1 ;JoinWaitingList:=col2 if (instr(Sittingout,"4473924")) or (instr(Sittingout,"14670286")) or (instr(Sittingout,"-0-")) or (instr(Sittingout,"-0x0-")) ; if !((instr(JoinWaitingList,"3684408")) or (instr(JoinWaitingList,"4473924")) or (instr(JoinWaitingList,"14670286")) or (instr(JoinWaitingList,"-0-")) or (instr(JoinWaitingList,"-0x0-"))) { postclickstars(back_x,back_y,id,0) } } } return ;----------------------------------------------------------------------------------------------------- Toggleimback: If (ClickImBack=true) { ClickImBack:=false settimer,ClickBack,off T=Off } else { ClickImBack:=true settimer,ClickBack,1500 T=On } Gui, 12:Add, Text,, Auto Click Im Back: %T% Gui, 12:+ToolWindow Gui, 12:Show, w150 h20 Sleep, 1000 Gui, 12:Destroy return ;----------------------------------------------------------------------------------------------------- ClickTimebank: clicktime() return ;----------------------------------------------------------------------------------------------------- clicktime() { global SlickTheme,BlackTheme,tablequeuetimebank if BlackTheme { timex:=0.5775 timey:=0.7431 } else if SlickTheme { timex:=0.4920 timey:=0.7958 } else { timex:=0.6500 timey:=0.7670 timex1:=0.7341 timey1:=0.8027 } winget,list,list,Logged In ahk_class PokerStarsTableFrameClass loop %list% { id:=list%A_index% col:=PixelColorA(timex,timey,id,1,timex1,timey1,1) stringsplit,col,col,* if (instr(col1,"13484978")) or (instr(col1,"1000084")) or (instr(col1,"16777215")) or (instr(col2,"13484978")) or (instr(col2,"1000084")) or (instr(col2,"16777215")) { if !InStr(tablequeuetimebank,id) movetolisttimebank(id,A_TickCount) } else if InStr(tablequeuetimebank,id) removefromlisttimebank(id) } } return ;----------------------------------------------------------------------------------------------------- Joinwaitlist: winget,list,list, ahk_class PokerStarsTableFrameClass,,Logged In loop %list% { id:=list%A_index% col:=PixelColorA(0.6274,0.9352,id,1) if !(instr(col,"15921906")) & !(instr(col,"16777215")) { click_x :=0.8625 click_y :=0.8621 PostclickStars(click_x,click_y,id,0) } ;sleep,50 } return ;----------------------------------------------------------------------------------------------------- Unjoinwaitlist: winget,list,list, ahk_class PokerStarsTableFrameClass,,Logged In loop %list% { id:=list%A_index% col:=PixelColorA(0.6274,0.9352,id,1) if InStr(col,"15921906") or (instr(col,"16777215")) { click_x :=0.8625 click_y :=0.8621 PostclickStars(click_x,click_y,id,0) } ;sleep,50 } return ;----------------------------------------------------------------------------------------------------- JoinWaitlistlobby: ControlGet, Black, Visible,, PokerStarsButtonClass1, PokerStars Lobby If black { ControlGet, Join, Visible,, PokerStarsButtonClass4, PokerStars Lobby ControlGet, Leave, Visible,, PokerStarsButtonClass3, PokerStars Lobby If (Join=1) { ControlClick, PokerStarsButtonClass4, PokerStars Lobby SetControlDelay -1 ControlClick, Button1, Waiting List } else { If (Leave=1) ControlClick, PokerStarsButtonClass3, PokerStars Lobby } } else { ControlGet, Join, Visible,, PokerStarsButtonClass3, PokerStars Lobby ControlGet, Leave, Visible,, PokerStarsButtonClass2, PokerStars Lobby If (Join=1) { ControlClick, PokerStarsButtonClass3, PokerStars Lobby SetControlDelay -1 ControlClick, Button1, Waiting List } else { If (Leave=1) ControlClick, PokerStarsButtonClass2, PokerStars Lobby } } return ;----------------------------------------------------------------------------------------------------- JoinWaitlistlobbyGroup: joingroup(waitlists) return joingroup(waitinglists) { winget,id,id,PokerStars Lobby - ahk_class #32770 ifwinactive, ahk_id%id% { ControlGet, Black, Visible,, PokerStarsButtonClass1, ahk_id%id% If Black { joinbutton=PokerStarsButtonClass4 unjoinbutton=PokerStarsButtonClass3 } else { joinbutton=PokerStarsButtonClass3 unjoinbutton=PokerStarsButtonClass2 } list=PokerStarsListClass1 loop %waitinglists% { SetControlDelay,-1 ControlGet, Join, Visible,, %joinbutton%, ahk_id%id% If (Join=1) { controlfocus,%joinbutton%,,ahk_id%id% sleep,-1 PostLeftClick(50,25,id,0,joinbutton) } controlfocus,PokerStarsListClass1,,ahk_id%id% sleep,-1 controlsend,PokerStarsListClass1,{Down},ahk_id%id% sleep,600 } } } return ;----------------------------------------------------------------------------------------------------- MoveBackByKey: ifwinactive, ahk_class PokerStarsTableFrameClass { winget,id,id,A if (seated%id%=1) or (seated%id%=3) { wingettitle,title,ahk_id%id% seated%id%:=2 WinMove, ahk_id%id%,, xstart%id%,ystart%id% } } return ;----------------------------------------------------------------------------------------------------- TakeSeat() { ;global AutoReservedSeat,tablequeue local list,id,This_id IfWinExist, PokerStars ahk_class #32770 { WinGet, list, list, Seat Available ahk_class #32770 winget, tablelist,list,ahk_class PokerStarsTableFrameClass Loop, %list% { This_id := list%A_Index% if tablelist<%totalnumber% { ControlFocus, Button2, ahk_id%this_id% Sleep, -1 ControlSend, Button2, {SPACE}, ahk_id%this_id% } else { Control, Check,,Button1, ahk_id%this_id% Sleep, -1 ControlSend, Button3, {SPACE}, ahk_id%this_id% } } if tablelist<%totalnumber% { setwindelay,-1 if AutoReservedSeat if list>0 { ;sleep,500 ;winget,id,id,ahk_class PokerStarsTableFrameClass ;winwaitactive,ahk_class PokerStarsTableFrameClass,,1 winwait, ahk_class PokerStarsTableFrameClass,, 1 if !errorlevel { ;winget,id,id,A ;id:=winexist("ahk_class PokerStarsTableFrameClass") winget,id,id,ahk_class PokerStarsTableFrameClass ;ClickSeats(id) if !InStr(tablequeue,id) movetolist(id,A_TickCount) seated%id%:=1 } } } } } return ;----------------------------------------------------------------------------------------------------- ClickSeats(id) { ;setwindelay,500 global SlickTheme if !SlickTheme { ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.5000,0.6903,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.2299,0.6536,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.0697,0.4250,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.1770,0.1835,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.3401,0.0867,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.6566,0.0867,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.8333,0.1910,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.9328,0.4250,id,0) ifwinnotexist,Buy-in ahk_class #32770 Postclickstars(0.7764,0.6513,id,0) } else { Postclickstars(0.5000,0.6903,id,0) Postclickstars(0.2299,0.6536,id,0) Postclickstars(0.1028,0.5114,id,0) Postclickstars(0.1028,0.2591,id,0) Postclickstars(0.3401,0.0867,id,0) Postclickstars(0.6566,0.0867,id,0) Postclickstars(0.8876,0.2591,id,0) Postclickstars(0.8876,0.5114,id,0) Postclickstars(0.7764,0.6513,id,0) } setwindelay,-1 } return ;----------------------------------------------------------------------------------------------------- FindTableToAct: findactivetable() return ;----------------------------------------------------------------------------------------------------- findactivetable() { WinGet, l, List, ahk_class PokerStarsTableFrameClass found:=false v:=30 foldx:=0.5575 foldy:=0.9846 foldx1:=0.5063 foldy1:=0.9846 Loop, %l% { winid:=l%A_Index% ControlGet, Z, Visible,,PokerStarsSliderClass1, ahk_id %winid% If Z { WinActivate, ahk_id %winid% found:=true Break } } if !found Loop, %l% { winid:=l%A_Index% col:=PixelColorA(foldx,foldy,winid,0,foldx1,foldy1,0) stringsplit,col,col,- if comparecolors(col1,col2,v)=0 { WinActivate, ahk_id %winid% break } } } return ;----------------------------------------------------------------------------------------------------- ActivateBottomWindow: GroupActivate, StarsTables return ;----------------------------------------------------------------------------------------------------- activateundermouse: activatetableundermouse() return activatetableundermouse() { If winactive("ahk_class PokerStarsTableFrameClass") or winactive("PokerStars Lobby") { MousegetPos,,,WinID WinGetClass, class, ahk_id %WinID% WinGetTitle, title, ahk_id %WinID% if (class="PokerStarsTableFrameClass") or (instr(title,"PokerStars Lobby")) winactivate, ahk_id %WinID% } } return ;----------------------------------------------------------------------------------------------------- Cashier: IfWinExist Cashier ahk_class #32770 { WinActivate Cashier ahk_class #32770 SetControlDelay -1 ControlClick, PokerStarsButtonClass8, Cashier } else { WinActivate PokerStars Lobby WinMenuSelectItem, PokerStars Lobby,, Lobby, Cashier... } return ;----------------------------------------------------------------------------------------------------- Layout1: layx:=0.5047 layy:=0.1880 layy1:=0.0940 WinGet, WinId, ID, ahk_class PokerStarsTableFrameClass if Winid { winactivate,ahk_id%winid% if HyperSimpleTheme { relstarsclientpoint(winid,layx,layy1,0) ControlClick,x%layx% y%layy1%,ahk_id %WinID%,,,,NA } else { relstarsclientpoint(winid,layx,layy,0) ControlClick,x%layx% y%layy%,ahk_id %WinID%,,,,NA } Loop { WinWait, Options Winactivate, Options SetControlDelay, -1 ControlClick, Button13, Options,,,,NA sleep 100 Send {down 5} Send {Enter} WinWaitClose, Options,,1 If (!ErrorLevel) Break } } return ;----------------------------------------------------------------------------------------------------- Layout2: layx:=0.5047 layy:=0.1880 layy1:=0.0940 WinGet, WinId, ID, ahk_class PokerStarsTableFrameClass if Winid { winactivate,ahk_id%winid% if HyperSimpleTheme { relstarsclientpoint(winid,layx,layy1,0) ControlClick,x%layx% y%layy1%,ahk_id %WinID%,,,,NA } else { relstarsclientpoint(winid,layx,layy,0) ControlClick,x%layx% y%layy%,ahk_id %WinID%,,,,NA } Loop { WinWait, Options Winactivate, Options SetControlDelay, -1 ControlClick, Button13, Options,,,,NA sleep 100 Send {down 6} Send {Enter} WinWaitClose, Options,,1 If (!ErrorLevel) Break } } return ;----------------------------------------------------------------------------------------------------- Layout3: layx:=0.5047 layy:=0.1880 layy1:=0.0940 WinGet, WinId, ID, ahk_class PokerStarsTableFrameClass if Winid { winactivate,ahk_id%winid% if HyperSimpleTheme { relstarsclientpoint(winid,layx,layy1,0) ControlClick,x%layx% y%layy1%,ahk_id %WinID%,,,,NA } else { relstarsclientpoint(winid,layx,layy,0) ControlClick,x%layx% y%layy%,ahk_id %WinID%,,,,NA } Loop { WinWait, Options Winactivate, Options SetControlDelay, -1 ControlClick, Button13, Options,,,,NA sleep 100 Send {down 7} Send {Enter} WinWaitClose, Options,,1 If (!ErrorLevel) Break } } return ;----------------------------------------------------------------------------------------------------- Highlighter: HighLighter(1) return HighLighter(Highlight=1) { global last_table_id global border_color global border_size global trans global OldX,OldY,OldW,OldH global highlighthero foldx:=0.5575 foldx1:=0.5079 foldy:=0.9846 foldy1:=0.9846 v:=25 ifwinactive,ahk_class PokerStarsTableFrameClass { winget,id,id,A WinGetActiveStats,ActiveTitle, ActiveW, ActiveH, ActiveX, ActiveY relstarsclientpoint(id,foldx,foldy,0) pixelgetcolor,fold,foldx,foldy,ahk_id%id% relstarsclientpoint(id,foldx1,foldy1,0) pixelgetcolor,bacgr,foldx1,foldy1,ahk_id%id% if (id != last_table_id) || ((OldX <> ActiveX || OldY <> ActiveY || OldW <> ActiveW || OldH <> ActiveH)) { OldX:=ActiveX OldY:=ActiveY OldW:=ActiveW OldH:=ActiveH mouse_last:=last_table_id last_table_id:=id if(!id) { Gui, 2: Cancel Gui, 3: Cancel Gui, 4: Cancel Gui, 5: Cancel return } WinGetPos, x, y, w, h, ahk_id%id% global xbord global cap x := x + xbord y := y + xbord + cap w := w - (2*xbord) h := h - (2*xbord) - cap ;Makes Border around urgent table if (highlighthero=0) || (highlighthero=1 & comparecolors(fold,bacgr,v)=0) { ;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 } else if highlighthero last_table_id= } else if highlighthero if comparecolors(fold,bacgr,v)=1 { Gui, 2: Cancel Gui, 3: Cancel Gui, 4: Cancel Gui, 5: Cancel last_table_id= } } else { Gui, 2: Cancel Gui, 3: Cancel Gui, 4: Cancel Gui, 5: Cancel last_table_id= } } return ;----------------------------------------------------------------------------------------------------- MouseMove: MoveMouse() return MoveMouse(x_mouse=0.75, y_mouse=0.75) { if IsWindowNew() { wingetclass,class,A wingetactivetitle,title if class=PokerStarsTableFrameClass if instr(title,"Logged In") { winget,id,id,A relStarsClientPoint(id, x_mouse, y_mouse,0,1) DllCall("SetCursorPos", int, x_mouse, int, y_mouse) } } } return ;----------------------------------------------------------------------------------------------------- AlterAmount(id, dir="", frac=1, unit="") { global stars_editbox WinGetTitle, title, ahk_id%id% amount := 0 StringTrimRight, tablename, title, ( StrLen(title) - (InStr(title, " - ")-1) ) IfWinExist, ahk_id%id% ahk_group StarsTables { If ((InStr(title, "No Limit") OR InStr(title, "Pot Limit")) AND InStr(title, "Tournament") = 0) { StringMid, bb, title, InStr(title, "/") + 1, InStr(title, a_space,"", InStr(title, "/")) - InStr(title, "/") - 1 } else if (InStr(title, "No Limit") <> 0 AND InStr(title, "Tournament") <> 0) { StringMid, bb, title, InStr(title, "/", "", InStr(title, "Blinds")) + 1, InStr(title, a_space, "", InStr(title, "Blinds") + 8) - InStr(title, "/", "", InStr(title, "Blinds")) - 1 } } StringReplace,bb,bb,$,,1 StringReplace,bb,bb,Ј,,1 StringReplace,bb,bb,Ђ,,1 StringReplace,bb,bb,€,,1 ;bb++ ;bb-- 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 StarsTables { PotSizeStars(id, pot, call, sb, bb, hero_bet, street, hero_position, open) } 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 StarsTables { ControlGetText, t, %stars_editbox%, ahk_id%id% t := t + amount if (t < 0) { t := 0 } t1 := Round(t, 2) t := Round(t, 3) if t-t1=0 t:=t1 ControlSetText, %stars_editbox%, %t%, ahk_id%id% Sleep, -1 WinSet, Redraw,, ahk_id%id% } } Pot(id, frac=1, round_bet=0.2, open_adjust="", fixblinds=0) { global debug global stars_editbox 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 StarsTables { loop %attempts% { PotSizeStars(id, pot, call, sb, bb, hero_bet, street, hero_position, open) 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 } ; listvars 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") { pot := Round((Floor((pot / sb)) * sb),2) } 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 StarsTables { ControlSetText, %stars_editbox%, %pot%, ahk_id%id% Sleep, -1 } } PotSizeStars(id, ByRef pot, ByRef call, ByRef sb, ByRef bb, ByRef hero_bet, ByRef street, ByRef hero_position, ByRef open) { global use_old_stars_buttons, stars_editbox , ClassicTheme , HyperSimpleTheme, SlickTheme CoordMode, Pixel, Screen setwindelay,-1 if ClassicTheme { PotThemeDir := "classic" CallThemeDir := "classic" pot_x1:=0.4400 pot_x2:=0.5706 pot_y1:=0.0140 pot_y2:=0.0685 call_x1:=0.7143 call_y1:=0.9342 call_y2:=0.9802 call_x2:=0.7843 raise_x1:=0.8727 raise_y1:=0.9342 raise_y2:=0.9802 raise_x2:=0.9423 } else if HyperSimpleTheme { PotThemeDir := "hypersimple" CallThemeDir := "hypersimple" pot_x1:=0.4900 pot_x2:=0.5706 pot_y1:=0.0140 pot_y2:=0.0885 call_x1:=0.7143 call_y1:=0.9342 call_y2:=0.9802 call_x2:=0.7843 raise_x1:=0.8727 raise_y1:=0.9342 raise_y2:=0.9802 raise_x2:=0.9423 } else if SlickTheme { PotThemeDir := "slick" CallThemeDir := "slick" pot_x2:=0.5466 pot_y2:=0.1645 pot_x1:=0.4640 pot_y1:=0.0895 call_y2:=0.9802 call_y1:=0.9342 call_x2:=0.7454 call_x1:=0.6754 raise_x1:=0.8474 raise_y1:=0.9342 raise_y2:=0.9802 raise_x2:=0.9304 } else { return } if (use_old_stars_buttons) { CallThemeDir := CallThemeDir . "\old" } street := GetStreetStars(id) WinGetPos, x, y, w, h, ahk_id%id% if (w <= 526) { SizeDir := 0 } else if (w <= 621) { SizeDir := 1 } else if (w <= 736) { SizeDir := 2 } else if (w <= 875) { SizeDir := 3 } else if (w <= 1037) { SizeDir := 4 } else if (w <= 1227) { SizeDir := 5 } else { SizeDir := 6 } PicDir := "StarsPics" potPicDir := PicDir . "\" . PotThemeDir . "\pot\" . SizeDir buttonPicDir := PicDir . "\" . CallThemeDir . "\call\" . SizeDir relStarsclientPoint(id, pot_x1, pot_y1,0) relStarsclientPoint(id, pot_x2, pot_y2,0) pot := DigitSearch(pot_x1, pot_y1, pot_x2, pot_y2, id, potPicDir, "", 50) relStarsclientPoint(id, call_x1, call_y1,0) relStarsclientPoint(id, call_x2, call_y2,0) call := DigitSearch(call_x1, call_y1, call_x2, call_y2, id, buttonPicDir, "", 50) call := iif( call, call, 0 ) bb := GetBBStars(id, GameTypeStars(WinGetTitle(id))) sb := sb(bb) if (street = "pre") { ControlGetText, t, %stars_editbox%, ahk_id%id% ControlSetText, %stars_editbox%, 0, ahk_id%id% relStarsclientPoint(id, raise_x1, raise_y1,0) relStarsclientPoint(id, raise_x2, raise_y2,0) minraise := DigitSearch(raise_x1, raise_y1, raise_x2, raise_y2, id, buttonPicDir, "", 50) t := Round(t, 2) ControlSetText, %stars_editbox%, %t%, ahk_id%id% Sleep, -1 if (minraise > (2*bb)) { ;pot has been raised if (call = bb) { ;pot was minraised, and we are the BB hero_bet := bb hero_position := "bb" } else if (call < (bb*2)) { ;pot was minraised, and we are the SB hero_bet := sb hero_position := "sb" } } else if (call = bb) { ;hero is not a blind, unraised pot, do nothing } else if (call = 0) { ;unraised pot, hero is the BB hero_bet := bb hero_position := "bb" } else if (call < bb) { ;unraised pot, hero is the SB hero_bet := sb hero_position := "sb" } else { ;pot has been raised, we are not opening open := 0 } } else { ;not pre-flop, no need for open adjustment open := 0 } return } DigitSearch(startX,startY,endX,endY,win,dir,ex="",shades=1) { If ex = ex = bmp batchlines = %A_BatchLines% SetBatchLines -1 WinGetPos,Xwin,Ywin,,,ahk_id%win% CoordMode, Pixel, Screen Loop, 11 { i = %a_index% If i = 10 i = 0 else if i = 11 i = -1 lastXpos := startX + Xwin Loop { x1 := lastXpos + 1 y1 := startY + Ywin x2 := endX + Xwin y2 := endY + Ywin ImageSearch, lastXpos,, x1, y1, x2, y2, *%shades% %dir%\%i%.%ex% If ( errorLevel ) { break } p++ p%p% = %lastXpos% If i = -1 t = . else t = %i% StringReplace, xpos, lastXpos, -, _ c%xpos% = %t% } } Loop, %p% p_all := p_all "," p%a_index% Sort, p_all, N D, U Loop, Parse, p_all, `, { StringReplace, xpos, a_loopfield, -, _ amount := amount "" c%xpos% } CoordMode, Pixel, Relative SetBatchLines %batchlines% return amount } ; finds number of specified pixels in a region GetPixelCount(x1, y1, x2, y2, color, options="") { 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 } PixelGetColor, c, x, y, %options% If ( c = color ) { count++ } y++ } x++ } return count } GetBBStars(id, game_type) { WinGetTitle, title, ahk_id%id% StringReplace,title,title,€,,1 StringReplace,title,title,Ђ,,1 StringReplace,title,title,Ј,,1 If (game_type = "NL Ring") return StrRep(StrMid(title,"/",a_space), "$") else if (game_type = "NL Tourney") return StrRep(StrMid(title,"/",a_space,InStr(title," - Blinds")),"$") } GameTypeStars(title) { If InStr(title, " - Limit Stud") return "Stud" else if ((InStr(title, "NL Hold'em") || InStr(title, " - Pot Limit Hold'em") || InStr(title, " - No Limit Hold'em") || InStr(title, "PL Hold'em")) && InStr(title, "Tournament")) return "NL Tourney" else if (InStr(title, " - No Limit Hold'em") || InStr(title, " - Pot Limit Hold'em")) return "NL Ring" else return "Limit" } 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 } GetStreetStars(id) { global debug CoordMode, Pixel, Screen street := "pre" x1 := 0.6168 y1 := 0.3315 x2 := 0.6660 y2 := 0.3811 relStarsClientPoint(id, x1, y1,0,1) relStarsClientPoint(id, x2, y2,0,1) If ( GetPixelCount(x1, y1, x2, y2, 0xffffff) > 10 ) { street := "river" return street } x1 := 0.5394 y1 := 0.3315 x2 := 0.5887 y2 := 0.3811 relStarsClientPoint(id, x1, y1,0,1) relStarsClientPoint(id, x2, y2,0,1) If ( GetPixelCount(x1, y1, x2, y2, 0xffffff) > 10 ) { street := "turn" return street } x1 := 0.3373 y1 := 0.3315 x2 := 0.3867 y2 := 0.3811 relStarsClientPoint(id, x1, y1,0,1) relStarsClientPoint(id, x2, y2,0,1) If ( GetPixelCount(x1, y1, x2, y2, 0xffffff) > 10 ) { street := "flop" } return street } 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 } WinGetTitle(win) { WinGetTitle, title, ahk_id%win% return title } FoldStars(id) { PostClickStars(0.59,0.9241,id) ; Sleep, 20 ; PostStarsClickpot(416,478,id) } CallStars(id) { PostClickStars(0.7462,0.9241,id) } RaiseStars(id) { PostClickStars(0.8860,0.9241,id) } Fold2anyStars(id) { PostClickStars(0.0158,0.6467,id) } fold: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=PokerStarsTableFrameClass { if suspendforchat { ; If ActOnActiveTable if IsMouseInChat(id) { ControlGetFocus, ctrl, ahk_id%id% ControlSend,%ctrl% , %fold%, ahk_id%id% } else FoldStars(id) } else FoldStars(id) } else { ;ControlGetFocus,ctrl,ahk_id%id% ;ControlSend,%ctrl%,%fold%,ahk_id%id% send {%fold%} } sendmode input return call: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=PokerStarsTableFrameClass { if suspendforchat { ; If ActOnActiveTable if IsMouseInChat(id) { ControlGetFocus, ctrl, ahk_id%id% ControlSend,%ctrl% , %call%, ahk_id%id% } else callStars(id) } else callStars(id) } else { ;ControlGetFocus,ctrl,ahk_id%id% ;ControlSend,%ctrl%,%call%,ahk_id%id% send {%call%} } sendmode input return raise: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=PokerStarsTableFrameClass { if suspendforchat { ; If ActOnActiveTable if IsMouseInChat(id) { ControlGetFocus, ctrl, ahk_id%id% ControlSend,%ctrl% , %raise%, ahk_id%id% } else raiseStars(id) } else raiseStars(id) } else { ;ControlGetFocus,ctrl,ahk_id%id% ;ControlSend,%ctrl%,%raise%,ahk_id%id% send {%raise%} } sendmode input return fold2any: sendmode event If ActOnActiveTable WinGet, Id, ID, A else MousegetPos,,,ID wingetclass,class,ahk_id%id% if class=PokerStarsTableFrameClass { if suspendforchat { ; If ActOnActiveTable if IsMouseInChat(id) { ControlGetFocus, ctrl, ahk_id%id% ControlSend,%ctrl% , %fold2any%, ahk_id%id% } else fold2anyStars(id) } else fold2anyStars(id) } else { ;ControlGetFocus,ctrl,ahk_id%id% ;ControlSend,%ctrl%,%fold2any%,ahk_id%id% send {%fold2any%} } sendmode input return pot1: If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id 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 raisestars(id) return pot2: If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id 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 raisestars(id) return pot3: If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id 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 raisestars(id) return alt1: If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id if sb1 sb:="sb" else sb:="" AlterAmount(id,"up", incr1, sb) return alt2: If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id if sb2 sb:="sb" else sb:="" AlterAmount(id,"down", incr2, sb) return alt3: If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id if sb3 sb:="sb" else sb:="" AlterAmount(id,"up", incr3, sb) return alt4: If ActOnActiveTable WinGet, id, id, A else MousegetPos,,,id if sb4 sb:="sb" else sb:="" AlterAmount(id,"down", incr4, sb) return ;----------------------------------------------------------------------------------------------------- BetPot: GroupAdd, StarsTables, ahk_class PokerStarsTableFrameClass ,,, PokerStars Lobby if autopot { isbetboxnew() } return ;----------------------------------------------------------------------------------------------------- BuildGui: Gui, color, white Gui, add, tab, h490 w290, General|Time|Annoyances|Table moving|BetPot|Table hotkeys|Global hotkeys Gui, Tab, General Gui, Add, Radio, x26 y50 w180 h20 Checked%ClassicTheme% vClassicTheme, Classic Theme Gui, Add, Radio, x26 y70 w180 h20 Checked%HyperSimpleTheme% vHyperSimpleTheme, HyperSimple Theme Gui, Add, Radio, x26 y90 w180 h20 Checked%BlackTheme% vBlackTheme, Black Theme Gui, Add, Radio, x26 y110 w180 h20 Checked%SlickTheme% vSlickTheme, Slick Theme Gui, add, text, y145 x25, Highlight table Gui, add, Checkbox, y145 x100 Checked%Highlight% VHighlight Gui, Add, Radio, x126 y140 w120 h15 Checked%highlightactive% vhighlightactive, Active Gui, Add, Radio, x126 y155 w120 h15 Checked%highlighthero% vhighlighthero, With action on hero Gui, add, text, y185 x25, Move mouse to action buttons Gui, add, Checkbox, y185 x230 Checked%MoveMouse% VMoveMouse Gui, add, text, y205 x65, Move mouse from nonstars app Gui, add, Checkbox, y205 x230 Checked%stealfocus% Vstealfocus Gui, add, text, y235 x25, Suspend table hotkeys for chat/notes area Gui, add, Checkbox, y235 x230 Checked%suspendforchat% Vsuspendforchat Gui, add, text, y255 x25, Suspend all hotkeys for chat/notes area Gui, add, Checkbox, y255 x230 Checked%suspendforchatall% Vsuspendforchatall 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 x230 Checked%activatetableundermouse% Vactivatetableundermouse Gui, Add, Text, x26 y345 ,Limit total number of tables to Gui, Add, Edit, x170 y342 w30 h20 vtotalnumber, %totalnumber% Gui, add, Checkbox, y345 x230 Checked%limit% Vlimit Gui, Add, Button, x75 y395 w55 h20 gSave,Submit Gui, Add, Button, x135 y395 w55 h20 gCancel,Cancel Gui, Tab, Global hotkeys Gui, Add, Text, x25 y105 ,Find table needing action Gui, Add, Edit, x220 y102 w50 h20 vfindtabletoact, %findtabletoact% Gui, Add, Text, x25 y125 ,Activate next table Gui, Add, Edit, x220 y122 w50 h20 vActivateBottomWindow, %ActivateBottomWindow% Gui, Add, Text, x25 y155 ,Close all tables with hero not in a hand Gui, Add, Edit, x220 y152 w50 h20 vCloseAllWithNoAction, %CloseAllWithNoAction% Gui, Add, Text, x25 y55 ,Suspend all hotkeys Gui, Add, Edit, x220 y52 w50 h20 vsuspend, %suspend% Gui, Add, Text, x25 y75 ,Pause/unpause Gui, Add, Edit, x220 y72 w50 h20 vTogglePause, %TogglePause% Gui, Add, Text, x25 y185 ,Cashier Gui, Add, Edit, x220 y182 w50 h20 vCashier, %Cashier% Gui, Add, Text, x25 y225 ,Custom layout 1 Gui, Add, Edit, x220 y222 w50 h20 vlayout1, %layout1% Gui, Add, Text, x25 y245 ,Custom layout 2 Gui, Add, Edit, x220 y242 w50 h20 vlayout2, %layout2% Gui, Add, Text, x25 y265 ,Custom layout 3 Gui, Add, Edit, x220 y262 w50 h20 vlayout3, %layout3% Gui, Add, Text, x25 y295 ,Join/unjoin Waitlist from lobby Gui, Add, Edit, x220 y292 w50 h20 vJoinWaitlistlobby, %JoinWaitlistlobby% Gui, Add, Text, x25 y315 ,Join Gui, Add, Edit, x50 y312 w20 h20 vwaitlists, %waitlists% Gui, Add, Text, x70 y315 ,waitlists counting from selected Gui, Add, Edit, x220 y312 w50 h20 vJoinWaitlistlobbyGroup, %JoinWaitlistlobbyGroup% Gui, Add, Button, x75 y415 w55 h20 gSave,Submit Gui, Add, Button, x135 y415 w55 h20 gCancel,Cancel Gui, Tab, Table moving Gui, add, text, y55 x25, Move new table Gui, add, Checkbox, y55 x120 Checked%move% Vmove Gui, add, text, y75 x35, to position Gui, Add, Text, x25 y95 w120 h20 , x Gui, Add, Edit, x50 y95 w50 h20 vxpos, %xpos% Gui, Add, Text, x25 y115 ,y Gui, Add, Edit, x50 y115 w50 h20 vypos, %ypos% Gui, add, Checkbox, y145 x180 Checked%automoveback% Vautomoveback Gui, add, text, y145 x25,Move table back automatically Gui, Add, Text, x25 y165 ,Move table back manually Gui, Add, Edit, x180 y162 w50 h20 vmovebackByKey, %movebackByKey% Gui, Add, Button, x75 y315 w55 h20 gSave,Submit Gui, Add, Button, x135 y315 w55 h20 gCancel,Cancel Gui, Tab, Annoyances Gui, add, Checkbox, y55 x220 Checked%Autopost% VAutopost Gui, add, text, y55 x25,Auto post blinds Gui, add, Checkbox, y75 x220 Checked%Waitbb% VWaitbb Gui, add, text, y75 x25,Uncheck wait for big blind (fast tables) ;Gui, add, Checkbox, y95 x220 Checked%clickWaitbb% VclickWaitbb ;Gui, add, text, y95 x25,Press wait for big blind (nonfast tables) Gui, add, Checkbox, y120 x220 Checked%CheckWhenFree% VCheckWhenFree Gui, add, text, y120 x25,Never fold for free Gui, add, Checkbox, y160 x90 Checked%Buyin% VBuyin Gui, add, text, y160 x25,Auto Buy-in Gui, Add, Radio, x120 y150 w100 h20 Checked%max% vmax, Maximum Gui, Add, Radio, x120 y170 w120 h20 Checked%remembered% vremembered, Remembered/default Gui, Add, Radio, x120 y190 w20 h20 Checked%xbb% vxbb Gui, Add, Edit, x140 y190 w30 h20 vbbmultiplier, %bbmultiplier% Gui, Add, Text, x170 y193,BB Gui, add, Checkbox, y220 x190 Checked%TakeSeat% VTakeSeat Gui, add, text, y220 x25,Auto Take Seat (from waiting list) Gui, add, Checkbox, y240 x190 Checked%AutoReservedSeat% VAutoReservedSeat Gui, add, text, y240 x55,Auto take reserved seat Gui, add, Checkbox, y265 x190 Checked%autoTakeSeat% VautoTakeSeat Gui, add, text, y265 x25,Auto Seat on new table Gui, add, Checkbox, y290 x190 Checked%leavetable% Vleavetable Gui, add, text, y290 x25,Auto leaving table confirmation Gui, add, Checkbox, y320 x250 Checked%closeOKwindow% VcloseOKwindow Gui, add, text, y320 x25,Close PokerStars windows with just OK button Gui, Add, Button, x75 y365 w55 h20 gSave,Submit Gui, Add, Button, x135 y365 w55 h20 gCancel,Cancel Gui, Tab, Time Gui, add, Checkbox, y50 x220 Checked%ClickImBack% VClickImBack Gui, add, text, y50 x25,Click Im Back automatically Gui, Add, Text, x25 y70 ,Toggle Click Im Back Gui, Add, Edit, x220 y67 w50 h20 vToggleImBack, %ToggleImBack% Gui, add, Checkbox, y100 x180 Checked%Timebank% VTimebank Gui, add, text, y100 x25,Click Timebank automatically Gui, add, Text, w220 y115 x25, Time delay for pressing Time button Gui, add, DropDownList, w40 y107 x220 vInterval1, %ddlist1% Gui, Add, Text, x25 y150 ,Sitout on all tables Gui, Add, Edit, x220 y147 w50 h20 vSitOutNextAll, %SitOutNextAll% Gui, Add, Text, x25 y175 ,Remove sitout on all tables Gui, Add, Edit, x220 y172 w50 h20 vRemoveSitout, %RemoveSitout% Gui, Add, Text, x25 y220 ,Join waiting list on all tables Gui, Add, Edit, x220 y217 w50 h20 vjoinwaitlist, %joinwaitlist% Gui, Add, Text, x25 y245 ,Unjoin waiting list on all tables Gui, Add, Edit, x220 y242 w50 h20 vunjoinwaitlist, %unjoinwaitlist% Gui, Add, Text, x25 y275 ,Uncheck auto post blinds Gui, Add, Text, x25 y290 ,and press Sit out next blind on all tables Gui, Add, Edit, x220 y280 w50 h20 vUncheckAutopostAll, %UncheckAutopostAll% Gui, Add, Button, x75 y415 w55 h20 gSave,Submit Gui, Add, Button, x135 y415 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, %ddlist% 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, %ddlist% 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, %ddlist% 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, %ddlist% 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 y410 ,Attempts to read Pot amount from screen Gui, Add, Edit, x230 y407 w25 h20 vattempts, %attempts% Gui, Add, Text, x15 y440 ,* Pot percent Gui, Add, Button, x75 y465 w55 h20 gSave,Submit Gui, Add, Button, x135 y465 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, Button, x75 y315 w55 h20 gSave,Submit Gui, Add, Button, x135 y315 w55 h20 gCancel,Cancel gosub,getini Gui, show, w306, %thisahk% Return ;----------------------------------------------------------------------------------------------------- GetIni: IfNotExist, %thisahk%.ini gosub, CreateIni IniRead, ClassicTheme,%thisahk%.ini, Options, ClassicTheme,0 IniRead, HyperSimpleTheme,%thisahk%.ini, Options, HyperSimpleTheme,0 IniRead, SlickTheme,%thisahk%.ini, Options, SlickTheme,0 IniRead, BlackTheme,%thisahk%.ini, Options, BlackTheme,0 IniRead, Highlight, %thisahk%.ini, Settings, Highlight, 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, suspendforchat, %thisahk%.ini, Settings, suspendforchat, 0 IniRead, suspendforchatall, %thisahk%.ini, Settings, suspendforchatall, 0 IniRead, ActOnActiveTable, %thisahk%.ini, Options, ActOnActiveTable, 0 IniRead, sendundermouse, %thisahk%.ini, Options, sendundermouse, 0 IniRead, activatetableundermouse, %thisahk%.ini, Settings, activatetableundermouse, 0 IniRead, totalnumber, %thisahk%.ini, Variables, totalnumber, 0 IniRead, limit, %thisahk%.ini, Settings, limit, 0 IniRead, ActivateBottomWindow, %thisahk%.ini, Hotkeys, ActivateBottomWindow,%A_Space% if ActivateBottomWindow Hotkey, %ActivateBottomWindow%,ActivateBottomWindow IniRead, findtabletoact, %thisahk%.ini, Hotkeys, findtabletoact,%A_Space% if findtabletoact Hotkey, %findtabletoact%,findtabletoact 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, CloseAllWithNoAction, %thisahk%.ini, Hotkeys, CloseAllWithNoAction,%A_Space% if CloseAllWithNoAction Hotkey, %CloseAllWithNoAction%,CloseAllWithNoAction IniRead, Cashier, %thisahk%.ini, Hotkeys, Cashier,%A_Space% if Cashier Hotkey, %Cashier%,Cashier 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, JoinWaitlistlobby, %thisahk%.ini, Hotkeys, JoinWaitlistlobby,%A_Space% if JoinWaitlistlobby Hotkey, %JoinWaitlistlobby%,JoinWaitlistlobby IniRead, JoinWaitlistlobbyGroup, %thisahk%.ini, Hotkeys, JoinWaitlistlobbyGroup,%A_Space% if JoinWaitlistlobbyGroup Hotkey, %JoinWaitlistlobbyGroup%,JoinWaitlistlobbyGroup IniRead, waitlists, %thisahk%.ini, Settings, waitlists, 0 IniRead, ClickImBack, %thisahk%.ini, Settings, ClickImBack, 0 IniRead, Toggleimback, %thisahk%.ini, Hotkeys, Toggleimback,%A_Space% IniRead, TakeSeat, %thisahk%.ini, Settings, TakeSeat, 0 IniRead, autoTakeSeat, %thisahk%.ini, Settings, autoTakeSeat, 0 IniRead, AutoReservedSeat, %thisahk%.ini, Settings, AutoReservedSeat, 0 IniRead, Timebank, %thisahk%.ini, Settings, Timebank, 0 IniRead, Interval1, %thisahk%.ini, Settings, Interval1 StringReplace, ddlist1, ddlist1, %interval1%, %Interval1%| GuiControl, , Interval1, |%ddlist1% StringReplace, ddlist1, ddlist1, %interval1%|, %Interval1% IniRead, Autopost, %thisahk%.ini, Settings, Autopost, 0 IniRead, Waitbb, %thisahk%.ini, Settings, Waitbb, 0 IniRead, clickWaitbb, %thisahk%.ini, Settings, clickWaitbb, 0 IniRead, CheckWhenFree, %thisahk%.ini, Settings, CheckWhenFree, 0 IniRead, checkbb, %thisahk%.ini, Settings, checkbb, 0 IniRead, uncheckbb, %thisahk%.ini, Settings, uncheckbb, 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, SitOutNextAll, %thisahk%.ini, Hotkeys, SitOutNextAll,%A_Space% IniRead, RemoveSitout, %thisahk%.ini, Hotkeys, RemoveSitout,%A_Space% IniRead, joinwaitlist, %thisahk%.ini, Hotkeys, joinwaitlist,%A_Space% IniRead, unjoinwaitlist, %thisahk%.ini, Hotkeys, unjoinwaitlist,%A_Space% IniRead, UncheckAutopostAll, %thisahk%.ini, Hotkeys, UncheckAutopostAll,%A_Space% if SitOutNextAll Hotkey, %SitOutNextAll%,SitOutNextAll if RemoveSitout Hotkey, %RemoveSitout%,RemoveSitout if joinwaitlist Hotkey, %joinwaitlist%,joinwaitlist if Unjoinwaitlist Hotkey, %Unjoinwaitlist%,Unjoinwaitlist if UncheckAutopostAll Hotkey, %UncheckAutopostAll%,UncheckAutopostAll If Toggleimback { HotKey, IfWinActive Hotkey, %Toggleimback%, Toggleimback } IniRead, leavetable, %thisahk%.ini, Settings, leavetable,0 IniRead, move, %thisahk%.ini, Settings, move, 0 IniRead, automoveback, %thisahk%.ini, Settings, automoveback, 0 IniRead, movebackByKey, %thisahk%.ini, Hotkeys, movebackByKey,%A_Space% IniRead, ypos, %thisahk%.ini, Variables, ypos,0 IniRead, xpos, %thisahk%.ini, Variables, xpos,0 if MoveBackByKey Hotkey, %MoveBackByKey%,MoveBackByKey IniRead, OpenDef, %thisahk%.ini, BetPotSettings, OpenDef StringReplace, ddlist, ddlist, %OpenDef%, %OpenDef%| GuiControl, , OpenDef, |%ddlist% StringReplace, ddlist, ddlist, %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, ddlist, ddlist, %Open1%, %Open1%| GuiControl, , Open1, |%ddlist% StringReplace, ddlist, ddlist, %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, ahk_class PokerStarsTableFrameClass HotKey, IfWinActive Hotkey, %pot1%,pot1 } IniRead, Open2, %thisahk%.ini, BetPotSettings, Open2 StringReplace, ddlist, ddlist, %Open2%, %Open2%| GuiControl, , Open2, |%ddlist% StringReplace, ddlist, ddlist, %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, ahk_class PokerStarsTableFrameClass HotKey, IfWinActive Hotkey, %pot2%,pot2 } IniRead, Open3, %thisahk%.ini, BetPotSettings, Open3 StringReplace, ddlist, ddlist, %Open3%, %Open3%| GuiControl, , Open3, |%ddlist% StringReplace, ddlist, ddlist, %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, ahk_class PokerStarsTableFrameClass 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 PokerStarsTableFrameClass 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 PokerStarsTableFrameClass 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 PokerStarsTableFrameClass 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 PokerStarsTableFrameClass Hotkey, %alt4%,alt4 } IniRead, autopot, %thisahk%.ini, BetPotSettings, autopot, 0 IniRead, autobet, %thisahk%.ini, BetPotSettings, autobet, 0 IniRead, attempts, %thisahk%.ini, Variables, attempts, 0 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% if fold { ;HotKey, IfWinActive, ahk_class PokerStarsTableFrameClass HotKey, IfWinActive Hotkey, %fold%,fold } if call { ;HotKey, IfWinActive, ahk_class PokerStarsTableFrameClass HotKey, IfWinActive Hotkey, %call%,call } if raise { ;HotKey, IfWinActive, ahk_class PokerStarsTableFrameClass HotKey, IfWinActive Hotkey, %raise%,raise } if fold2any { ;HotKey, IfWinActive, ahk_class PokerStarsTableFrameClass HotKey, IfWinActive Hotkey, %fold2any%,fold2any } Return ;----------------------------------------------------------------------------------------------------- MakeIni: If ClassicTheme IniWrite, %ClassicTheme%, %thisahk%.ini, Options, ClassicTheme If HyperSimpleTheme IniWrite, %HyperSimpleTheme%, %thisahk%.ini, Options, HyperSimpleTheme If SlickTheme IniWrite, %SlickTheme%, %thisahk%.ini, Options, SlickTheme If BlackTheme IniWrite, %BlackTheme%, %thisahk%.ini, Options, BlackTheme IniWrite, %Highlight%, %thisahk%.ini, Settings, Highlight 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, %suspendforchat%, %thisahk%.ini, Settings, suspendforchat IniWrite, %suspendforchatall%, %thisahk%.ini, Settings, suspendforchatall if ActOnActiveTable IniWrite, %ActOnActiveTable%, %thisahk%.ini, Options, ActOnActiveTable if sendundermouse IniWrite, %sendundermouse%, %thisahk%.ini, Options, sendundermouse IniWrite, %activatetableundermouse%, %thisahk%.ini, Settings, activatetableundermouse IniWrite, %totalnumber%, %thisahk%.ini, Variables, totalnumber IniWrite, %limit%, %thisahk%.ini, Settings, limit if ActivateBottomWindow IniWrite, %ActivateBottomWindow%, %thisahk%.ini, Hotkeys, ActivateBottomWindow if findtabletoact IniWrite, %findtabletoact%, %thisahk%.ini, Hotkeys, findtabletoact if suspend IniWrite, %suspend%, %thisahk%.ini, Hotkeys, suspend if TogglePause IniWrite, %TogglePause%, %thisahk%.ini, Hotkeys, TogglePause if CloseAllWithNoAction IniWrite, %CloseAllWithNoAction%, %thisahk%.ini, Hotkeys, CloseAllWithNoAction if Cashier IniWrite, %Cashier%, %thisahk%.ini, Hotkeys, Cashier 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 JoinWaitlistlobby IniWrite, %JoinWaitlistlobby%, %thisahk%.ini, Hotkeys, JoinWaitlistlobby if JoinWaitlistlobbyGroup IniWrite, %JoinWaitlistlobbyGroup%, %thisahk%.ini, Hotkeys, JoinWaitlistlobbyGroup IniWrite, %waitlists%, %thisahk%.ini, Settings, waitlists IniWrite, %ClickImBack%, %thisahk%.ini, Settings, ClickImBack IniWrite, %TakeSeat%, %thisahk%.ini, Settings, TakeSeat IniWrite, %autoTakeSeat%, %thisahk%.ini, Settings, autoTakeSeat IniWrite, %AutoReservedSeat%, %thisahk%.ini, Settings, AutoReservedSeat IniWrite, %Timebank%, %thisahk%.ini, Settings, Timebank IniWrite, %Interval1%, %thisahk%.ini, Settings, Interval1 IniWrite, %Autopost%, %thisahk%.ini, Settings, Autopost IniWrite, %Waitbb%, %thisahk%.ini, Settings, Waitbb IniWrite, %clickWaitbb%, %thisahk%.ini, Settings, clickWaitbb IniWrite, %closeOKwindow%, %thisahk%.ini, Settings, closeOKwindow IniWrite, %CheckWhenFree%, %thisahk%.ini, Settings, CheckWhenFree 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 if SitOutNextAll IniWrite, %SitOutNextAll%, %thisahk%.ini, Hotkeys, SitOutNextAll if RemoveSitout IniWrite, %RemoveSitout%, %thisahk%.ini, Hotkeys, RemoveSitout if joinwaitlist IniWrite, %joinwaitlist%, %thisahk%.ini, Hotkeys, joinwaitlist if Unjoinwaitlist IniWrite, %unjoinwaitlist%, %thisahk%.ini, Hotkeys, unjoinwaitlist if UncheckAutopostAll IniWrite, %UncheckAutopostAll%, %thisahk%.ini, Hotkeys, UncheckAutopostAll if Toggleimback IniWrite, %Toggleimback%, %thisahk%.ini, Hotkeys, Toggleimback IniWrite, %leavetable%, %thisahk%.ini, Settings, leavetable IniWrite, %move%, %thisahk%.ini, Settings, move IniWrite, %automoveback%, %thisahk%.ini, Settings, automoveback if moveback IniWrite, %moveback%, %thisahk%.ini, Hotkeys, moveback if MoveBackByKey IniWrite, %MoveBackByKey%, %thisahk%.ini, Hotkeys, MoveBackByKey IniWrite, %ypos%, %thisahk%.ini, Variables, ypos IniWrite, %xpos%, %thisahk%.ini, Variables, xpos 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, Variables, attempts 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 Return ;----------------------------------------------------------------------------------------------------- CreateIni: HyperSimpleTheme:=1 ClassicTheme:=0 SlickTheme:=0 BlackTheme:=0 Highlight:=0 highlightactive:=1 highlighthero:=0 MoveMouse:=0 stealfocus:=1 ActOnActiveTable:=1 sendundermouse:=0 activatetableundermouse:=0 suspendforchat:=0 suspendforchatall:=0 limit:=0 totalnumber:=24 waitlists:=5 TakeSeat:=0 autoTakeSeat:=0 AutoReservedSeat:=0 Timebank:=0 Interval1:=1 Autopost:=0 Waitbb:=0 clickWaitbb:=0 closeOKwindow:=1 CheckWhenFree:=1 Buyin:=0 remembered:=1 bbmultiplier:=50 ClickImBack:=0 leavetable:=0 move:=0 automoveback:=0 xpos:=100 ypos:=100 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:=999 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 { suspended=Off } else { suspended=On } Gui, 13:Add, Text,,Suspend: %suspended% Gui, 13:+ToolWindow Gui, 13:Show, w150 h20 Sleep, 1500 Gui, 13:Destroy return ;----------------------------------------------------------------------------------------------------- Edit: edit return ;----------------------------------------------------------------------------------------------------- donation: WinMenuSelectItem, PokerStars Lobby,, Requests, Transfer Funds... WinWait, Transfer Funds ahk_class #32770, , 10 WinGet, tf, id ControlFocus, Edit2, ahk_id%tf% ControlSetText, Edit2, Max1mums ControlFocus, Edit1, ahk_id%tf% Sleep, -1 ControlSetText, Edit1, GuiControl, Disable, Donate return ;----------------------------------------------------------------------------------------------------- exitSub: exitApp return ;-----------------------------------------------------------------------------------------------------
Put StarsPics folder to the folder with ahk file.
Don't forget to choose correct table theme on General tab.
BetPot function won't be efficient with aero theme on, easiest way to disable aero theme just for PokerStars: rightclick PokerStarsUpdate.exe, choose Properties - Compatibility - Disable desktop composition.
03-02-2010
, 08:17 AM
Join Date: Aug 2009
Posts: 1,700
javirap,this function presses call button instead of wait for bb, just can't let it be this way. I've just commented lines 2350 and 2351, you can uncomment them manually if you still want to use that function.
03-02-2010
, 10:05 AM
Join Date: Oct 2009
Posts: 50
it is interesting how tableninja manages to work out correctly "wait for bb" for normal tables, maybe because it's not ahk script :/
03-02-2010
, 10:56 AM
Join Date: Aug 2009
Posts: 1,700
Why are you so sure that tableninja is not written on AHK? Programming language doesn't matter here, i need to find correct way to differentiate call button from wait for bb button, betting slider is not visible for wait bb button but it is not visible in allin situations for call button too so there must be some other thing to check, maybe check if cards were dealt to hero or so, make your suggestions.
Feedback is used for internal purposes. LEARN MORE
Powered by:
Hand2Note
Copyright ©2008-2022, Hand2Note Interactive LTD