protected virtual bool ValidDestination() { if (destinationHit.collider == null) { return(false); } bool validNavMeshLocation = false; if (navMeshData != null) { if (destinationHit.transform != null) { NavMeshHit hit; validNavMeshLocation = NavMesh.SamplePosition(destinationHit.point, out hit, navMeshData.distanceLimit, navMeshData.validAreas); } } else { validNavMeshLocation = true; } if (teleporter) { validNavMeshLocation = teleporter.ValidLocation(destinationHit.collider.transform, destinationHit.point); } return(validNavMeshLocation && !(VRTK_PolicyList.Check(destinationHit.collider.gameObject, invalidListPolicy))); }
/// <summary> /// The Check method is used to check if a game object should be ignored based on a given string or policy list. /// </summary> /// <param name="obj">The game object to check.</param> /// <param name="list">The policy list to use for checking.</param> /// <returns>Returns true of the given game object matches the policy list or given string logic.</returns> public static bool Check(GameObject obj, VRTK_PolicyList list) { if (list) { return(list.Find(obj)); } return(false); }
protected virtual void StartCollision(GameObject target) { if (!VRTK_PolicyList.Check(target, targetListPolicy)) { isColliding = true; if (!hasCollided && collideTimer <= 0f) { hasCollided = true; collideTimer = rewindDelay; } } }
protected virtual bool ValidDestination() { bool validNavMeshLocation = false; if (destinationHit.transform != null) { NavMeshHit hit; validNavMeshLocation = NavMesh.SamplePosition(destinationHit.point, out hit, navMeshCheckDistance, NavMesh.AllAreas); } if (navMeshCheckDistance == 0f) { validNavMeshLocation = true; } return (validNavMeshLocation && destinationHit.collider != null && !(VRTK_PolicyList.Check(destinationHit.collider.gameObject, invalidListPolicy))); }
protected virtual bool ValidDestination() { bool validNavMeshLocation = false; if (destinationHit.transform) { UnityEngine.AI.NavMeshHit hit; validNavMeshLocation = UnityEngine.AI.NavMesh.SamplePosition(destinationHit.point, out hit, navMeshCheckDistance, UnityEngine.AI.NavMesh.AllAreas); } if (navMeshCheckDistance == 0f) { validNavMeshLocation = true; } return(validNavMeshLocation && destinationHit.transform && !(VRTK_PolicyList.Check(destinationHit.transform.gameObject, invalidListPolicy))); }
// Token: 0x060018E4 RID: 6372 RVA: 0x00084BBC File Offset: 0x00082DBC protected virtual bool ValidDestination(Transform target, Vector3 destinationPosition) { bool flag = false; if (target) { NavMeshHit navMeshHit; flag = NavMesh.SamplePosition(destinationPosition, out navMeshHit, this.navMeshCheckDistance, -1); } if (this.navMeshCheckDistance == 0f) { flag = true; } return(flag && target && !VRTK_PolicyList.Check(target.gameObject, this.targetListPolicy)); }
protected virtual bool ValidDestination() { bool validNavMeshLocation = false; if (navMeshData != null) { if (destinationHit.transform != null) { UnityEngine.AI.NavMeshHit hit; validNavMeshLocation = UnityEngine.AI.NavMesh.SamplePosition(destinationHit.point, out hit, navMeshData.distanceLimit, navMeshData.validAreas); } } else { validNavMeshLocation = true; } return(validNavMeshLocation && destinationHit.collider != null && !(VRTK_PolicyList.Check(destinationHit.collider.gameObject, invalidListPolicy))); }
// Token: 0x06001202 RID: 4610 RVA: 0x00067C08 File Offset: 0x00065E08 protected virtual PhotonObjectInteract ValidSnapObject(GameObject checkObject, bool grabState, bool checkGrabState = true) { PhotonObjectInteract component = checkObject.GetComponent <PhotonObjectInteract>(); if (component == null) { return(null); } if (VRTK_PolicyList.Check(component.gameObject, this.validObjectListPolicy)) { return(null); } if (component.view == null) { return(null); } if (component.isFixedItem || !component.isProp) { return(null); } if (!this.isHeadCamDropZone && component.GetComponent <CCTV>() && component.GetComponent <CCTV>().isHeadCamera) { return(null); } if (component.GetComponent <Tripod>()) { return(null); } if (component.isGrabbed != grabState) { return(null); } if (!component.view.isMine) { return(null); } return(component); }
/// <summary> /// The SetInvalidTarget method is used to set objects that contain the given tag or class matching the name as invalid destination targets. It accepts a VRTK_PolicyList for a custom level of policy management. /// </summary> /// <param name="list">The Tag Or Script list policy to check the set operation on.</param> public virtual void SetInvalidTarget(VRTK_PolicyList list = null) { invalidListPolicy = list; }
private VRTK_InteractableObject ValidSnapObject(GameObject checkObject, bool grabState) { var ioCheck = checkObject.GetComponentInParent <VRTK_InteractableObject>(); return(ioCheck && ioCheck.IsGrabbed() == grabState && !VRTK_PolicyList.Check(checkObject, validObjectListPolicy) ? ioCheck : null); }
private bool ValidTarget(Transform target) { return(target && !(VRTK_PolicyList.Check(target.gameObject, targetListPolicy))); }
} // 0x00000001817681D0-0x00000001817682C0 public virtual void u091Du0929u0923u0926u091Fu0927u0923u0922u0926u0929u091D(VRTK_PolicyList u0920u0928u091Eu091Fu091Cu091Eu0924u091Du091Eu0922u091E = null) { } // 0x0000000180249080-0x0000000180249090
public virtual void InitalizePointer(VRTK_Pointer u091Cu0923u0923u0926u091Fu0922u0921u091Bu091Eu091Au0921, VRTK_PolicyList u0925u0921u091Fu0926u091Bu0927u091Au0922u091Fu0925u0920, float u091Cu0920u0921u0921u091Du091Cu0924u091Cu0928u0920u091D, bool u091Bu091Bu0921u091Du0923u091Bu0923u091Eu091Au091Eu091E) {} // 0x0000000180E09A30-0x0000000180E09BF0