//TODO: Implement Voice Over
    //      GET VOICE OVER FIRST. :l
    public void PlayVoiceOver(VoiceOvers voiceOvers)
    {
        switch (voiceOvers)
        {
        case VoiceOvers.PRIESTVOICE:
            m_SoundEffectSource.PlayOneShot(m_PriestVoice);
            break;

        case VoiceOvers.DEMONICMUMBLINGONE:
            m_SoundEffectSource.PlayOneShot(m_DemonicMumblingOne);
            break;

        case VoiceOvers.DEMONICMUMBLINGTWO:
            m_SoundEffectSource.PlayOneShot(m_DemonicMumblingTwo);
            break;

        case VoiceOvers.DEMONICMUMBLETHREE:
            m_SoundEffectSource.PlayOneShot(m_DemonicMumblingThree);
            break;

        case VoiceOvers.DEMONICLAUGH:    //(?),
            m_SoundEffectSource.PlayOneShot(m_DemonicLaugh);
            break;

        case VoiceOvers.CHEERFULGREETING:
            m_SoundEffectSource.PlayOneShot(m_CheerfulGreeting);
            break;

        case VoiceOvers.GRUNTS:
            m_SoundEffectSource.PlayOneShot(m_Grunt);
            break;

        case VoiceOvers.SIGH:
            m_SoundEffectSource.PlayOneShot(m_Sigh);
            break;

        case VoiceOvers.SHOGGOTHFEAST:
            m_SoundEffectSource.PlayOneShot(m_ShoggothFeast);
            break;

        case VoiceOvers.WILHELMSCREAM:
            m_SoundEffectSource.PlayOneShot(m_WilhelmScream);
            break;

        default:
            Debug.Log("Plays nothing");
            break;
        }
    }
    void Start()
    {
        // Get the class object instances or the three chambers
        var airlockObject = GameObject.FindGameObjectWithTag("Airlock");

        airlock = airlockObject.GetComponent <Airlock> ();

        var deposition1Object = GameObject.FindGameObjectWithTag("Deposition1");

        deposition1 = deposition1Object.GetComponent <Deposition1> ();

        var deposition2Object = GameObject.FindGameObjectWithTag("Deposition2");

        deposition2 = deposition2Object.GetComponent <Deposition2> ();

        var voiceOversObject = GameObject.FindGameObjectWithTag("VoiceOvers");

        voiceOvers = voiceOversObject.GetComponent <VoiceOvers> ();

        // Get the monitors
        monitors = GameObject.FindGameObjectsWithTag("CloseUpScreen");
    }
        /// <summary>
        /// Создать новый м/с
        /// </summary>
        public void CreateNewCartoon()
        {
            if (CanCreateNewCartoon is false)
            {
                return;
            }
            using (var ctx = new CVDbContext(AppDataPath))
            {
                var newCartoon = new Cartoon
                {
                    Name        = SelectedCartoon.Name,
                    Checked     = true,
                    Description = SelectedCartoon.Description
                };

                ctx.Cartoons.Add(newCartoon);
                ctx.SaveChanges();
                ctx.CartoonWebSites
                .First(cws => cws.CartoonWebSiteId == GlobalIdList.WebSiteId)
                .Cartoons.Add(ctx.Cartoons.ToList().Last());
                ctx.SaveChanges();

                newCartoon             = ctx.Cartoons.ToList().Last();
                GlobalIdList.CartoonId = newCartoon.CartoonId;

                CartoonVoiceOver voiceOver;
                if (VoiceOvers.Any() is false)
                {
                    ctx.VoiceOvers.Add(new CartoonVoiceOver
                    {
                        Name = $"{SelectedCartoon.Name}_VO"
                    });
                    ctx.SaveChanges();
                    voiceOver = ctx.VoiceOvers.ToList().Last();
                }
                else
                {
                    voiceOver = ctx.VoiceOvers
                                .First(vo => vo.Cartoons
                                       .Any(c => c.CartoonId == newCartoon.CartoonId));
                }

                voiceOver.Cartoons.Add(newCartoon);
                newCartoon.CartoonVoiceOvers.Add(voiceOver);

                var parent = ((CartoonsEditorViewModel)Parent);

                var cartoonUrl = new CartoonUrl
                {
                    CartoonWebSiteId = parent.SelectedWebSite.CartoonWebSiteId,
                    WebSiteUrl       = parent.SelectedWebSite.Url,
                    CartoonId        = newCartoon.CartoonId,
                    Checked          = true,
                    Url = SelectedCartoonUrl.Url
                };

                newCartoon.CartoonUrls.Add(cartoonUrl);
                ctx.SaveChanges();

                TempCartoonSnapshot = JsonConvert.SerializeObject(SelectedCartoon);
                NotifyOfPropertyChange(() => CanSaveChanges);

                parent.Cartoons.Add(newCartoon);
                parent.NotifyOfPropertyChange(() => parent.Cartoons);
                parent.Cartoons.Remove(parent.Cartoons.First(c => c.Name == NewElementString));
                parent.Cartoons.Add(new Cartoon {
                    Name = NewElementString
                });
                parent.SelectedCartoon = parent.Cartoons.First(c => c.CartoonId == GlobalIdList.CartoonId);
            }
        }
    //TODO: Implement Voice Over
    //      GET VOICE OVER FIRST. :l
    public void PlayVoiceOver(VoiceOvers voiceOvers)
    {

        switch (voiceOvers)
        {

            case VoiceOvers.PRIESTVOICE:
                m_SoundEffectSource.PlayOneShot(m_PriestVoice);
                break;
            case VoiceOvers.DEMONICMUMBLINGONE:
                m_SoundEffectSource.PlayOneShot(m_DemonicMumblingOne);
                break;

            case VoiceOvers.DEMONICMUMBLINGTWO:
                m_SoundEffectSource.PlayOneShot(m_DemonicMumblingTwo);
                break;

            case VoiceOvers.DEMONICMUMBLETHREE:
                m_SoundEffectSource.PlayOneShot(m_DemonicMumblingThree);
                break;

            case VoiceOvers.DEMONICLAUGH://(?),
                m_SoundEffectSource.PlayOneShot(m_DemonicLaugh);
                break;

            case VoiceOvers.CHEERFULGREETING:
                m_SoundEffectSource.PlayOneShot(m_CheerfulGreeting);
                break;

            case VoiceOvers.GRUNTS:
                m_SoundEffectSource.PlayOneShot(m_Grunt);
                break;

            case VoiceOvers.SIGH:
                m_SoundEffectSource.PlayOneShot(m_Sigh);
                break;

            case VoiceOvers.SHOGGOTHFEAST:
                m_SoundEffectSource.PlayOneShot(m_ShoggothFeast);
                break;

            case VoiceOvers.WILHELMSCREAM:
                m_SoundEffectSource.PlayOneShot(m_WilhelmScream);
                break;

            default:
                Debug.Log("Plays nothing");
                break;
        }
    }