zoukankan      html  css  js  c++  java
  • NGUI 中,长技能图标显示技能Tips的核心代码

    需要将技能图标对应的位置Pos赋给Tips即可。下面是计算 Pos 的核心代码:

    using UnityEngine;
    
    public class LgsTest : MonoBehaviour
    {
        [SerializeField]
        GameObject skillIcon;
    
        GameObject TipsInfo;                //到实际的项目中,只需要将改对象即可
        Vector3 offVec3 = Vector3.zero;     //偏移量
        public static Camera m_Camera;
    
        void Start()
        {
            if (null == m_Camera)
                m_Camera = UICamera.FindCameraForLayer(skillIcon.layer).GetComponent<Camera>();
            UIEventListener.Get(skillIcon).onPress = OnPressSkillIconBtn;
        }
    
        void OnPressSkillIconBtn(GameObject go, bool show)
        {
            if (null == m_Camera)
                m_Camera = UICamera.FindCameraForLayer(skillIcon.layer).GetComponent<Camera>();
            if (show)
            {
                Vector3 screenPos = m_Camera.WorldToScreenPoint(skillIcon.transform.position);
                Vector3 finPos = m_Camera.ScreenToWorldPoint(screenPos + offVec3);
                TipsInfo.transform.position = finPos;
                TipsInfo.SetActive(true);
            }
            else
            {
                TipsInfo.SetActive(false);
            }
        }
    }
  • 相关阅读:
    初涉echarts图表笔记。
    es6----数组去重(简单类型和引用类型)
    git pull 拉取更新失败解决方案
    javascript----是否下拉到页面底部
    构造函数和析构函数
    派生类和基类
    C++11新标准
    类型转换
    编码
    牛牛的背包问题
  • 原文地址:https://www.cnblogs.com/luguoshuai/p/8885596.html
Copyright © 2011-2022 走看看