示例#1
0
    public void Init(WhiteCat.CreationController controller)
    {
        m_lastVisible = false;
        m_Visible     = false;

        InitCreationID(controller.creationData.m_ObjectID);
        //CreationID = controller.creationData.m_ObjectID;

        this.creationController = controller;
        controller.onUpdate    += UpdateMeshLoader;
    }
示例#2
0
    public void InitClone(WhiteCat.CreationController controller, VFCreationDataSource dataSource, VCMeshMgr mesh)//)
    {
        m_lastVisible = false;
        m_Visible     = false;

        InitCreationIDClone(controller.creationData.m_ObjectID, dataSource, mesh);
        // InitCreationID(controller.creationData.m_ObjectID);

        this.creationController = controller;
        controller.onUpdate    += UpdateMeshLoader;
    }
示例#3
0
 public virtual void InitEquipment(PeEntity entity, ItemObject itemObj)
 {
     m_Entity        = entity;
     m_ItemObj       = itemObj;
     m_View          = m_Entity.biologyViewCmpt;
     m_Renderers     = GetComponentsInChildren <Renderer>(true);
     m_RendersEnable = new bool[m_Renderers.Length];
     for (int i = 0; i < m_RendersEnable.Length; ++i)
     {
         m_RendersEnable[i] = m_Renderers[i].enabled;
     }
     m_CreationController = GetComponent <WhiteCat.CreationController>();
 }
示例#4
0
        void LateUpdate()
        {
            int showType = 0;             // 0 不显示, 1 可攻击, 2 锁定中, 3 已锁定

            var        carrier = CarrierController.playerDriving;
            PESkEntity target  = null;

            if (carrier)
            {
                if (carrier.lockedTarget)
                {
                    showType = 3;
                    target   = carrier.lockedTarget;
                }
                else if (carrier.timeToLock > 0f)
                {
                    showType = 2;
                    target   = carrier.targetToLock;
                }
                else if (carrier.aimEntity)
                {
                    showType = 1;
                    target   = carrier.aimEntity;
                }
            }

            if (showType != lastShowType && !hiding)
            {
                lastShowType = showType;

                _background.enabled = showType == 1 || showType == 2;
                _progress.enabled   = showType == 2 || showType == 3;
                _cross.enabled      = true;

                _crossShow.enabled    = showType == 0 || showType == 1;
                _crossLocking.enabled = showType == 2;
                _crossLocked.enabled  = showType == 3;

                if (_crossShow.enabled)
                {
                    _crossShow.speed = showType == 0 ? -1f : 1f;
                }
                else if (_crossLocking.enabled)
                {
                    Color c = _cross.color;
                    c.a          = 1f;
                    _cross.color = c;
                    _cross.transform.localScale  = Vector3.one;
                    _crossLocking.normalizedTime = 0;
                }
                else if (_crossLocked.enabled)
                {
                    Color c = _cross.color;
                    c.a          = 1f;
                    _cross.color = c;
                    _cross.transform.localEulerAngles = Vector3.zero;
                }
            }

            if (target)
            {
                if (target != lastTarget)
                {
                    lastTarget             = target;
                    lastTrans              = target.GetComponent <PeTrans>();
                    lastCreationController = target.GetComponent <CreationController>();
                }

                var     camera         = Camera.main;
                Vector3 targetPosition = this.targetPosition;

                if (visible != (Vector3.Dot(camera.transform.forward, targetPosition - camera.transform.position) > 1f))
                {
                    visible = !visible;
                    for (int i = 0; i < transform.childCount; i++)
                    {
                        transform.GetChild(i).gameObject.SetActive(visible);
                    }
                }

                if (visible)
                {
                    _progress.fillAmount       = 1f - carrier.timeToLock / PEVCConfig.instance.lockTargetDuration;
                    rectTrans.anchoredPosition = camera.WorldToScreenPoint(targetPosition) / rectTransParent.localScale.x;
                }
            }
        }