deciding between several guns?

i would like for the player to have several options for guns, grenade launchers, etc that all use the same command (shoot or fire) but have different outcomes depending on the weapon you selected. i am currently using a slightly modified version of the “ray gun” that disassembles things as my source (its one of the examples in the inform 7 helpbook) but i am running into the obvious problem that i need to define sveral different things as a “gun” and make the user select the appropriate gun for the situation. any help would b appreciated…

A gun is a kind of thing. A blaster is a kind of gun. ... There is a blaster on the table. The player carries a blaster. The player carries a gun called a ray gun.

Now a gun is a special “kind”, so you can write rules like “Carry out firing a gun…”.

If you want to have multiple identical weapons, make that weapon a “kind” (like the blaster). If you want a weapon to be unique, just create it as you would any other thing.