In counter-strike, user maxspeed is set each time a player change weapons, make sure that it's not the same in TFC.
And in cs, CurrentWeapon is called when a player change weapon but also when the player is shooting.
I have already made the code to filtering that so if you need it just ask.