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).
 * It works with ammunition like Musket Ball too, if you have it in your inventory.

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:

Note: As with all NPCs, right-clicking an item will allow multiple purchases rather than purchasing it one by one.

Quotes

 * "Keep your hands off my gun, buddy!"
 * "Don't bother with that firework vendor, I've got all you need right here." (Only if Demolitionist is present.)
 * "Make it quick! I've got a date with the [Name of Nurse] in an hour." (Only if Nurse is present.)
 * "[Name of Dryad] is a looker. Too bad she's such a prude." (Only if Dryad is present.)
 * "I love nights like tonight, there's no shortage of things to kill" (Only during blood moon.)
 * "I see you're eyeballin' the Minishark... You really don't want to know how it was made."
 * "I want what [Name of Nurse] is sellin'. What do you mean, she don't sell anything ?" (Only if Nurse is present.)
 * "I heard there is a doll that looks very similar to [Name of Guide] somewhere in the underworld. I'd like to put a few rounds in it." (This will be the only message available if Eye of Cthulhu, Eater of Worlds and Skeletron are all defeated, but Wall of Flesh is not.)