Example #1
0
    private IEnumerator TransitionFromFlowerGarden(FlowerGarden flowerGarden)
    {
        State          = SceneState.TransitioningTo;
        Alice          = flowerGarden.Alice;
        MainCamera     = flowerGarden.MainCamera;
        GradientSkybox = flowerGarden.GradientSkybox;

        while (flowerGarden.State != SceneState.Complete)
        {
            yield return(new WaitForEndOfFrame());
        }

        GradientSkybox.ChangeColor(1, Ground);
        GradientSkybox.ChangeColor(2, Sky);
        GradientSkybox.ChangeIntensity(1, 3);

        Alice.Animator.SetBool("IsMoving", false);
        ActivateObjects();
        Star = SceneObjects[2];
        Star.SetActive(false);

        Joker.StartCoroutine(Joker.MoveTo(Joker.transform.position + new Vector3(0, 0, 5)));
        Joker.StartCoroutine(Joker.LookAt(Alice.transform.position, Vector3.up));

        while (Joker.IsMoving)
        {
            yield return(new WaitForEndOfFrame());
        }

        MainCamera.StartCoroutine(MainCamera.Follow(Alice.gameObject, PositionOffsets[0]));
        MainCamera.StartCoroutine(MainCamera.Track(Alice.gameObject, LookPositionOffsets[0]));

        State = SceneState.Active;
        StartCoroutine(Game());
    }
Example #2
0
    public void FlowerGardenTest(int[] height, int[] bloom, int[] wilt, int[] expectedOrdering)
    {
        var fg = new FlowerGarden();

        var actualOrdering = fg.GetOrdering(height, bloom, wilt);

        CollectionAssert.AreEqual(expectedOrdering, actualOrdering);
    }