private void OnTriggerExit(Collider other) { FluwidContainerEntry fluwidContainerEntry = other.GetComponent <FluwidContainerEntry>(); if (fluwidContainerEntry) { m_containedFluwidManagers.Remove(fluwidContainerEntry.fluwidManager); } }
private IEnumerator OnTriggerAtHeightCoroutine(FluwidContainerEntry fluwidContainerEntry) { while (transform.position.y > (fluwidContainerEntry.fluwidManager.fluidHeight + fluwidContainerEntry.fluwidManager.transform.position.y)) { yield return(null); } fluwidContainerEntry.fluwidManager.AddCompound(m_containedCompound); Destroy(gameObject); }
private void OnTriggerExit(Collider other) { FluwidContainerEntry fluwidContainerEntry = other.GetComponent <FluwidContainerEntry>(); if (!fluwidContainerEntry) { return; } if (fluwidContainerEntry.fluwidManager == m_creator) { return; } StopCoroutine(OnTriggerAtHeightCoroutine(fluwidContainerEntry)); }
private void OnTriggerEnter(Collider other) { FluwidContainerEntry fluwidContainerEntry = other.GetComponent <FluwidContainerEntry>(); if (fluwidContainerEntry) { if (fluwidContainerEntry.hasCork) { Waste(); } else if (fluwidContainerEntry.fluwidManager != m_creator) { OnTriggerAtHeight(fluwidContainerEntry); } } else if (other.gameObject.isStatic) { Waste(); } }
protected override void OnActionDown() { if (!picked) { VivePickable itemToGrip = this; if (m_itemType == XperItem.Erlenmeyer) { SmartFluwid smartFluwid = GetComponentInChildren <SmartFluwid>(); FluwidContainerEntry fluwidContainerEntry = smartFluwid.GetComponentInChildren <FluwidContainerEntry>(); if (fluwidContainerEntry.hasCork && fluwidContainerEntry.viveCork.picked) { itemToGrip = fluwidContainerEntry.viveCork; } } itemToGrip.Grip(m_interactionWand); ReportInteraction(); } }
private void OnTriggerAtHeight(FluwidContainerEntry fluwidContainerEntry) { StartCoroutine(OnTriggerAtHeightCoroutine(fluwidContainerEntry)); }