Arms Dealer

The Arms Dealer is an NPC vendor that will spawn once the following criteria have been met:
 * There is an empty house.
 * You have acquired a gun (the gun must be in your inventory, not just stored in a chest somewhere).

The easiest gun to acquire for this purpose is the Musket, which can be obtained by destroying a Shadow Orb.

Once the Arms Dealer has moved into a house, he will sell the following: