So i have a “gun” script i have made for my guns(C#):
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class WeaponMan : MonoBehaviour {
public GameObject Weapon1;
public GameObject Weapon2;
public GameObject Weapon3;
public GameObject Weapon4;
public GameObject Weapon5;
public int SelectedWeapon = 0;
public GameObject ReloadT;
// Use this for initialization
void Start () {
ReloadT.SetActive (false);
}
// Update is called once per frame
void Update () {
if(Input.GetKeyDown ("1")){
SelectedWeapon++;
}
if (SelectedWeapon == 0) {
Weapon1.SetActive (true);
Weapon2.SetActive (false);
Weapon3.SetActive (false);
Weapon4.SetActive (false);
Weapon5.SetActive (false);
}
if (SelectedWeapon == 1) {
Weapon1.SetActive (false);
Weapon2.SetActive (true);
Weapon3.SetActive (false);
Weapon4.SetActive (false);
Weapon5.SetActive (false);
}
if (SelectedWeapon == 2) {
Weapon1.SetActive (false);
Weapon2.SetActive (false);
Weapon3.SetActive (true);
Weapon4.SetActive (false);
Weapon5.SetActive (false);
}
if (SelectedWeapon == 3) {
Weapon1.SetActive (false);
Weapon2.SetActive (false);
Weapon3.SetActive (false);
Weapon4.SetActive (true);
Weapon5.SetActive (false);
}
if (SelectedWeapon == 4) {
Weapon1.SetActive (false);
Weapon2.SetActive (false);
Weapon3.SetActive (false);
Weapon4.SetActive (false);
Weapon5.SetActive (true);
}
if (SelectedWeapon == 5) {
SelectedWeapon = 0;
}
}
}
Is there anyway to make it so people have to “have” the weapon before they can pick it up? and if they have 2 weapons it swaps the first one picked up with the newer one?