// Update is called once per frame void Update() { if (originalControllerSetting != displayControllers) { setControllerVisibility(displayControllers); } if (xDown) { leftStatus = AmpStatus.calibrateComfort; leftStatusText.text = "Press Trigger at\ncomfortable position"; } if (aDown) { rightStatus = AmpStatus.calibrateComfort; rightStatusText.text = "Press Trigger at\ncomfortable position"; } checkCalibration(); amplify(HandSide.left); amplify(HandSide.right); }
void checkCalibration() { if (leftTriggerDown && (leftStatus == AmpStatus.calibrateComfort || leftStatus == AmpStatus.calibrateMax)) { if (leftStatus == AmpStatus.calibrateComfort) { Destroy(leftComfortPoint); leftComfortPoint = GameObject.CreatePrimitive(PrimitiveType.Sphere); leftComfortPoint.GetComponent <SphereCollider>().enabled = false; leftComfortPoint.name = "Left Comfort Point"; leftComfortPoint.transform.localScale = new Vector3(0.01f, 0.01f, 0.01f); leftComfortPoint.transform.position = leftHand.transform.position; leftComfortPoint.transform.parent = leftShoulder.transform; leftStatus = AmpStatus.calibrateMax; leftStatusText.text = "Press Trigger at\nmax reach"; } else { if (leftReachSphere != null) { Destroy(leftReachSphere); } leftReachSphere = Instantiate(invertedSpherePrefab); float maxReachDistance = Vector3.Distance(leftShoulder.transform.position, leftHand.transform.position); leftReachSphere.transform.parent = leftShoulder.transform; leftReachSphere.transform.localPosition = Vector3.zero; leftReachSphere.transform.localScale = new Vector3(200 * maxReachDistance, 200 * maxReachDistance, 200 * maxReachDistance); leftReachSphere.layer = 22; leftReachSphere.GetComponent <Renderer>().enabled = false; leftStatus = AmpStatus.active; leftStatusText.text = ""; } } if (rightTriggerDown && (rightStatus == AmpStatus.calibrateComfort || rightStatus == AmpStatus.calibrateMax)) { if (rightStatus == AmpStatus.calibrateComfort) { Destroy(rightComfortPoint); rightComfortPoint = GameObject.CreatePrimitive(PrimitiveType.Sphere); rightComfortPoint.GetComponent <SphereCollider>().enabled = false; rightComfortPoint.name = "Right Comfort Point"; rightComfortPoint.transform.localScale = new Vector3(0.01f, 0.01f, 0.01f); rightComfortPoint.transform.position = rightHand.transform.position; rightComfortPoint.transform.parent = rightShoulder.transform; rightStatus = AmpStatus.calibrateMax; rightStatusText.text = "Press Trigger at\nmax reach"; } else { if (rightReachSphere != null) { Destroy(rightReachSphere); } rightReachSphere = Instantiate(invertedSpherePrefab); float maxReachDistance = Vector3.Distance(rightShoulder.transform.position, rightHand.transform.position); target_maxDistance = maxReachDistance; rightReachSphere.transform.parent = rightShoulder.transform; rightReachSphere.transform.localPosition = Vector3.zero; rightReachSphere.transform.localScale = new Vector3(200 * maxReachDistance, 200 * maxReachDistance, 200 * maxReachDistance); rightReachSphere.layer = 23; rightReachSphere.GetComponent <Renderer>().enabled = false; rightStatus = AmpStatus.active; rightStatusText.text = ""; } } }