Jeg har lavet et AHK script til at organisere borde på Boss. Programmet virker kun til 1920:1200 opløsning, hvor det placerer 6 borde med mindst mulig overlap i fuldskærm. Lige nu er det skrevet til Fortune, men kan bruges til alle klienter i netværket, ved at modificerer én linje i koden. Jeg poster det her for at få feedback og gode idéer til forbedringer. Det kunne feks være nice hvis programmet kunne håndtere Gametime+ halløjet, men det er vist ret omstændigt at lave.
Kode. Installer AHK, kopier nedenstående kode til filnavn.ahk,
kør scriptet med AHK og tryk Alt+P. Når du er færdig med at spille så tryk Alt+P igen, for at få start-menuen frem igen.
----------------------------------------
pokerstate = 0
!p::
if pokerstate = 0
{
DetectHiddenWindows, on
WinSet,AlwaysOnTop,off,ahk_class Shell_TrayWnd
pokerstate = 1
}
else
{
DetectHiddenWindows, on
WinSet,AlwaysOnTop,off,ahk_class Shell_TrayWnd
pokerstate = 0
exit
}
WinGet, id, list,,, Program Manager
SearchFor = - Fortune Poker
numtables = 0
Loop, %id%
{
this_id := id%A_Index%
WinGetTitle, title, ahk_id %this_id%
if (InStr(title, SearchFor) <> 0)
{
numtables++
tabletitles%numtables% := title
}
}
SysGet, Mon, Monitor, 1
if (MonRight <> 1920 OR MonBottom <> 1200)
{
MsgBox Wrong Resolution
Exit
}
Tablewidth = 806
Tableheight = 626
xoverlap := (3*Tablewidth - 1920) / 2
yoverlap := 20
Pos1x := 2*(Tablewidth - xoverlap)
Pos1y := -22
Pos2x := 2*(Tablewidth - xoverlap)
Pos2y := Tableheight + Pos1y - yoverlap
Pos3x := Tablewidth - xoverlap
Pos3y := Pos1y
Pos4x := Tablewidth - xoverlap
Pos4y := Tableheight + Pos1y - yoverlap
Pos5x := 0
Pos5y := Pos1y
Pos6x := 0
Pos6y := Tableheight + Pos1y - yoverlap
Loop, %numtables%
{
title := tabletitles%A_Index%
WinMove, %title%, , Pos%A_Index%x, Pos%A_Index%y
}
--------------------------------
AHK Table Arranger til Boss
13-04-2008 20:08
#1|
0
13-04-2008 21:59
#2|
0
Du forhøjer chancen for at andre bidrager hvis du dokumenterer koden. Så kan man forstå scriptet, selvom man måske kun forstår 3/4 af koden.
Hvad gør <>? Dem husker jeg ikke umiddelbart at have læst noget om i API'en..
if (MonRight <> 1920 OR MonBottom <> 1200)
14-04-2008 07:16
#3|
0
SørenMatias OP
Min idé var at folk kunne prøve scriptet og skrive idéer her i tråden, ikke at de nødvenigvis skulle kode selv.
<> betyder "forskellig fra", i.e. modsatte af =.
14-04-2008 18:56
#4|
0
Aaah, jeg bruger konsekvent !=.
Anyway, overvej at tilføje følgende til starten af din kode:
SetWinDelay, 0
www.autohotkey.com/docs/commands/SetWinDelay.htm
Det betyder selvfølgelig ikke det store, når scriptet bare tiler bordene, men hvis du senere udvider scriptet, så kunne det godt komme til at betyde en del.
Du skal være logget ind for at kunne skrive et svar!