IEnumerator FlyGrandpa()
    {
        CoolGrandpa thegran = CoolGrandpa.instance;

        thegran.gameObject.SetActive(true);
        Transform lookto = GameObject.Find("looktocool").transform;
        Transform campos = GameObject.Find("coolcampos").transform;
        Transform flyto  = GameObject.Find("Flyto").transform;


        Camera.main.transform.position = campos.position;
        Camera.main.transform.LookAt(lookto);
        float elapsedTime = 0;
        float totalTime   = 12f;
        float startTime   = Game.current.currentTime;

        while (elapsedTime < totalTime)
        {
            elapsedTime = Game.current.currentTime - startTime;
            yield return(null);
        }
        generalMusicStart();
        elapsedTime = 0f;

        totalTime = 8f;
        startTime = Game.current.currentTime;
        Vector3 initpos = thegran.transform.position;

        while (elapsedTime < totalTime)
        {
            elapsedTime = Game.current.currentTime - startTime;
            Camera.main.transform.LookAt(lookto);
            thegran.transform.position = Vector3.Lerp(initpos, flyto.position, (elapsedTime / totalTime));
            thegran.transform.Rotate(new Vector3(0, Time.deltaTime * 180, 0));
            yield return(null);
        }
        Destroy(thegran.gameObject);

        elapsedTime = 0;
        totalTime   = 2f;
        startTime   = Game.current.currentTime;
        while (elapsedTime < totalTime)
        {
            elapsedTime = Game.current.currentTime - startTime;
            yield return(null);
        }

        SceneManager.LoadScene("mainmenu");
    }
Exemple #2
0
 public CoolGrandpa()
 {
     instance = this;
 }