public virtual void OnTriggerEnter(Collider coll) { if (coll.GetComponent <WeaponAndAmmoManager>() != null && coll.GetComponent <PlayerTimeManager>() != null && coll.GetComponent <PlayerHealthManager>() != null && !hasBeenPickedUp) { WeaponAndAmmoManager playerWpnManager; PlayerHealthManager playerHealthManager = coll.GetComponent <PlayerHealthManager>(); PlayerTimeManager playerTimeManager = coll.GetComponent <PlayerTimeManager>(); playerWpnManager = coll.GetComponent <WeaponAndAmmoManager>(); switch (pickupType) { case PickupType.Weapon: if (myWeaponType != WeaponType.None) { playerWpnManager.PickupWeapon(myWeaponType); } break; case PickupType.Ammo: if (myWeaponType != WeaponType.None) { playerWpnManager.PickupAmmo(myWeaponType); } break; case PickupType.Powerup: //add powerups/health pickups here break; case PickupType.Health: playerHealthManager.currentHealth += myValue; playerHealthManager.PickupHealth(myValue); break; case PickupType.Action_Points: playerTimeManager.myActionPoints += myValue; playerTimeManager.PickupActionPoints(myValue); break; default: break; } TogglePickupActive(); // StartCoroutine(RespawnPickup(respawnTime)); hasBeenPickedUp = true; } }