So this involves a lot of different .cfg files, so bare with me :)
This script effectively binds one button to (over the course of a few presses) check what medigun the enemy medic is running. It will change you to spy, check the gun, then change you back to the class you were on.
I have listed the files to edit in alphabetical order:
Binds:
bind "L" "kritzcheck"
(L is my button of choice, change it here to your liking)
Demoman:
alias kritzcheck "join_class spy"
alias kritzcheck4 "join_class demoman"
Engineer:
alias kritzcheck "join_class spy"
alias kritzcheck4 "join_class engineer"
Heavyweapons:
alias kritzcheck "join_class spy"
alias kritzcheck4 "join_class heavyweapons"
Medic:
alias kritzcheck "join_class spy"
alias kritzcheck4 "join_class medic"
Pyro:
alias kritzcheck "join_class spy"
alias kritzcheck4 "join_class pyro"
Scout:
alias kritzcheck "join_class spy"
alias kritzcheck4 "join_class scout"
Sniper:
alias kritzcheck "join_class spy"
alias kritzcheck4 "join_class sniper"
Soldier:
alias kritzcheck "join_class spy"
alias kritzcheck4 "join_class soldier"
Spy:
alias kritzcheck "disguise 5 -1; alias kritzcheck kritzcheck2"
alias kritzcheck2 "slot2; alias kritzcheck kritzcheck3"
alias kritzcheck3 "lastdisguise; alias kritzcheck kritzcheck4"
If you have any questions post below, or if I made a mistake let me know. It's 3am and I made this up in bed. Good night.