FYI, when you add a flag at menu_additem(), if the player that haven't that access the option already will be grey. So you need not these checks. Also, when the player that haven't the access selects the option, he will receive the weapon because you didn't add the check at handler.