Hi I'm making a first person shooter where the player can hold, use and switch between two weapons. I want to be able find a weapon on the ground, pick it up and switch it out with one of my weapons and drop that weapon and use the new weapon. I could really use some help on a semi easy way to do this.
asked Mar 21 '10 at 12:55 AM
What you could first do is create an array for the player's weapons (in a weapon control script similar to the one in the FPS Tutorial). That would allow you to have two easily switched out weapons and leave the option the increase the number of weapons easily. This script would manage the weapons as well as tell them when to fire/reload and would be added to the main camera of your player (the weapons themselves would be children of the main camera). The weapon scripts would have functions called "selectWeapon" and "deselectWeapon" to turn them on or off.
What you could then do is create a "selectableWeapon" script, which would only need to have one variable (the weapon that it references). You would put this script on the weapon model in the environment and then tag it as something like "pickupAble" (so that when the player looked at the weapon lying on the ground they can pick it up).
You would just need to have every possible weapon be attached to the main camera (all but two of them being deactivated), so that when the player selects a gun off the ground that weapon would activate one of the player's weapons. Here's a "selectweapon" script that you could put on the main camera to actually switch the weapons out.
These are trimmed down scripts from my game, so they would require some tweaking to work in another one. Again, though, a lot of this is derived from the FPS Tutorial if you want to look at that. Also, sorry if this is too long or too specific.
answered Mar 21 '10 at 01:07 PM