If it's the same code as in iuse::hoster_pistol(), it's a good candidate for extracting it to a shared method, maybe player::quickdraw(item *holster).  With a bit more work you can probably pull a LOT of common code out of those new iuse methods into just a few player methods.