Most mods do it by giving the user a different weapon with no model/potatoe.
Which is why you see your gun disappear.
For libcod, you can set a per-player speed (player setg_speed(newspeed)). Make sure to set the client-side g_speed cvar too or else you have a laggy user.
Dont forget to reset it at the end of the sprint time.