欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

unity 利用ugui 制作技能冷却效果

程序员文章站 2022-04-03 08:39:00
...
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class SkillItem : MonoBehaviour {

    //冷却时间
    public float coldTime = 2.0f;

    //定时器
    private float timer = 0f;

    //前面的一张填充图片
    private Image filedImage;

    //是否开始技能冷却
    private bool isStartTimer = false;
    // Use this for initialization
    void Start () {
        filedImage = transform.Find ("FilledImage").GetComponent<Image> ();
    }
    
    // Update is called once per frame
    void Update () {
        //已经开始冷却
        if (isStartTimer) {
            timer += Time.deltaTime;

            //计算fillAmount
            filedImage.fillAmount = (coldTime - timer) / coldTime;
            if (timer >= coldTime) {

                //停止定时器
                filedImage.fillAmount = 0;
                timer = 0;
                isStartTimer = false;
            }
        }
    }

    public void OnClick()
    {
        isStartTimer = true;
    }
}