private void GenerateUpgrades()
	{
		if (timesCanReroll <= 0)
		{
			rerollButton.gameObject.SetActive(false);
		}

		//generate the upgrades for this floor
		for (int i = 0; i < 3; i++)
		{
			Upgrade upgrade = UpgradeManager.Instance.GetRandom();
			UpgradeManager.Instance.UsableUpgrades.Remove(upgrade);
			generatedUpgrades.Enqueue(upgrade);
		}
	}

	private void OnRerollPressed()
	{
		foreach (Upgrade previousRolledUpgrade in generatedUpgrades)
		{
			UpgradeManager.Instance.UsableUpgrades.Add(previousRolledUpgrade);
		}

		Debug.LogError("Amount of usable upgrades: " + UpgradeManager.Instance.UsableUpgrades.Count);

		generatedUpgrades.Clear();
		timesCanReroll--;
		rerollsLeftText.text = timesCanReroll.ToString();
		GenerateUpgrades();
		onReroll?.Invoke();

		SoundEffectOptions options = SoundEffectOptions.Default;
		options.clip = reRollPressedClip;
		options.loop = false;
		options.is3D = false;
		options.randomizePitch = true;
		options.volume = 0.1f;
		options.repoolAfterPlay = true;
		GameManager.Instance.CreateAndPlaySoundEffect(options);

	}