Airslide, MP6 is a perfect example of why silencer attaching should
not be an alt fire mode. I don't think it should be a limb hiding thing either. Really, the most perfect and robust solution would be to use a switchto function and ammo pooling like we had discussed some time ago. Relying on the model file to have all the necessecary animations limits backwards compatability with media and lmits it's future exploitation to the small number of media makers with animation skill.
With switchto and ammopool, the limits would really only be limited by the designers imagination. Simply put, within a single weapon slot, Weapon A can become Weapon B by pressing an assigned key. A and B can be as similar or dissimilar as the designer wants. With ammo pooling, A and B can share ammo or not depending on what the designer wants. In instances where it is possible to have additional animation, to and from animations could be specified but otherwise it would just play putaway on Weapon A and retrieve on Weapon B.
MP6 example 1: The unsuppressed Glock can become the suppressed one with the same ammo being collected and used for both. Each version should have different gunspec which reflects the change. Explicitly, the suppressed version should have the soundstrength function as well as reduced range and damage.
MP6 example 2: The M79 can become the other version of the M79 which does not share ammo. Player can select between which sort of flak to use. If daisy-chained, flak weapons could have a dizzying array of grenade types to choose from; impact, timed, etc.
Likewise, ammo switching for raycast could be easily achieved. Switch buckshot for slugs on a shotgun, for example.
Anyways, I hope you consider this for 0.7 or SE