Beispiel #1
0
    // Preparing summon function
    IEnumerator prepareSummon()
    {
        // Set ball dimly
        GetComponent <SpriteRenderer>().color = new Color(255f, 255f, 255f, 0.2f);

        yield return(new WaitForSeconds(1.5f));

        // Save current time
        float nowTime = Time.time;

        // Do alpha animation
        Color color;

        do
        {
            // Add alpha accoring to time
            color    = GetComponent <SpriteRenderer>().color;
            color.a += Time.time - nowTime;
            nowTime  = Time.time;
            GetComponent <SpriteRenderer>().color = color;

            yield return(null);
        }while (color.a <= 1f);

        // If not fever mode, change idle image
        if (!FeverControl.Fever())
        {
            realIdle = Idle;
            GetComponent <SpriteRenderer>().sprite = realIdle;
        }

        // Summon start
        StartCoroutine(startSummon());
    }
Beispiel #2
0
    private void OnTriggerEnter2D(Collider2D other)
    {
        other.gameObject.SetActive(false);
        StartCoroutine(HitBoard());

        // Not Fever
        if (!FeverControl.Fever())
        {
            // Hit Right
            if (other.transform.tag == transform.tag)
            {
                FeverGage.fillAmount += 0.02f;
                StartCoroutine(FeverColorChange());
                timer.StartCoroutine(timer.TimerChange("RIGHT"));

                ScoreControl.Score += 20;
            }

            // Hit Wrong
            else
            {
                timer.StartCoroutine(timer.TimerChange("WRONG"));
            }
        }
        // Fever Mode
        else
        {
            ScoreControl.Score += 20;
            timer.StartCoroutine(timer.TimerChange("RIGHT"));
        }
    }
Beispiel #3
0
    // Update is called once per frame
    void Update()
    {
        // If fevermode, normalTime is so tight
        if (FeverControl.Fever())
        {
            normalTime = feverTime;
        }

        // If stage is 0, normal mode
        if (level == 0)
        {
            if (Time.time > time + normalTime)
            {
                // Set seed randomly
                if (zenNum >= 4)
                {
                    zenNum = 0;
                    ranNum = Random.Range(0, 6);
                }

                // Summon monsters
                normalBlack.MakeObject(seed[ranNum][zenNum]);
                zenNum++;

                normalWhite.MakeObject(seed[ranNum][zenNum]);
                zenNum++;

                time = Time.time;

                // Decrease summon period
                if (normalTime > normalLimit)
                {
                    normalTime = normalTime * 0.99f;
                }
                else
                {
                    normalTime = normalLimit;
                }
            }
        }
    }
Beispiel #4
0
    // Call at active
    void OnEnable()
    {
        // Decide animator
        if (FeverControl.Fever())
        {
            GetComponent <Animator>().runtimeAnimatorController = feverAmt;
        }
        else
        {
            GetComponent <Animator>().runtimeAnimatorController = norAmt;
        }

        // Animator disabled
        Amt.enabled = false;

        // Set idle sprite depending on fever
        if (FeverControl.Fever())
        {
            realIdle = feverIdle;
        }
        else
        {
            realIdle = preIdle;
        }

        GetComponent <SpriteRenderer>().sprite = realIdle;

        // Set alpha low
        GetComponent <SpriteRenderer>().color = new Color(255f, 255f, 255f, 0.2f);

        // Set first state
        speed = 0;

        // Start checking fever
        StartCoroutine(feverEvent());

        // Prepare summon
        StartCoroutine(prepareSummon());
    }
Beispiel #5
0
    IEnumerator HitBoard()
    {
        if (!FeverControl.Fever())
        {
            GetComponent <Image>().sprite = Hit;
        }
        else
        {
            GetComponent <Image>().sprite = Hit_Fever;
        }

        yield return(new WaitForSeconds(0.2f));

        if (!FeverControl.Fever())
        {
            GetComponent <Image>().sprite = Idle;
        }
        else
        {
            GetComponent <Image>().sprite = Idle_Fever;
        }
    }
Beispiel #6
0
    // Timer's function according to hitting board
    public IEnumerator TimerChange(string state)
    {
        // Fever check
        if (!FeverControl.Fever())
        {
            // If hit wrong board
            if (state == "WRONG")
            {
                GetComponent <SpriteRenderer>().sprite = TiAngry;
                transform.Translate(-unLength * 100, 0, 0);
            }
            // If hit right board
            else
            {
                GetComponent <SpriteRenderer>().sprite = TiSmile;
                transform.Translate(unLength * 100, 0, 0);
            }

            yield return(new WaitForSeconds(0.6f));

            GetComponent <SpriteRenderer>().sprite = TiIdle;
        }
        // If fever mode is on
        else
        {
            GetComponent <SpriteRenderer>().sprite = TiSmile_Fever;
            transform.Translate(unLength * 100, 0, 0);

            yield return(new WaitForSeconds(0.6f));

            // Still fever mode is on
            if (FeverControl.Fever())
            {
                GetComponent <SpriteRenderer>().sprite = TiIdle_Fever;
            }
        }
    }