How do I create a weapon system/game?

I want to make an arena fighting game where you unlock different melee weapons through progression. I was wondering I would begin to handle different weapon usage. Lets say a person selects a different weapon through a menu: first the physical weapon must change on the character, then the hard part - weapon logic. How can I make different weapons have different animations and logic, like a spear that can be left clicked aimed/positioned and a sword that would use left/right mouse movement to determine swing direction? How would I attempt this?