Пример #1
0
    IEnumerator TomatoScript()
    {
        Stu.Singleton.ToggleThrowing(false);

        if (cucumber == null)
        {
            cucumber = Spawn(cucumberPrefab, leftPoolSeat);
        }

        if (kidATomato == null)
        {
            kidATomato = Spawn(cherryTomatoPrefab, gateEntrace);
        }

        StartCoroutine(kidATomato.WalkTo(rightPoolEntrance));

        if (kidBTomato == null)
        {
            kidBTomato = Spawn(cherryTomatoPrefab, gateEntrace);
        }

        yield return(Dialogue.Create(kidATomato, "CANNONBALL!"));

        StartCoroutine(kidATomato.JumpTo(rightPoolSeat));

        StartCoroutine(kidBTomato.WalkTo(rightPoolEntrance));

        kidBTomato.Face.LookAt(kidATomato);

        yield return(Dialogue.Create(kidBTomato, "YOU HAVE TO WAIT FOR MOM!"));

        if (momTomato == null)
        {
            momTomato = Spawn(tomatoPrefab, gateEntrace);
        }

        kidBTomato.Face.LookAt(momTomato);

        StartCoroutine(momTomato.WalkTo(middlePoolEntrance));

        yield return(Dialogue.Create(momTomato, "Bobby, there are other people in the hottub"));

        yield return(Dialogue.Create(cucumber, "It's fine. Hop on in"));

        StartCoroutine(momTomato.JumpTo(middlePoolSeat));

        kidBTomato.Face.StopLooking();

        yield return(kidBTomato.JumpTo(farRightPoolSeat));

        yield return(Dialogue.Create(kidBTomato, "Ahhh HOT!"));

        StartCoroutine(Dialogue.Create(kidATomato, "It's a hot tub dummy!"));

        yield return(kidBTomato.TurnTo(farRightPoolSeat.rotation, true));

        yield return(kidBTomato.JumpTo(rightPoolEntrance, true));

        yield return(kidBTomato.TurnTo(rightPoolEntrance.rotation, false));

        yield return(Dialogue.Create(momTomato, "It feels so good. Oh my!"));

        StartCoroutine(momTomato.Expand(60f, new List <int>()
        {
            0, 1
        }));

        yield return(Dialogue.Create(cucumber, "We're swelling again. Stu, can you help?"));

        Stu.Singleton.ToggleThrowing(true);

        StartCoroutine(cucumber.Expand(60f, new List <int>()
        {
            0, 1
        }));

        yield return(Dialogue.Create(kidATomato, "Mom looks like an elephant!"));

        yield return(Dialogue.Create(kidBTomato, "Whoah, Mom is bigger than Jupiter!"));

        yield return(new WaitForSeconds(1f));

        yield return(Dialogue.Create(momTomato, "Children! Don't be rude"));

        yield return(momTomato.WaitTillShrunk());

        yield return(cucumber.WaitTillShrunk());

        yield return(Dialogue.Create(momTomato, "Thank you so much"));

        Stu.Singleton.ToggleThrowing(false);

        yield return(Dialogue.Create(momTomato, "I think that's enough for us"));

        StartCoroutine(kidBTomato.WalkTo(gateEntrace));

        momTomato.Face.LookAt(kidATomato);

        yield return(Dialogue.Create(momTomato, "You two need to stop acting like that potato"));

        GameObject.Destroy(kidBTomato.gameObject);

        momTomato.Face.StopLooking();

        StartCoroutine(kidATomato.JumpTo(rightPoolEntrance));

        yield return(momTomato.JumpTo(middlePoolEntrance));

        StartCoroutine(kidATomato.WalkTo(gateEntrace));

        yield return(momTomato.JumpTo(middlePoolEntrance));

        yield return(momTomato.WalkTo(gateEntrace));

        GameObject.Destroy(momTomato.gameObject);
        GameObject.Destroy(kidATomato.gameObject);
    }