Quote:
#SingleInstance force ; bypasses the dialog box saying the script is already running
SetKeyDelay, 0 ;speeds up the sending of the keystrokes, may cause problems down the road though?
GamePath = c:\world of warcraft\wow.exe
TitleofGameWindow = World of Warcraft
IfWinNotExist, %TitleofGameWindow%
{
InputBox, UserInput, WoW Copies, How many copies of WoW do you want to start?., ,
if ErrorLevel
{
}
else
Loop, %UserInput%
{
run %GamePath%
}
}
Toon1ModDown = {ctrl down}{shift down}
Toon2ModDown = {ctrl down}{alt down}
Toon3ModDown = {alt down}{shift down}
Toon4ModDown = {ctrl down}{alt down}{shift down}
Toon5ModDown = {ctrl down}
Toon1ModUp = {ctrl up}{shift up}
Toon2ModUp = {ctrl up}{alt up}
Toon3ModUp = {alt up}{shift up}
Toon4ModUp = {ctrl up}{alt up}{shift up}
Toon5ModUp = {ctrl up}
1Key = ]
2Key = [
WinGet, wowid, list, %TitleofGameWindow%
WinGet, wowpid1, pid, ahk_id %wowid1%
WinGet, wowpid2, pid, ahk_id %wowid2%
WinGet, wowpid3, pid, ahk_id %wowid3%
WinGet, wowpid4, pid, ahk_id %wowid4%
WinGet, wowpid5, pid, ahk_id %wowid5%
$1::
ActiveWindow := WinExist("A") ;gets the unique ID of the currently active window
if ActiveWindow = %wowid1%
{
ControlSend,,1, ahk_id %wowid1%
ControlSend,,%Toon2ModDown%%1Key%%Toon2ModUp%, ahk_id %wowid2%
ControlSend,,%Toon3ModDown%%1Key%%Toon3ModUp%, ahk_id %wowid3%
ControlSend,,%Toon4ModDown%%1Key%%Toon4ModUp%, ahk_id %wowid4%
ControlSend,,%Toon5ModDown%%1Key%%Toon5ModUp%, ahk_id %wowid5%
}
else if ActiveWindow = %wowid2%
{
ControlSend,,%Toon1ModDown%%1Key%%Toon1ModUp%, ahk_id %wowid1%
ControlSend,,1, ahk_id %wowid2%
ControlSend,,%Toon3ModDown%%1Key%%Toon3ModUp%, ahk_id %wowid3%
ControlSend,,%Toon4ModDown%%1Key%%Toon4ModUp%, ahk_id %wowid4%
ControlSend,,%Toon5ModDown%%1Key%%Toon5ModUp%, ahk_id %wowid5%
}
else if ActiveWindow = %wowid3%
{
ControlSend,,%Toon1ModDown%%1Key%%Toon1ModUp%, ahk_id %wowid1%
ControlSend,,%Toon2ModDown%%1Key%%Toon2ModUp%, ahk_id %wowid2%
ControlSend,,1, ahk_id %wowid3%
ControlSend,,%Toon4ModDown%%1Key%%Toon4ModUp%, ahk_id %wowid4%
ControlSend,,%Toon5ModDown%%1Key%%Toon5ModUp%, ahk_id %wowid5%
}
else if ActiveWindow = %wowid4%
{
ControlSend,,%Toon1ModDown%%1Key%%Toon1ModUp%, ahk_id %wowid1%
ControlSend,,%Toon2ModDown%%1Key%%Toon2ModUp%, ahk_id %wowid2%
ControlSend,,%Toon3ModDown%%1Key%%Toon3ModUp%, ahk_id %wowid3%
ControlSend,,1, ahk_id %wowid4%
ControlSend,,%Toon5ModDown%%1Key%%Toon5ModUp%, ahk_id %wowid5%
}
else if ActiveWindow = %wowid5%
{
ControlSend,,%Toon1ModDown%%1Key%%Toon1ModUp%, ahk_id %wowid1%
ControlSend,,%Toon2ModDown%%1Key%%Toon2ModUp%, ahk_id %wowid2%
ControlSend,,%Toon3ModDown%%1Key%%Toon3ModUp%, ahk_id %wowid3%
ControlSend,,%Toon4ModDown%%1Key%%Toon4ModUp%, ahk_id %wowid4%
ControlSend,,1, ahk_id %wowid5%
}
else
{
Send 1 ;still sends a 1 to any other window
}
Return
$2::
ActiveWindow := WinExist("A") ;gets the unique ID of the currently active window
if ActiveWindow = %wowid1%
{
ControlSend,,2, ahk_id %wowid1%
ControlSend,,%Toon2ModDown%%2Key%%Toon2ModUp%, ahk_id %wowid2%
ControlSend,,%Toon3ModDown%%2Key%%Toon3ModUp%, ahk_id %wowid3%
ControlSend,,%Toon4ModDown%%2Key%%Toon4ModUp%, ahk_id %wowid4%
ControlSend,,%Toon5ModDown%%2Key%%Toon5ModUp%, ahk_id %wowid5%
}
else if ActiveWindow = %wowid2%
{
ControlSend,,%Toon1ModDown%%2Key%%Toon1ModUp%, ahk_id %wowid1%
ControlSend,,2, ahk_id %wowid2%
ControlSend,,%Toon3ModDown%%2Key%%Toon3ModUp%, ahk_id %wowid3%
ControlSend,,%Toon4ModDown%%2Key%%Toon4ModUp%, ahk_id %wowid4%
ControlSend,,%Toon5ModDown%%2Key%%Toon5ModUp%, ahk_id %wowid5%
}
else if ActiveWindow = %wowid3%
{
ControlSend,,%Toon1ModDown%%2Key%%Toon1ModUp%, ahk_id %wowid1%
ControlSend,,%Toon2ModDown%%2Key%%Toon2ModUp%, ahk_id %wowid2%
ControlSend,,2, ahk_id %wowid3%
ControlSend,,%Toon4ModDown%%2Key%%Toon4ModUp%, ahk_id %wowid4%
ControlSend,,%Toon5ModDown%%2Key%%Toon5ModUp%, ahk_id %wowid5%
}
else if ActiveWindow = %wowid4%
{
ControlSend,,%Toon1ModDown%%2Key%%Toon1ModUp%, ahk_id %wowid1%
ControlSend,,%Toon2ModDown%%2Key%%Toon2ModUp%, ahk_id %wowid2%
ControlSend,,%Toon3ModDown%%2Key%%Toon3ModUp%, ahk_id %wowid3%
ControlSend,,2, ahk_id %wowid4%
ControlSend,,%Toon5ModDown%%2Key%%Toon5ModUp%, ahk_id %wowid5%
}
else if ActiveWindow = %wowid5%
{
ControlSend,,%Toon1ModDown%%2Key%%Toon1ModUp%, ahk_id %wowid1%
ControlSend,,%Toon2ModDown%%2Key%%Toon2ModUp%, ahk_id %wowid2%
ControlSend,,%Toon3ModDown%%2Key%%Toon3ModUp%, ahk_id %wowid3%
ControlSend,,%Toon4ModDown%%2Key%%Toon4ModUp%, ahk_id %wowid4%
ControlSend,,2, ahk_id %wowid5%
}
else
{
Send 2 ;sends a 2 to whatever window is active if not a wow window
}
Return