A simple code that keeps the alt-key down, unless you press a key.
Press Alt GR for activating (or lctrl + ralt) , lalt for deactivating
Here is an already compiled version of the script with the FrozenThron Icon:
Frozen Throne Alt
Here is the code: Edited 3 Times.
onexit exit #InstallKeybdHook #usehook on #MaxThreads 20 #SingleInstance SetBatchLines, -1 SetKeyDelay , -1, 0 Thread, NoTimers Thread, Interrupt , -1, -1 regread, war, HKEY_CURRENT_USER, Software\Blizzard Entertainment\Warcraft III, ProgramX menu, tray, Icon, %War%, 1, 1 run, %War%,,, pid process, wait, %pid% process, waitclose, %pid% process, wait, war3.exe sleep, 10000 process, exist, war3.exe war3_pid:=errorlevel settimer, timer_Warcraft, 1500 return timer_Warcraft: process, exist, %war3_pid% if !errorlevel exitapp ifWinActive, Warcraft III Suspend, Off else Suspend, On return !a::send, {alt up}{a}{alt down} !b::send, {alt up}{b}{alt down} !c::send, {alt up}{c}{alt down} !d::send, {alt up}{d}{alt down} !e::send, {alt up}{e}{alt down} !f::send, {alt up}{f}{alt down} !g::send, {alt up}{g}{alt down} !h::send, {alt up}{h}{alt down} !i::send, {alt up}{i}{alt down} !j::send, {alt up}{j}{alt down} !k::send, {alt up}{k}{alt down} !l::send, {alt up}{l}{alt down} !m::send, {alt up}{m}{alt down} !n::send, {alt up}{n}{alt down} !o::send, {alt up}{o}{alt down} !p::send, {alt up}{p}{alt down} !q::send, {alt up}{q}{alt down} !r::send, {alt up}{r}{alt down} !s::send, {alt up}{s}{alt down} !t::send, {alt up}{t}{alt down} !u::send, {alt up}{u}{alt down} !v::send, {alt up}{v}{alt down} !w::send, {alt up}{w}{alt down} !x::send, {alt up}{x}{alt down} !y::send, {alt up}{y}{alt down} !z::send, {alt up}{z}{alt down} !.::send, {alt up}{.}{alt down} !,::send, {alt up}{,}{alt down} !-::send, {alt up}{-}{alt down} !<::send, {alt up}{<}{alt down} !\::send, {alt up}{\}{alt down} !+::send, {alt up}{+}{alt down} !1::send, {alt up}{1}{alt down} !2::send, {alt up}{2}{alt down} !3::send, {alt up}{3}{alt down} !4::send, {alt up}{4}{alt down} !5::send, {alt up}{5}{alt down} !6::send, {alt up}{6}{alt down} !7::send, {alt up}{7}{alt down} !8::send, {alt up}{8}{alt down} !9::send, {alt up}{9}{alt down} !0::send, {alt up}{0}{alt down} !F1::send, {alt up}{F1}{alt down} !F2::send, {alt up}{F2}{alt down} !F3::send, {alt up}{F3}{alt down} !F4:: GetKeyState, lal, lalt, P if lal=U { send {alt up}{F4 down} keywait F4 send {F4 up}{alt down} } else send {alt down}{F4} return !F5::send, {alt up}{F5}{alt down} !F6::send, {alt up}{F6}{alt down} !F7::send, {alt up}{F7}{alt down} !F8::send, {alt up}{F8}{alt down} !F9::send, {alt up}{F9}{alt down} !F10::send, {alt up}{F10}{alt down} !F11::send, {alt up}{F11}{alt down} !F12::send, {alt up}{F12}{alt down} !Numpad1::send, {alt up}{Numpad1}{alt down} !Numpad2::send, {alt up}{Numpad2}{alt down} !Numpad3::send, {alt up}{Numpad3}{alt down} !Numpad4::send, {alt up}{Numpad4}{alt down} !Numpad5::send, {alt up}{Numpad5}{alt down} !Numpad6::send, {alt up}{Numpad6}{alt down} !Numpad7::send, {alt up}{Numpad7}{alt down} !Numpad8::send, {alt up}{Numpad8}{alt down} !Numpad9::send, {alt up}{Numpad9}{alt down} !Numpad0::send, {alt up}{Numpad0}{alt down} !Numpadenter:: send, {alt up}{Numpadenter down} keywait enter send {Numpadenter up}{alt down} return !Numpadadd::send, {alt up}{Numpadadd}{alt down} !Numpadsub::send, {alt up}{Numpadsub}{alt down} !Numpaddot::send, {alt up}{Numpaddot}{alt down} !lbutton:: GetKeyState, lal, lalt, P if lal=U { send {alt up}{lbutton down} keywait lbutton send {lbutton up}{alt down} } else send {alt down}{lbutton} return !rbutton:: send {alt up}{rbutton down} keywait rbutton send {rbutton up}{alt down} return !mbutton:: send {alt up}{mbutton down} keywait mbutton send {mbutton up}{alt down} return !xbutton1:: send {alt up}{xbutton1 down} keywait xbutton1 send {xbutton1 up}{alt down} return !xbutton2:: send, {alt up}{xbutton2 down} keywait xbutton2 send {xbutton2 up}{alt down} return !enter:: suspend, on send, {alt up}{enter} return enter:: suspend, off send, {enter}{alt down} return !shift:: send, {alt up}{shift down} keywait shift send {shift up}{alt down} return !ctrl:: send, {alt up}{ctrl down} keywait ctrl send {ctrl up}{alt down} return !del:: send, {alt up}{del} keywait del send {alt down} return !bs:: send, {alt up}{bs down} keywait bs send {bs up}{alt down} return !esc:: send, {alt up}{esc down} keywait esc send {esc up}{alt down} return !space:: send, {alt up}{space down} keywait space send {space up}{alt down} return !tab:: GetKeyState, lal, lalt, P if lal=U { send {alt up}{tab down} keywait tab send {tab up}{alt down} } else send {alt down}{tab} return !up:: send, {alt up}{up down} keywait up send {up up}{alt down} return !down:: send, {alt up}{down down} keywait down send {down up}{alt down} return !left:: send, {alt up}{left down} keywait left send {left up}{alt down} return !right:: send, {alt up}{right down} keywait right send {right up}{alt down} return lctrl & ralt:: Suspend , off keywait ralt send {alt down} return exit: send {alt up} exitapp return
This way it works. I think this don't consume too much PC resources, do this, coders?