技能冷却效果的制作
技能冷却效果的制作
前言:在学习的过程中,不管是在手游还是页游中,我们会制作技能冷却效果的制作。这是非常适用的东西。同时也非常的简单,我们直接奉献代码:
public class SkillCoolingEffect : MonoBehaviour { #region 字段和属性定义 [HideInInspector] public float ColdTime = 2f; //冷却的时间 public Button Button; //按钮的引用 private bool _isStartSkill = false; //是否开始冷却 private Image _filledImage; //技能冷却的填充图片 #endregion void Start() { //按钮注册监听的事件 Button.onClick.AddListener(OnClick); //得到Image组件的引用 _filledImage = transform.Find("FilledImage").GetComponent<Image>(); } void Update() { //点击按钮开始进行技能的冷却 if (_isStartSkill) { //_timer += Time.deltaTime; //控制fillAmount属性进行从1-0的递减 _filledImage.fillAmount = (ColdTime - Time.time) / ColdTime; //_filledImage.fillAmount = 1 / ColdTime * Time.time; //当时间大于等于冷却的时间的时候 if (Time.time >= ColdTime) { //手动设置fillAmount=0 _filledImage.fillAmount = 0; //冷却结束 布尔条件重新设置为false _isStartSkill = false; } } } #region 公共方法的定义 #endregion #region 私有方法的定义 /// <summary> /// 点击按钮后开始进行冷却 /// </summary> private void OnClick() { _isStartSkill = true; } #endregion }//class_end
{/*background:url("https://images.cnblogs.com/cnblogs_com/Candies/632934/o_o_light2.png") no-repeat 10px 50%;*/background:url("https://images.cnblogs.com/cnblogs_com/Candies/632934/o_may.png")no-repeat 20px 40%;margin-top: 20px;padding: 10px 10px 10px 120px;box-shadow: 0px 0px 15px #aaa;border-radius: