To avoid using multiple events in that fashion, it'd be: OnPlayerTouch > Player > ifHasWeapon [weapon]> //Do something.
Also, a checkbox wouldn't be needed to check that. That's for outputs, not inputs. I would make it, but I'm already back-logged in the addon department.