コード例 #1
0
        IEnumerator Countdown()
        {
            player.ADrunning  = true;
            player.isShielded = true;
            GameObject   shield = Instantiate(player.shieldV1, player.shieldPos.position, Quaternion.identity);
            ShieldScript ss     = shield.GetComponent <ShieldScript>();

            ss.player = player;
            ss.Appear();
            yield return(new WaitForSeconds(ss.ADuration));

            shield.GetComponent <SphereCollider>().enabled = true;
            float t     = 0.0f;
            float start = 1;
            float end   = 0;

            while (t < time)
            {
                t += Time.deltaTime;
                player.ADprgbar.fillAmount = Mathf.Lerp(start, end, t / time);
                yield return(null);
            }
            shield.GetComponent <SphereCollider>().enabled = false;
            ss.Disappear();
            yield return(new WaitForSeconds(ss.ADuration));

            Destroy(shield);
            player.PlayTakeAnimation();
            player.isShielded  = false;
            player.hasItem     = false;
            player.currentItem = null;
            Destroy(player.currentItemIcon);
            player.ADrunning = false;
        }
コード例 #2
0
    public IEnumerator S_Timer()
    {
        yield return(new WaitForSeconds(STimer));

        shield.Appear();
        yield return(new WaitForSeconds(SDuration));

        shield.Disappear();
        StartCoroutine(S_Timer());
    }