Creating animations where character equipment changes

I’ve created a character with separate body parts in Illustrator, I am trying to figure the best way to move ahead to animate this character. I was once super into flash and like the ‘bones’ idea and saw something similar for Unity2d but the monkey wrench is that I want to be able to change equipment on the character based on the what the player chooses, the animation would generally be the same (depending on the weapon). The obvious solution that I’ve found online is having sprite sheets for each combination of items, I’m hoping there is a more elegant solution out there.

Let me know if I’m not being clear, I’m fairly new to unity and making games in general. This could also be why I haven’t found an obvious solution if there is one. Thanks

EDIT
Even if you could put this concept into Unity lingo for me I’d be grateful, I’m not even sure what to search for and am not afraid to do the reading I just need some direction.

Look at this video starting at 28:08, might be what you are after:

Thanks Wombat85. That does help some Interesting, that does seem to be the right idea. This could do what I need, it would get complicated with several characters and several combinations of equipment. I’m curious what other games do, I imagine there is a way when working with meshes that it would substitute a layer of the mesh…or something. I know some of the animation assets can work with meshes, I guess I’ll burrow more into that rabbit hole.

I’ve made some progress is my search. The SmoothMoves asset references “Swap materials or textures at runtime to change your character’s look”, playing the demo shows that the character can switch weapons. I was just about sold and then I see it doesn’t work smoothly with Unity 5. I’ll contact the other animation assets that do work with Unity 5.

Try this, assets are fun but if you have the time and want to, its much better to write the code yourself:

Well done Wombat85, this does seem to be the solution I’m looking for. I’ll try to update once I can code it in