UGUI:技能冷却效果

版权申明:

  • 本文原创首发于以下网站:
  1. 博客园『优梦创客』的空间:https://www.cnblogs.com/raymondking123
  2. 优梦创客的官方博客:https://91make.top
  3. 优梦创客的游戏讲堂:https://91make.ke.qq.com
  4. 『优梦创客』的微信公众号:umaketop
  • 您可以自由转载,但必须加入完整的版权声明!

技能冷却效果

代码

public class SkillCd : MonoBehaviour
{
    public Image member;
    public float SkillCdTime;//技能总时间
    public float NowSkillTime;//当前技能时间
    public bool IfCd;//是否进入冷却时间

    // Start is called before the first frame update
    void Start()
    {
        IfCd = false;
        NowSkillTime = 0;
    }

    // Update is called once per frame
    void Update()
    {
        if (IfCd)
        {
            NowSkillTime += Time.deltaTime;
            member.fillAmount = 1 - NowSkillTime / SkillCdTime;
            if (NowSkillTime > SkillCdTime)
            {
                IfCd = false;
                NowSkillTime = 0;
            }
        }
    }
}

Mathf.Max(,)两个比较去数字多大的数;

RawLmage控件:

 - yield 关键字遇到这个关键字程序就会停一会等待某个功能完成。

协程

public class Download : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        StartCoroutine(Downimage());      
    }
     IEnumerator Downimage()
    {
        WWW www = new WWW("http://5b0988e595225.cdn.sohucs.com/images/20190522/28c91eef420a482ea33ed97f6b5d0220.jpeg");
        yield return www;
        GetComponent<RawImage>().texture = www.texture;
    }
    // Update is called once per frame
    void Update()
    {
    }
}

Text组件

  • 将字体大小控制在一定范围内,是全部文字都能显示在text内

  • 可交互控件(Button(按键)Slider(滑动控件)lnputField())

  • 可交互:继承自Seletable

  • 不可交互的类继承自()

    • 聊天框文字显示位置老定义到最下面解决方法
  • 在Scroll View的content(显示界面)下添加一个Vertical Layout Group组件(垂直布局组)让文本的高度按content来设置,然后在添加一个ContentSizeFitter组件(按照内容大小来进行水平的适配或者垂直的适配)

  • 选择的这个是垂直适配

  • 第一种是自由适配

  • 第二种是表示最小的高度来适配

  • 第三种手选高度适配

  • 输入文字定位到最后一行的上一行解决方法
    使用协成StaartCoroutine(IEnumerator方法的名字)
    IEnumerator 方发名称()
    {
    yield return new 改造一个WaittForEndofFram();(作用是等待一帧画面结束后在执行下面的代码)
    定位到右下角
    }

UI层级:

  • 子节点覆盖父节点
  • 下节点覆盖上节点
  • 调整层级,RectTransform

Unity事件接口IPointerClickHandler

unity点击拖住接口

  • IBeginDragHandler 开始拖拽
  • IDragHndler 拖拽进行中
  • IEndDraghaandler 结束拖拽
  • IDrophanddler 鼠标拖拽放开
  • IPointerEnterHandler 鼠标进入一个界面的对象的时候可以处理它
  • IPointerExitHandler 鼠标离开对象界面
  • IPointerDownHandler 鼠标按下
  • IPointerUphandler 鼠标弹起
posted @ 2019-09-19 09:22  优梦创客  阅读(653)  评论(0编辑  收藏  举报