Esempio n. 1
0
    public void SetMessage(string msg)
    {
        messageBar.text    = msg;
        messageShadow.text = msg;

        Color startColor1 = messageBar.color;

        startColor1.a    = 1;
        messageBar.color = startColor1;
        Color endColor1 = messageBar.color;

        endColor1.a = 0;

        Color startColor2 = messageShadow.color;

        startColor2.a       = 1;
        messageShadow.color = startColor2;
        Color endColor2 = messageShadow.color;

        endColor2.a = 0;

        messageBar.gameObject.SetActive(true);
        messageShadow.gameObject.SetActive(true);

        aq.Reset();
        aq.Delay(messageHold);
        aq.AddCoroutine(startColor1.LerpColor(endColor1, messageFade, (Color c) => messageBar.color    = c));
        aq.AddCoroutine(startColor2.LerpColor(endColor2, messageFade, (Color c) => messageShadow.color = c));
        aq.Delay(messageFade);
        aq.Add(() => messageBar.gameObject.SetActive(false));
        aq.Add(() => messageShadow.gameObject.SetActive(false));
        aq.Run();
    }
Esempio n. 2
0
    public void endGame()
    {
        gameOver             = true;
        gameOverText.enabled = true;
        gameOverText.text    = "";

        lastScore = score;
        if (lastScore > highScore)
        {
            highScore = lastScore;
            PlayerPrefs.SetInt("highScore", highScore);
        }

        aq.Delay(1f);
        string msg = "GAME OVER";
        int    i   = 0;

        foreach (char letter in msg)
        {
            aq.Add(() => gameOverText.text += msg[i++]);
            if (letter != ' ')
            {
                aq.PlaySound("click");
            }
            aq.Delay(0.2f);
        }
        aq.Delay(2f);
        aq.Add(() => SceneManager.LoadScene("Main"));
        aq.Run();
    }
Esempio n. 3
0
 private void Reset()
 {
     level.Load();
     Inventory.instance.Reset();
     player.SetActive(false);
     portal.Appear();
     timer.gameObject.SetActive(level.data.timer > 0);
     timer.SetTime(level.data.timer);
     message.SetMessage(level.data.message);
     aq.Delay(0.9f);
     aq.Add(() =>
     {
         if (level.data.specialStart)
         {
             player.transform.position = new Vector3(-3, -3.74626f, 0);
         }
         else
         {
             player.transform.position = portal.transform.position;
         }
         player.SetActive(true);
         playerPS.Play();
         if (timer.gameObject.activeSelf)
         {
             timer.StartTimer();
         }
     });
     aq.Run();
 }
Esempio n. 4
0
    // After clearing the last message, you can then queue up another message
    public MessageBar queueMessage(string msg, bool hold = false)
    {
        aq.Add(() => setMessage(msg));
        aq.AddCoroutine(outsideY.LerpFloat(insideY, speed, (f) => moveGroup(f), curve));
        if (!hold)
        {
            aq.Delay(speed);
            aq.Delay(pause);
            aq.AddCoroutine(insideY.LerpFloat(outsideY, speed, (f) => moveGroup(f), curve));
            aq.Delay(speed);
        }

        return(this);
    }
Esempio n. 5
0
    public void setMessage(string msg)
    {
        messageText.text   = msg;
        transform.position = new Vector3(transform.position.x, startY, transform.position.z);
        gameObject.SetActive(true);

        aq.Reset();

        aq.Add(() => StartCoroutine(transform.LerpPosition(new Vector3(transform.position.x, endY, transform.position.z), moveSpeed)));
        aq.Delay(moveSpeed);
        aq.Delay(holdTime);
        aq.Add(() => StartCoroutine(transform.LerpPosition(new Vector3(transform.position.x, startY, transform.position.z), moveSpeed)));
        aq.Delay(moveSpeed);
        aq.Add(() => gameObject.SetActive(false));
        aq.Run();
    }
Esempio n. 6
0
    void Start()
    {
        scoreText.text = "";
        TransitionToScene tts = playButtonGO.GetComponent <TransitionToScene>();

        tts.clickEvent.AddListener(() => SoundManager.instance.Stop("theme"));

        // Show long intro ONLY if this is the first scene loaded.
        // Otherwise show the fast intro.
        if (string.IsNullOrEmpty(App.instance.lastScene))
        {
            aq.Delay(0.5f);
            float d = fadeTime;

            foreach (GameObject element in elements)
            {
                Transform tf = element.transform;
                tf.localScale = new Vector3(4f, 4f, 1f);
                SpriteRenderer sr        = element.GetComponent <SpriteRenderer>();
                Color          origColor = sr.color;
                Color          tempColor = origColor;
                tempColor.a = 0;
                sr.color    = tempColor;

                aq.Add(() =>
                {
                    StartCoroutine(tf.LerpScale(new Vector3(1f, 1f, 1f), d));
                    StartCoroutine(sr.color.LerpColor(origColor, d, (v) => sr.color = v));
                });
                aq.PlaySound("drop");
                aq.Delay(d);

                d *= 0.7f;
            }
        }

        aq.Add(() => updateScore());
        aq.Delay(0.35f);
        if (!SoundManager.instance.GetSource("theme").isPlaying)
        {
            aq.PlaySound("theme");
        }
        aq.Run();
    }
Esempio n. 7
0
    public void startGame()
    {
        button.interactable = false;
        SoundManager.instance.Play("click");

        // WTF, Color.Lerp is backwards? Durp!
        StartCoroutine(Color.clear.LerpColor(Color.white, fadeTime, (c) => {
            fadeCurtain.color = c;
        }
                                             ));

        ActionQueue aq = gameObject.AddComponent <ActionQueue>();

        aq.Delay(fadeTime);
        aq.Add(() => {
            SceneManager.LoadScene(nextScene);
        });
        aq.Run();
    }