Use a weapon if it is selected in the inventory

The first commit is just refactoring the switchWeapon method to use the new useWeapon method which just sets the current weapon.

The second commit sets the currently used weapon when a weapon is selected in the inventory.