// Start is called before the first frame update void Start() { grabbable = GetComponent <OVRGrabbable_EventExtension>(); if (!myGrabCollider) { Debug.LogError(gameObject.name + ": Grab collider was not found!"); } if (!attachTarget) { Debug.LogError(gameObject.name + ": Attach target was not found!"); } if (!grabbable) { Debug.LogError(gameObject.name + ": OVRGrabbable_EventExtension was not found!"); } isOccupied = false; unAttachedColliderSize = myGrabCollider.size; unAttachedColliderCenter = myGrabCollider.center; attachedRotationOffset = 0; if (attachSounds.Length <= 0 || detachSounds.Length <= 0) { Debug.LogError(gameObject.name + ": No attach or detach sounds were found!"); } if (!soundSource) { Debug.LogError(gameObject.name + ": Audio Source was not found!"); } }
void OnTriggerEnter(Collider other) { if (other.gameObject.tag.Equals("PuzzleCube")) { puzzleCubeCloseToSlot = other.gameObject; puzzleCubeGrabbable = puzzleCubeCloseToSlot.GetComponent <OVRGrabbable_EventExtension>(); puzzleCubeAttachableTarget = puzzleCubeCloseToSlot.GetComponent <AttachableTarget>(); } }
void OnTriggerExit(Collider other) { if (other.gameObject.tag.Equals("PuzzleCube") && other.gameObject.Equals(puzzleCubeCloseToSlot)) { puzzleCubeCloseToSlot = null; puzzleCubeInSlot = false; if (puzzleCubeAttachableTarget != null) { puzzleCubeAttachableTarget.allowAttaching = true; } puzzleCubeGrabbable = null; puzzleCubeAttachableTarget = null; } }
// Start is called before the first frame update void Start() { GameObject resetObjectVolume = GameObject.FindGameObjectWithTag("ResetStartingPoint"); if (useResetStartingPoint && resetObjectVolume) { startingPosition = resetObjectVolume.transform.position; startingArea = resetObjectVolume.GetComponent <BoxCollider>(); } else { startingPosition = transform.position; } rb = GetComponent <Rigidbody>(); myCollider = GetComponent <Collider>(); originalColliderBounds = myCollider.bounds.size; grabbableScript = GetComponent <OVRGrabbable_EventExtension>(); attachableTargetScript = GetComponent <AttachableTarget>(); attachableScript = GetComponent <Attachable>(); rubiksScript = GetComponent <RotateRubiks>(); if (renderers.Length > 0) { materials = new Material[renderers.Length]; for (int i = 0; i < renderers.Length; i++) { materials[i] = renderers[i].material; } } else { materials = new Material[1]; materials[0] = GetComponentInChildren <Renderer>().material; } if (!rb) { Debug.LogError(gameObject.name + ": Rigidbody was not found!"); } if (!materials[0]) { Debug.LogError(gameObject.name + ": Material was not found!"); } if (!myCollider) { Debug.LogError(gameObject.name + ": Collider was not found!"); } if (!grabbableScript) { Debug.LogError(gameObject.name + ": Grabber script was not found!"); } originalScale = transform.localScale; if (!resetSoundSource) { Debug.LogError(gameObject.name + ": Reset sound Audio Source was not found!"); } startingPitch = resetSoundSource.pitch; if (!resetOutSound) { Debug.LogError(gameObject.name + ": Reset OUT sound Audio Clip was not found!"); } if (!resetInSound) { Debug.LogError(gameObject.name + ": Reset IN sound Audio Clip was not found!"); } }