/* ====================================================== == Battlefield 2 Infantry Script == == by Alex S. == ====================================================== NOTE: The Script will work only with default controls and is only tested with version 1.41 of the game and Windows XP SP2 There is no quarantee that it will work perfectly on your machine. I have set it up so that it works perfectly on mine. Different pc's and pings play a big role on how the script will work Play around with the sleep times where needed to suit it for yourself. */ /* ====================================================== START OF SCRIPT ====================================================== */ #NoEnv #SingleInstance force #InstallKeybdHook #InstallMouseHook #Persistent SetBatchLines -1 CoordMode, Mouse, Screen ;If you changed the Pre-Canned Text Messages also change them here to display ;correct in the gui ;To Team precannedtxtmsg1 = what a noob team precannedtxtmsg2 = stop punishing for you own fault idiot ;To Squad precannedtxtmsg3 = spawn on me ;To All precannedtxtmsg4 = jumping once isnt bunnyhopping precannedtxtmsg5 = you suck for your rank.did you bought the acc on ebay? precannedtxtmsg6 = learn playing pub noob precannedtxtmsg7 = blame EA for putting jump in the game precannedtxtmsg8 = im not cheating noob learn playing precannedtxtmsg9 = bunnyhopping is allowed here so stfu ;Hotkeys are turned Off by default Hotkey,$C, Off Hotkey,$Space, Off Hotkey,$MButton, Off Hotkey,$LButton, Off Hotkey,$^LButton, Off Hotkey,$Up, Off Hotkey,$Down, Off Hotkey,$Left, Off Hotkey,$Right, Off Hotkey,$RAlt, Off Hotkey,$LAlt, Off Hotkey,$Numpad1, Off Hotkey,$Numpad2, Off Hotkey,$Numpad3, Off Hotkey,$Numpad4, Off Hotkey,$Numpad5, Off Hotkey,$Numpad6, Off Hotkey,$Numpad7, Off Hotkey,$Numpad8, Off Hotkey,$Numpad9, Off Hotkey,$], Off Hotkey,$[, Off Hotkey,$/, Off Hotkey,$^., Off Hotkey,$^+F4, Off Hotkey,$F10, Off Hotkey,$F11, Off Hotkey,$F12, Off Hotkey,$+., Off Hotkey,$+5, Off Hotkey,$f, Off Hotkey,$+f, Off Hotkey,$^f, Off Hotkey,$x, Off Hotkey,$+x, Off Hotkey,$^x, Off /* ====================================================== BF2ISOPTIONS.INI ====================================================== */ FileSetAttrib, +H, BF2ISOptions.ini IfNotExist, %A_WinDir%\System32\BF2ISOptions.ini { MsgBox, 48, File Not Found, BF2ISOptions.ini not found.`nDefault ini file will be created IniWrite, 1, %A_WinDir%\System32\BF2ISOptions.ini, Anti Recoil, RecoilV1 IniWrite, 3, %A_WinDir%\System32\BF2ISOptions.ini, Anti Recoil, RecoilV2 IniWrite, 1, %A_WinDir%\System32\BF2ISOptions.ini, Pixel Move, PixelV } /* ====================================================== GUI WINDOW & CUSTOM TRAY MENU ====================================================== */ programName = BF2IS programVersion = 2.2 HTKStatus1 = Hotkeys : Off HTKStatus2 = Hotkeys : On Menu, Tray, NoStandard ;A Menu, Tray, Tip, BF2 Infantry Script v%programVersion% `n%HTKStatus1% ;L Menu, Tray, Add, About, About ;E Menu, Tray, Add ;X Menu, Tray, Add, Reload ;P Menu, Tray, Add, Edit ;W Menu, Tray, Add ;N Menu, RunSub, Add, BattleField 2, BF2 ;S Menu, RunSub, Add, BattleField 2 Special Forces, BF2SF ;N Menu, Tray, Add, Run Game, :RunSub ;O Menu, Tray, Add ;O Menu, Tray, Add, Hide, Hide ;B Menu, Tray, Add, Show, Show ;S Menu, Tray, Disable, Show ;W Menu, Tray, Default, Show ;H Menu, Tray, Add ;O Menu, Tray, Add, Transparent ;R Menu, Tray, Add, Always On Top, Always_On_Top ;I Menu, Tray, Add ;P Menu, Tray, Add, Suspend ;C Menu, Tray, Add, Pause ;O Menu, Tray, Add ;D Menu, Tray, Add, Exit, Exit ;E Gui, 1: -MaximizeBox +Theme +ToolWindow -SysMenu +Redraw Gui, 1:Add, GroupBox, x4 y-3 w78 h26, Gui, 1:Add, Button,x85 y2 w50 h22 gOpt , Options Gui, 1:Add, Text, cRed vStatus gStatus x10 y6 w70 h15,%HTKStatus1% Gui, 1:Add, Button,x4 y27 w132 h24 gKeysnInstr, Keys and Instructions Gui, 1:Add, Button,x4 y54 w65 h22 gHide , Hide Gui, 1:Add, Button,x71 y54 w65 h22 gExit , Exit Gui, 1:Add, StatusBar,gStbr, SB_SetText("by Alex S.") SB_SetIcon("Shell32.dll",177) Gui, 1:Show,w140 h102, %programName% v%programVersion% return Stbr: SB_SetText("Pwned") Sleep,850 SB_SetText("by Alex S.") return Status: return KeysnInstr: if (!guiopen){ guiopen:=1 Gui, 2:+Owner1 -SysMenu +ToolWindow +Theme Gui, 2:Font, bold Gui, 2:Add, Text,x8 y8, MAIN SCRIPT : Gui, 2:Font, normal Gui, 2:Add, Text,x8, "Home" : Turns Hotkeys On/Off Gui, 2:Add, Text,x8, "ScrollLock" : Ends the Script Gui, 2:Add, Text,x8, "Pause" : Toggles Suspend On/Off (for ingame use) Gui, 2:Add, Text,x8 cBlack, "/" : Toggles PreCanned text messages On/Off%A_Space% Gui, 2:Font, underline Gui, 2:Add, Text, cRed gPrecDetails X+0, (click for details) Gui, 2:Font, normal Gui, 2:Add, Text,x8, "Right Alt" : Commander Spot Spam (continiously spots if holded down.also moves with mouse) Gui, 2:Font, bold Gui, 2:Add, Text,x8, WEAPON MACROS : Gui, 2:Font, normal Gui, 2:Add, Text,x8, "]" : Toggles Anti Recoil On/Off (See Options for settings) Gui, 2:Add, Text,x8, Anti Recoil Sets = "F10" : Switches to Set 1 "F11" : Switches to Set 2 "F12" Switches to rapid fire Gui, 2:Add, Text,x8, "[" : Toggles C4 Chucking On/Off Gui, 2:Add, Text,x8, "Middle Mouse Button" : C4 Chuck (c4 chuck needs to be enabled) Gui, 2:Add, Text,x8, "F" : Switches between Pistol and Rifle Gui, 2:Add, Text,x8, "X" : NadeSpam (Switches between Nades and Ammo Bag) Gui, 2:Add, Text,x8, "Shift + 5" : Throws Medic Bag and Switches back to gun Gui, 2:Add, Text,x8, "Arrow Keys" : Pixel Move moves the crosshair to the desired direction (Pixels customizable in Options) Gui, 2:Font, bold Gui, 2:Add, Text,x8, PLAYER MOVEMENT : Gui, 2:Font, normal Gui, 2:Add, Text,x8, "C" : Quick Prone,press again to stand up (also works as dolphin dive if you press it when jumping) Gui, 2:Add, Text,x8, "Left Alt" : Mid Air Wall Bounce (means : jump,change direction in mid air and then go to prone) Gui, 2:Add, Text,x8, "Spacebar" : Works like normal if pressed once.Holding it down will continiously hop (aka bunnyhopping) Gui, 2:Add, Text,x8, Gui, 2:Add, Button, x425 y374 vbtn w100 Default, Close Gui, 2:Add, GroupBox, x4 y0 w520 h370, Gui, 2:Show, w528 h400, Keys and Instructions return } else { Gui, 2:Submit Gui, 2:Destroy guiopen:=0 } return Opt: if (!guiopen2){ guiopen2:=1 Gui, 3:+Owner1 -SysMenu +ToolWindow +Theme Gui, 3:Font, bold Gui, 3:Add, Text,x6 y6 ,Anti Recoil Gui, 3:Add, Text,x84 y6 ,Pixel Move. Gui, 3:Add, GroupBox,x3 y-3 w75 h62, Gui, 3:Add, GroupBox,x81 y-3 w75 h44, Gui, 3:Font, normal Gui, 3:Add, Text,x9 y21 ,Set 1 : Gui, 3:Add, Text,x9 y39 ,Set 2 : Gui, 3:Add, Text,x89 y21 ,Pixels : Gui, 3:Font, underline Gui, 3:Add, Text,cRed x130 y43 g3Info,Info Gui, 3:Add, Text,cRed x83 y43 g3Reset,Reset Gui, 3:Font, normal IniRead, recval1, %A_WinDir%\System32\BF2ISOptions.ini, Anti Recoil, RecoilV1 Gui, 3:Add, Edit,x53 y21 w20 h15 Limit2 vValue1,%recval1% IniRead, recval2, %A_WinDir%\System32\BF2ISOptions.ini, Anti Recoil, RecoilV2 Gui, 3:Add, Edit,x53 y38 w20 h15 Limit2 vValue2,%recval2% IniRead, pixelvar, %A_WinDir%\System32\BF2ISOptions.ini, Pixel Move, PixelV Gui, 3:Add, Edit,x130 y21 w20 h15 Limit2 vPixels,%pixelvar% Gui, 3:Add, Button,x107 y62 w50 h22 gCancelgui3 , Cancel Gui, 3:Add, Button,x57 y62 w50 h22 gSavegui3 , Save Gui, 3:Add, Button,x2 y62 w55 h22 ginidel , Del ini Gui, 3:Show, w160 h87, Options return } else { Gui, 3:Submit Gui, 3:Destroy guiopen2:=0 } return Savegui3: GuiControlGet,Value1 IniWrite, %Value1%, %A_WinDir%\System32\BF2ISOptions.ini, Anti Recoil, RecoilV1 GuiControlGet,Value2 IniWrite, %Value2%, %A_WinDir%\System32\BF2ISOptions.ini, Anti Recoil, RecoilV2 GuiControlGet,Pixels IniWrite, %Pixels%, %A_WinDir%\System32\BF2ISOptions.ini, Pixel Move, PixelV guiopen2:=0 Gui, 3:Submit Gui, 3:Destroy TrayTip, %programName% v%programVersion%, Options Saved,,1 SetTimer, RemoveTrayTip, 2000 return 3Reset: MsgBox, 1,Reset Options, This will reset Options to default settings. IfMsgBox Ok { IniWrite, 1, %A_WinDir%\System32\BF2ISOptions.ini, Anti Recoil, RecoilV1 IniWrite, 3, %A_WinDir%\System32\BF2ISOptions.ini, Anti Recoil, RecoilV2 IniWrite, 1, %A_WinDir%\System32\BF2ISOptions.ini, Pixel Move, PixelV Gui, 3:Destroy guiopen2:=0 } else { } return 3Info: ToolTip,Anti Recoil Set 1 is F10`nand`nAnti Recoil Set 2 is F11`n`nUse Arrow keys for Pixel Move SetTimer, RemoveToolTip, 5000 return Cancelgui3: Gui, 3:Destroy guiopen2:=0 return RemoveToolTip: SetTimer, RemoveToolTip, Off ToolTip return inidel: MsgBox, 4,Delete ini, Are you sure you want to delete the ini Options file? IfMsgBox Yes { FileDelete, %A_WinDir%\System32\BF2ISOptions.ini MsgBox, 64, Options file Deleted, BF2ISOptions.ini deleted.`nScript will now exit ExitApp } else { } return Precdetails: MsgBox, ,PreCanned Text Messages, PreCanned Text Messages `n `n * Numpad1 types "%precannedtxtmsg1%" to team `n * Numpad2 types "%precannedtxtmsg2%" to team `n * Numpad3 types "%precannedtxtmsg3%" to squad `n * Numpad4 types "%precannedtxtmsg4%" to all `n * Numpad5 types "%precannedtxtmsg5%" to all `n * Numpad6 types "%precannedtxtmsg6%" to all `n * Numpad7 types "%precannedtxtmsg7%" to all `n * Numpad8 types "%precannedtxtmsg8%" to all `n * Numpad9 types "%precannedtxtmsg9%" to all `n `n (You can change these messages to whatever you want. `n Code is on bottom of the script source) return About: MsgBox, 64, Battlefield 2 Infantry Script v%programVersion%, This script contains many scripts from other people `n i have found in AHK forums.I simply compiled them all `n together (also improved/changed some of them) and `n made one big and good script out of them. `n Thanks to all those who wrote or created these scripts `n and helped me finish this script. `n `n Alex S. return Reload: Reload return ;Edit wont work if you compile it.But it will still be there Edit: Edit return ;ADD HERE YOUR OWN BF2 SHORTCUT PATHS ;if you add the .exe path you will have problems with launching BF2: TrayTip, %programName% v%programVersion%, Launching Battlefield 2,,1 SetTimer, RemoveTrayTip, 2000 Run,"C:\Documents and Settings\Alex\Επιφάνεια εργασίας\Games\Battlefield 2.lnk" goto, Hide return BF2SF: TrayTip, %programName% v%programVersion%, Launching Battlefield 2 Special Forces,,1 SetTimer, RemoveTrayTip, 2000 Run,"C:\Documents and Settings\Alex\Επιφάνεια εργασίας\Games\Battlefield 2 Special Forces.lnk" goto, Hide return Hide: IfWinExist, PreCanned Text Messages { Winclose, PreCanned Text Messages } IfWinExist, Battlefield 2 Infantry Script v%programVersion% { Winclose, Battlefield 2 Infantry Script v%programVersion% } IfWinExist, Reset Options { Winclose, Reset Options } Gui, Submit, %programName% v%programVersion% Gui, 2:Destroy Gui, 3:Destroy Menu, Tray, Disable, Hide Menu, Tray, Enable, Show guiopen:=0 guiopen2:=0 Return Show: Gui, Show, , %programName% v%programVersion% Menu, Tray, Disable, Show Menu, Tray, Enable, Hide Return Transparent: if (!transopn){ transopn:=1 DetectHiddenWindows, on WinSet, Transparent, 120, %programName% v%programVersion% Menu, Tray, Check, Transparent } else { DetectHiddenWindows, on WinSet, Transparent, 255, %programName% v%programVersion% Menu, Tray, UnCheck, Transparent transopn:=0 } return Always_On_Top: if (!otop){ otop:=1 WinSet, AlwaysOnTop, on, %programName% v%programVersion% Menu, Tray, Check, Always On Top } else { WinSet, AlwaysOnTop, off, %programName% v%programVersion% Menu, Tray, UnCheck, Always On Top otop:=0 } return Suspend: Suspend, Toggle Menu, Tray, ToggleCheck, Suspend return Pause: Menu, Tray, ToggleCheck, Pause Pause, Toggle return Exit: ExitApp Gui2Close: Gui, 2:Submit Gui, 2:Destroy guiopen:=0 return 2ButtonClose: Gui, 2:Submit Gui, 2:Destroy guiopen:=0 return GuiClose: ExitApp /* ====================================================== EXIT / SUSPEND ====================================================== */ ;You can use Suspend if you want to write one of the Hotkeys on a text ;without triggering the action it does ;Also remember to Suspend the script when writing text ingame $Pause:: Suspend, Toggle Menu, Tray, ToggleCheck, Suspend SoundBeep, 500, 100 return $Scrolllock:: ExitApp /* ====================================================== HOTKEYS ON/OFF ====================================================== */ onoff = 0 $Home:: if (!onoff) { onoff:=1 Gui, 1:Default Menu, Tray, Tip, %programName% v%programVersion% `n%HTKStatus2% GuiControl, Text, Status, %HTKStatus2% Hotkey,$C, On Hotkey,$Space, On Hotkey,$MButton, Off Hotkey,$Up, On Hotkey,$Down, On Hotkey,$Left, On Hotkey,$Right, On Hotkey,$RAlt, On Hotkey,$LAlt, On Hotkey,$], On Hotkey,$[, On Hotkey,$/, On Hotkey,$^., On Hotkey,$^+F4, On Hotkey,$+., On Hotkey,$+5, On Hotkey,$f, On Hotkey,$+f, On Hotkey,$^f, On Hotkey,$x, On Hotkey,$+x, On Hotkey,$^x, On SoundBeep, 500, 100 } else { Gui, 1:Default Menu, Tray, Tip, %programName% v%programVersion% `n%HTKStatus1% GuiControl, Text, Status, %HTKStatus1% Hotkey,$C, Off Hotkey,$Space, Off Hotkey,$MButton, Off Hotkey,$Up, Off Hotkey,$Down, Off Hotkey,$Left, Off Hotkey,$Right, Off Hotkey,$RAlt, Off Hotkey,$LAlt, Off Hotkey,$], Off Hotkey,$[, Off Hotkey,$/, Off Hotkey,$^., Off Hotkey,$LButton, Off Hotkey,$^LButton, Off Hotkey,$^+F4, Off Hotkey,$F10, Off Hotkey,$F11, Off Hotkey,$F12, Off Hotkey,$+., Off Hotkey,$+5, Off Hotkey,$f, Off Hotkey,$+f, Off Hotkey,$^f, Off Hotkey,$x, Off Hotkey,$+x, Off Hotkey,$^x, Off SoundBeep, 500, 100 SoundBeep, 500, 100 onoff:=0 } return /* ====================================================== QUICK PRONE-STAND \ DOLPHIN DIVE ====================================================== */ $c:: Loop { Loop { GetKeyState, state, c, P if state = D break } Send, {LCtrl Down} Sleep 40 Send, {LCtrl up} Sleep 40 ;Send, {Space down} ;Sleep 40 Send, {Z down} Sleep 50 ;Send, {Space up} ;Sleep 50 Send, {Z up} return } ;Jump has been removed from this code.So it can be used as quick prone-stand too ;If you want to dolphin dive you have to press jump before pressing "C" /* ====================================================== THROW MEDIC BAG \ SWITCH BACK TO GUN ====================================================== Doesnt work properly with ammo bags/clays/c4 etc because of the different equip times */ $+5:: Send, {5 down} Sleep 60 Send, {5 up} Sleep 130 MouseClick, Left, , , , , D sleep 400 MouseClick, Left, , , , , U Send, {3 down} Sleep 40 Send, {3 up} return /* ====================================================== RIFLE \ PISTOL SWITCH ====================================================== */ togglePistolRifle() { static PistolR if(1 == mod(PistolR,2)) { Send, {3 down} Sleep 50 Send, {3 up} } else { Send, {2 down} Sleep 50 Send, {2 up} } PistolR += 1 } $f:: togglePistolRifle() return $+f:: togglePistolRifle() return $^f:: togglePistolRifle() return /* ====================================================== NADESPAM ====================================================== */ NadeSpam() { static NadeN if(1 == mod(NadeN,3)) { Send, {5 down} Sleep 50 Send, {5 up} } else { Send, {4 down} Sleep 50 Send, {4 up} } NadeN += 1 } $x:: NadeSpam() return $+x:: NadeSpam() return $^x:: NadeSpam() return /* ====================================================== WALL BOUNCE MOVE ====================================================== */ $LAlt:: Send, {space down} Sleep, 100 Send, {space up} Send, {d down} Sleep, 250 Send, {d up} Send, {a down} Sleep, 400 Send, {z down} Sleep, 50 Send, {z up} Sleep, 400 send, {a up} return /* ====================================================== BUNNYHOPPING ====================================================== */ $Space:: Loop { Loop { GetKeyState, State, Space, P if State = D Break } Send, {Space Down} Sleep 60 Send, {Space Up} Sleep 60 Send, {Space Down} Sleep 60 Send {Space Up} Return } /* ====================================================== RAPID FIRE \ ANTI RECOIL SWITCH ====================================================== */ Dev = 0 $]:: Hotkey,$LButton, toggle Hotkey,$^LButton, toggle Hotkey,$F10, toggle Hotkey,$F11, toggle Hotkey,$F12, toggle SoundBeep, 750, 100 return $F10:: IniRead, recval1, %A_WinDir%\System32\BF2ISOptions.ini, Anti Recoil, RecoilV1 Dev = %recval1% return $F11:: IniRead, recval2, %A_WinDir%\System32\BF2ISOptions.ini, Anti Recoil, RecoilV2 Dev = %recval2% return $F12:: Dev = 0 return $LButton:: Loop { Sleep 50 GetKeyState, LButtonState, LButton, P if LButtonState = U break MouseClick, left,,, 1, 0, D Sleep, 20 MouseClick, left,,, 1, 0, U DllCall("mouse_event", uint, 1, int, 0, int, Dev, uint,0, int,0 ) } return ;When crouching and firing at the same time. Using Ctrl as crouch button $^LButton:: Loop { Sleep 50 GetKeyState, LButtonState, LButton, P if LButtonState = U break MouseClick, left,,, 1, 0, D Sleep, 20 MouseClick, left,,, 1, 0, U DllCall("mouse_event", uint, 1, int, 0, int, Dev, uint,0, int,0 ) } return /* ====================================================== PIXEL MOVEMENT ====================================================== */ MouseEvent(a_xpos, a_ypos) { DllCall("mouse_event", uint,1, int,a_xpos, int,a_ypos, uint,0, int,0 ) } $Up:: IniRead, pixelvar, %A_WinDir%\System32\BF2ISOptions.ini, Pixel Move, PixelV MouseEvent(0,-pixelvar) return $Down:: IniRead, pixelvar, %A_WinDir%\System32\BF2ISOptions.ini, Pixel Move, PixelV MouseEvent(0,pixelvar) return $Left:: IniRead, pixelvar, %A_WinDir%\System32\BF2ISOptions.ini, Pixel Move, PixelV MouseEvent(-pixelvar,0) return $Right:: IniRead, pixelvar, %A_WinDir%\System32\BF2ISOptions.ini, Pixel Move, PixelV MouseEvent(pixelvar,0) return /* ====================================================== COMMANDER SPOT SPAM ====================================================== */ $RAlt:: loop { if getkeystate("RAlt", "p") { Click down left ; ! sleep 40 ; ! Click up left ; ! Click down right sleep 100 Click up right DllCall("mouse_event", uint,1, int,5, int,25, uint,0, int,0 ) Sleep 50 Click down left sleep 40 Click up left DllCall("mouse_event", uint,1, int,-5, int,-25, uint,0, int,0 ) sleep 80 } else return } /* ====================================================== C4 CHUCKING ====================================================== */ $[:: Hotkey, $MButton, toggle SoundBeep, 750, 100 return $MButton:: Send {LShift Down} Send {W Down} Sleep 40 Send, {LShift Up} MouseClick, Left, , , 1, 0, D Sleep 30 Send, {Space Down} Sleep 40 Send, {Space Up} Send, {W Up} Send, {S Down} MouseClick, Left, , , 1, 0, U Sleep, 900 Click down right Sleep 40 Click down up Send, {S Down} Sleep 40 Send, {S Up} return /* ====================================================== OTHER ====================================================== These arent importand so they wont be added to "Keys and Instructions" */ ;Shows FPS Ingame = Ctrl + . $^.:: Send, {~ Down} Sleep, 250 Send renderer.drawFps 1 Sleep, 250 Send, {Enter} return ;Set Latency Ingame = Shift + . $+.:: Send, {~ Down} Sleep, 250 Send SettingsManager.floatSet GSDefaultLatencyCompensation Sleep, 250 Send, {Enter} return ;Ctrl + Shift + F4 closes down BF2 instantly $^+F4:: Send, {~ Down} Sleep, 250 Send {BS 10} Sleep, 250 Send quit Sleep, 250 Send, {Enter} Sleep, 3000 Gui, 1:Default Menu, Tray, Tip, %programName% v%programVersion% `n%HTKStatus1% GuiControl, Text, Status, HotKeys : Off TrayTip, %programName% v%programVersion%, Battlefield 2 has been shut down.,,1 SetTimer, RemoveTrayTip, 5000 Hotkey,$C, Off Hotkey,$Space, Off Hotkey,$MButton, Off Hotkey,$Up, Off Hotkey,$Down, Off Hotkey,$Left, Off Hotkey,$Right, Off Hotkey,$RAlt, Off Hotkey,$LAlt, Off Hotkey,$], Off Hotkey,$[, Off Hotkey,$/, Off Hotkey,$^., Off Hotkey,$^LButton, Off Hotkey,$LButton, Off Hotkey,$^+F4, Off Hotkey,$F10, Off Hotkey,$F11, Off Hotkey,$F12, Off Hotkey,$+., Off Hotkey,$f, Off Hotkey,$+f, Off Hotkey,$^f, Off Hotkey,$x, Off Hotkey,$+x, Off Hotkey,$^x, Off SoundBeep, 500, 100 SoundBeep, 500, 100 return RemoveTrayTip: SetTimer, RemoveTrayTip, Off TrayTip return /* ====================================================== PRE-CANNED TEXT MESSAGES ====================================================== */ $/:: Hotkey,$Numpad1, toggle Hotkey,$Numpad2, toggle Hotkey,$Numpad3, toggle Hotkey,$Numpad4, toggle Hotkey,$Numpad5, toggle Hotkey,$Numpad6, toggle Hotkey,$Numpad7, toggle Hotkey,$Numpad8, toggle Hotkey,$Numpad9, toggle SoundBeep, 750, 100 return SayToAll(a_szMessage) { SetKeyDelay, 30,30 Send, {j Down} Sleep 100 Send, {j Up} Send, %a_szMessage%{Enter} SetKeyDelay, 0 } SayToSquad(a_szMessage) { SetKeyDelay, 30,30 Send, {l Down} Sleep 100 Send, {l Up} Send, %a_szMessage%{Enter} SetKeyDelay, 0 } SayToTeam(a_szMessage) { SetKeyDelay, 30,30 Send, {k Down} Sleep 100 Send, {k Up} Send, %a_szMessage%{Enter} SetKeyDelay, 0 } $Numpad1:: SayToTeam("what a noob team") return $Numpad2:: SayToTeam("stop punishing for you own fault idiot") return $Numpad3:: SayToSquad("spawn on me") return $Numpad4:: SayToAll("jumping once isnt bunnyhopping") return $Numpad5:: SayToAll("you suck for your rank.did you bought the acc on ebay?") return $Numpad6:: SayToAll("learn playing pub noob") return $Numpad7:: SayToAll("blame EA for putting jump in the game") return $Numpad8:: SayToAll("im not cheating noob learn playing") return $Numpad9:: SayToAll("bunnyhopping is allowed here so stfu") return /* I would like to give some special thanks to people who made some of the scripts i used or with helping me solve some problems i had making this : BF2fan Harmor zab329 pOrnsTaR* slomz -=T3D=- Muzza.Wood engunneer ahklerner Sry if i forgot someone ;) ====================================================== END OF SCRIPT ====================================================== */