Fix price calculation for tools.

Fixes #9484

Apparently `item::curammo` is not set for tools that have been reloaded. `curammo` being null is used to indicate that the tool does not use real ammo. The function assumes that the tools contains some unspecific ammo (like the spray in a spray can) and calculates the price of the whole item based on the remaining charges. In that case the function will now use the default ammo instead of `curammo`.