// Update all the objects that need to be hidden or shown
    public void UpdateSwitchableObjects(DayNightPhase nextPhase)
    {
        // Switching to day
        if (nextPhase == DayNightPhase.DAY)
        {
            SetStateToArray(ref NightObjects, false);   // Deactivate night
            SetStateToArray(ref DayObjects, true);      // Activate day

            // deactivate the player
            if (player != null)
            {
                player.SetActive(false);
            }
        }
        // Switching to night
        else if (nextPhase == DayNightPhase.NIGHT)
        {
            SetStateToArray(ref NightObjects, true);    // Activate night
            SetStateToArray(ref DayObjects, false);     // Deactivate day

            // activate the player
            if (player != null)
            {
                player.SetActive(true);
            }
        }
    }
    public void StartDayPhase()
    {
        LightsController.Instance.SetDirectionalLightOn(true);

        dayCounter++;

        phase = DayNightPhase.DAY;

        MainUISoundManager.Instance.StopSound("main");
        MainUISoundManager.Instance.StopSound("night");
        MainUISoundManager.Instance.PlaySound("day");

        dayNightText.text = "Day " + dayCounter;

        MainCanvasManager.Instance.ShowBuildMenu();
        MainCanvasManager.Instance.ShowEndDayButton();
        MainCanvasManager.Instance.HideReloadUI();
        ActivateProperObjectsAndScripts();

        switching = false;
    }
    private void StartNightPhase()
    {
        LightsController.Instance.SetLampsOn(true);
        LightsController.Instance.SetDirectionalLightOn(false);

        phase = DayNightPhase.NIGHT;

        MainUISoundManager.Instance.StopSound("day");
        MainUISoundManager.Instance.PlaySound("main");
        MainUISoundManager.Instance.PlaySound("night");

        dayNightText.text = "Night " + dayCounter;

        MainCanvasManager.Instance.HideBuildMenu();
        MainCanvasManager.Instance.HideEndDayButton();
        ActivateProperObjectsAndScripts();

        switching = false;

        // Start spawning waves of zombies
        WavesController.Instance.SpawnNWaves(NumberOfWavesInCurrentDay(), 0, 10);
    }