last_full_weapon is initialized to zero when a map is loaded. It is set to the weapon ID of the previous weapon when a new weapon is picked up.