Пример #1
0
    private IEnumerator PlayEnding()
    {
        LevelController.Instance.emergency.SetActive(false);
        LevelController.Instance.expManager.enabled = false;
        LevelController.Instance.levelTimer.enabled = false;
        dome.SetActive(true);
        if (musicSource.isPlaying)
        {
            musicSource.Stop();
        }
        musicSource.clip = endingClip;
        musicSource.loop = false;
        musicSource.Play();

        for (int i = 0; i < friendsTransform.Count; i++)
        {
            var drone = Instantiate(droneRobotPrefab, friendsTransform[i].position, friendsTransform[i].rotation) as DroneRobotController;
            drone.transform.parent = friendsParent;
            drone.ChangeColor(friendsColor[i]);
            drone.ChangeExpression(DroneRobotController.Expression.Happy);
            drone.Celebrate();

            drone.robotAnimation.AddClip(friendsClips[i], friendsClips[i].name);
            drone.robotAnimation.clip = friendsClips[i];
            drone.PlayPresetAnimation();
            yield return(new WaitForSeconds(Random.Range(0.2f, 0.5f)));
        }
        exitDoor.OpenDoor();

        robot.body.transform.LookAt(exitDoor.transform.position);
        robot.ChangeExpression(RobotController.Expression.Happy);
        robot.robotAnim.SetTrigger("Celebrate");
        StartCoroutine(MoveToExitCoroutine());
    }