custom scripts (mostly making the hugeass ambassador not visible while firing) make some things so much easier.
All of my scripts basically handle mucking around with keybinds and aliases. For instance, my basic weapon select stuff looks like:
bind "1" primary
bind "2" secondary
bind "3" melee
alias vm_state "r_drawviewmodel 0";
alias vm_on "r_drawviewmodel 1; alias vm_state vm_on"
alias vm_off "r_drawviewmodel 0; alias vm_state vm_off"
alias primary "slot1; alias nextwep secondary; alias prevwep melee; vm_off; alias qswitch secondary; fov90"
alias secondary "slot2; alias nextwep melee; alias prevwep primary; vm_off; alias qswitch primary; fov90"
alias melee "slot3; alias nextwep primary; alias prevwep secondary; vm_on; alias qswitch primary; fov90"
mwheelbinds //sets mwheelup and mwheeldown to nextwep/prevwep
alias qswitch secondary
bind "q" qswitch
alias nextwep secondary
alias prevwep meleeUnless I left out something, that sets up my mouse buttons and scrollwheel to use the weapon select aliases I configured, which toggles the viewmodel, sets the FOV (which I set to 75 for a "zoom" effect on the Ambassador, but only on the spy), and sets my quickswitch to toggle between my primary and secondary weapon. It also makes sure that if I happen to use the scrollwheel that it still follows my preferences. But when I'm playing medic:
alias secondary "slot2; alias nextwep melee; alias prevwep primary; vm_on; alias qswitch primary"
alias melee "slot3; alias nextwep primary; alias prevwep secondary; vm_on; alias qswitch secondary"
bind "g" "+use_action_slot_item"
bind "ALT" "taunt"Enables viewmodels for my medigun (which helps me remember which one I have selected, especially when the item servers shit their selves) and rebinds my taunt key so it uses my action slot (Meet The Medic taunt). Rebinds alt to the normal taunt so I can use the Amputator's taunt.
I also use a handy Engineer quick-switch macro. In autoexec.cfg:
alias lastClass "join_class engineer"
alias urgentClassChange "lastClass"
bind BACKSPACE urgentClassChangeIn engineer.cfg:
alias urgentClassChange "lastClass"For the other class configs, lines like this:
alias lastClass "join_class medic"
alias urgentClassChange "join_class engineer"alias lastClass "join_class heavyweapons"
alias urgentClassChange "join_class engineer"Long story short, I can hit backspace to switch to engineer (for quickly removing sappers, every second counts) or upgrading teleporters. Then I hit backspace again to return to my previous class.