Esempio n. 1
0
 public void OnPlacementConfirmed()
 {
     OnboardingStage = Stage.AfterConfirmation;
     VoManager.Stop(true);
     PlacementDirector.Stop();
     PlacementDirector.gameObject.SetActive(false);
     StopAllCoroutines();
     EvaluateOnEndOfVoiceOver();
 }
Esempio n. 2
0
    private void AdvanceStateMachine()
    {
        switch (OnboardingStage)
        {
        case Stage.Intro:
            switch (_platformId)
            {
            case GalaxyExplorerManager.PlatformId.HoloLensGen1:
                VoManager.PlayClip(Intro_0301_hl1);
                break;

            case GalaxyExplorerManager.PlatformId.ArticulatedHandsPlatform:
                VoManager.PlayClip(Intro_0301_hl2);
                ForceDirector.gameObject.SetActive(true);
                ForceDirector.Play();
                break;

            case GalaxyExplorerManager.PlatformId.ImmersiveHMD:
                VoManager.PlayClip(Intro_03_vr);
                break;

            case GalaxyExplorerManager.PlatformId.Desktop:
                break;

            case GalaxyExplorerManager.PlatformId.Phone:
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
            OnboardingStage = Stage.AfterDedicatedIntro;
            EvaluateOnEndOfVoiceOver();
            break;

        case Stage.AfterDedicatedIntro:
            switch (_platformId)
            {
            case GalaxyExplorerManager.PlatformId.HoloLensGen1:
            case GalaxyExplorerManager.PlatformId.ImmersiveHMD:
            case GalaxyExplorerManager.PlatformId.ArticulatedHandsPlatform:
                EnableForcePull();
                break;

            case GalaxyExplorerManager.PlatformId.Desktop:
                break;

            case GalaxyExplorerManager.PlatformId.Phone:
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
            OnboardingStage = Stage.AfterForcePull;
            break;

        case Stage.AfterForcePull:
            switch (_platformId)
            {
            case GalaxyExplorerManager.PlatformId.HoloLensGen1:
                VoManager.PlayClip(Intro_0302_hl1, 0f, false, true);
                break;

            case GalaxyExplorerManager.PlatformId.ArticulatedHandsPlatform:
                VoManager.PlayClip(Intro_0302_hl2, 0f, false, true);
                ForceDirector.Stop();
                ForceDirector.gameObject.SetActive(false);
                PlacementDirector.gameObject.SetActive(true);
                PlacementDirector.Play();
                break;

            case GalaxyExplorerManager.PlatformId.ImmersiveHMD:
                break;

            case GalaxyExplorerManager.PlatformId.Desktop:
                break;

            case GalaxyExplorerManager.PlatformId.Phone:
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
            // always chain intro 4
            VoManager.PlayClip(Intro_04);
            OnboardingStage = Stage.AfterConfirmation;
            break;

        case Stage.AfterConfirmation:
            DisableForcePull();
            switch (_platformId)
            {
            case GalaxyExplorerManager.PlatformId.HoloLensGen1:
                break;

            case GalaxyExplorerManager.PlatformId.ArticulatedHandsPlatform:
                PlacementDirector.Stop();
                PlacementDirector.gameObject.SetActive(false);
                break;

            case GalaxyExplorerManager.PlatformId.ImmersiveHMD:
                break;

            case GalaxyExplorerManager.PlatformId.Desktop:
                break;

            case GalaxyExplorerManager.PlatformId.Phone:
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
            OnboardingStage = Stage.Done;
            break;

        case Stage.None:
            break;

        case Stage.Done:
            return;

        default:
            throw new ArgumentOutOfRangeException();
        }
    }