Hey,
I'm using this one quite some time now, and thought it's worth sharing. maybe this helps some of you out. It's quite useful and NOT forbidden in leagues (for example etf2l)
So if anyone wants it, dont hesitate to copy and paste
.
I do warn you though, you may get used to it and if you ever decide to delete it,its quite annoying to get used to pressing r all the time
For use in your autoexec.cfg (just copy & paste in there and save)(you can find it here: Steam/Steamapps/username/Team Fortress 2/tf/cfg. If you dont have one, no problem: Open up the editor, and save the empty file as autoexec.cfg (dont forget the .cfg!!!) in the folder):
Code:
/ Attack
// ------
bind mouse1 +currentattack
// Change Current Attack
// ------------------------
alias "autoreloadON" "alias +currentattack +autoreload; alias -currentattack -autoreload; +reload; bind mouse1 +currentattack"
alias "autoreloadOFF" "alias +currentattack +noreload; alias -currentattack -noreload; -reload; bind mouse1 +currentattack"
// Auto Reload after firing
// ------------------------
alias +autoreload "+attack;-reload"
alias -autoreload "-attack;wait 25;+reload"
// Anti-Reload after firing
// ------------------------
alias +noreload "-reload;+attack"
alias -noreload "-attack;"
For use in your Scout.cfg & Demoman.cfg (This will auto-realod your primary weapons only, you still have to press r for sticky launcher to reload):
Code:
"autoreloadON"
//Weapon Specific Script Loader
Alias wsl12 "slot1; wait; bind q wsl21; wait; bind mwheelup wsl31; wait; bind mwheeldown wsl21; wait; bind 1 wsl12; wait; bind 2 wsl21; wait; bind 3 wsl31; wait; autoreloadON"
alias wsl13 "slot1; wait; bind q wsl31; wait; bind mwheelup wsl31; wait; bind mwheeldown wsl21; wait; bind 1 wsl13; wait; bind 2 wsl21; wait; bind 3 wsl31; wait; autoreloadON"
alias wsl21 "slot2; wait; bind q wsl12; wait; bind mwheelup wsl12; wait; bind mwheeldown wsl32; wait; bind 1 wsl12; wait; bind 2 wsl21; wait; bind 3 wsl32; wait; autoreloadOFF"
alias wsl23 "slot2; wait; bind q wsl32; wait; bind mwheelup wsl12; wait; bind mwheeldown wsl32; wait; bind 1 wsl12; wait; bind 2 wsl23; wait; bind 3 wsl32; wait; autoreloadOFF"
alias wsl31 "slot3; wait; bind q wsl13; wait; bind mwheelup wsl23; wait; bind mwheeldown wsl13; wait; bind 1 wsl13; wait; bind 2 wsl23; wait; bind 3 wsl31; wait; autoreloadOFF"
alias wsl32 "slot3; wait; bind q wsl23; wait; bind mwheelup wsl23; wait; bind mwheeldown wsl13; wait; bind 1 wsl13; wait; bind 2 wsl23; wait; bind 3 wsl32; wait; autoreloadOFF"
wsl12
For use in Soldier.cfg (This will auto-reload both your RL & Shotty):
Code:
"autoreloadON"
//Weapon Specific Script Loader
Alias wsl12 "slot1; wait; bind q wsl21; wait; bind mwheelup wsl31; wait; bind mwheeldown wsl21; wait; bind 1 wsl12; wait; bind 2 wsl21; wait; bind 3 wsl31; wait; autoreloadON"
alias wsl13 "slot1; wait; bind q wsl31; wait; bind mwheelup wsl31; wait; bind mwheeldown wsl21; wait; bind 1 wsl13; wait; bind 2 wsl21; wait; bind 3 wsl31; wait; autoreloadON"
alias wsl21 "slot2; wait; bind q wsl12; wait; bind mwheelup wsl12; wait; bind mwheeldown wsl32; wait; bind 1 wsl12; wait; bind 2 wsl21; wait; bind 3 wsl32; wait; autoreloadON"
alias wsl23 "slot2; wait; bind q wsl32; wait; bind mwheelup wsl12; wait; bind mwheeldown wsl32; wait; bind 1 wsl12; wait; bind 2 wsl23; wait; bind 3 wsl32; wait; autoreloadON"
alias wsl31 "slot3; wait; bind q wsl13; wait; bind mwheelup wsl23; wait; bind mwheeldown wsl13; wait; bind 1 wsl13; wait; bind 2 wsl23; wait; bind 3 wsl31; wait; autoreloadOFF"
alias wsl32 "slot3; wait; bind q wsl23; wait; bind mwheelup wsl23; wait; bind mwheeldown wsl13; wait; bind 1 wsl13; wait; bind 2 wsl23; wait; bind 3 wsl32; wait; autoreloadOFF"
wsl12
For use in Pyro.cfg & Heavy.cfg (This will auto-reload your Shotties only (as you cant reload your Flamer & Sasha
Use it though to avoid any issiues, for example constantly spinning Minigun):
Code:
"autoreloadON"
//Weapon Specific Script Loader
Alias wsl12 "slot1; wait; bind q wsl21; wait; bind mwheelup wsl31; wait; bind mwheeldown wsl21; wait; bind 1 wsl12; wait; bind 2 wsl21; wait; bind 3 wsl31; wait; autoreloadOFF"
alias wsl13 "slot1; wait; bind q wsl31; wait; bind mwheelup wsl31; wait; bind mwheeldown wsl21; wait; bind 1 wsl13; wait; bind 2 wsl21; wait; bind 3 wsl31; wait; autoreloadOFF"
alias wsl21 "slot2; wait; bind q wsl12; wait; bind mwheelup wsl12; wait; bind mwheeldown wsl32; wait; bind 1 wsl12; wait; bind 2 wsl21; wait; bind 3 wsl32; wait; autoreloadON"
alias wsl23 "slot2; wait; bind q wsl32; wait; bind mwheelup wsl12; wait; bind mwheeldown wsl32; wait; bind 1 wsl12; wait; bind 2 wsl23; wait; bind 3 wsl32; wait; autoreloadON"
alias wsl31 "slot3; wait; bind q wsl13; wait; bind mwheelup wsl23; wait; bind mwheeldown wsl13; wait; bind 1 wsl13; wait; bind 2 wsl23; wait; bind 3 wsl31; wait; autoreloadOFF"
alias wsl32 "slot3; wait; bind q wsl23; wait; bind mwheelup wsl23; wait; bind mwheeldown wsl13; wait; bind 1 wsl13; wait; bind 2 wsl23; wait; bind 3 wsl32; wait; autoreloadOFF"
wsl12
For use in Engineer.cfg, Medic.cfg, Sniper.cfg & Spy.cfg (This will auto-reload none of your weapons. You theoretically can use the same Code from Scout & Demoman for Engineer, however you wont be able to switch to your build panel with mousewheel then and have to use 4 & 5, and that can be quite annoying):
Code:
"autoreloadOFF"
bind mouse1 +attack
bind mwheelup invprev
bind mwheeldown invnext
bind q lastinv
bind 1 slot1
bind 2 slot2
bind 3 slot3
However, there are some minor issues with this script
1) If you get killed while holding your non-primary as Scout, Soldier, Pyro, Demoman or Heavy, switching weapons wont work properly at first. Just randomly switch through your weapons after spawning to fix this.
2) When watching SourceTV Demos, you wont be able to switch through the players with Mouse1. You either have to use Mouse2 then or write "bind mouse1 +attack" (without the "") in Console. If you wanna play a game after watching the demo, you have to restart the game if you used the bind mouse1 +attack console-command.
Cheers, Relentless
PS: I didn't create this script, however I dont know who did. Just to avoid misunderstandings