// Use this for initialization void Start() { objectPooler = ObjectPooler.instance; weaponInsList = new GameObject[weaponPrefabList.Length]; for (int i = weaponPrefabList.Length - 1; i >= 0; i--) { GameObject prefabWeapon = weaponPrefabList[i]; Weapon prefabWeaponScript = prefabWeapon.GetComponent <Weapon>(); if (prefabWeapon != null) { objectPooler.AddPool(prefabWeaponScript.projectilePrefab, prefabWeaponScript.projectilePrefab.name, prefabWeaponScript.clipSize); EquipWeapon(prefabWeapon); weaponInsList[i] = weaponIns; weaponIns.gameObject.SetActive(false); } } currentWeaponIndex = 0; weaponInsList[currentWeaponIndex].SetActive(true); }