I'm making a random class generator for call of duty and I haven't exactly hit a problem, but i need advice on how to go about picking the random weapons.

When you generate a random class, the user must first enter their current rank (level). This is because you are unable to use certain guns until you reach a specified level. This keeps the program from giving out guns the user can't use. What I am doing is allowing the user to give certain parameters as to what type of gun they want to use (or don't want to use). For example, I have checkboxes for the user to pick if they want assault rifles, SMGs, LMGs, Snipers, Shotguns, RPG, etc.

I did this in another version of this program I made, but the only option was to pick whether or not you wanted RPGs included. So, it was easy enough to check if the weapon was an RPG and if it was simply generate another random weapon. I could do this, but with the number of options there are, I don't think this would be the best solution.

Would it be possible to give each weapon some kind of "level" property so I can generate an array with only the weapon types selected and they will still hold on to a property with the level required?

Any suggestions appreciated.