How would I make gun animations for guns with multiple swappable parts
Switching out parts isn't an animation issue. You would do that through code. You rig your weapon and create bones or sockets for attachments and then in game you program it so that the attachments you imported separately from the gun get snapped to the right bone or socket.