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; }
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; }
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>(); }
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; } } }