private void ProcessMove() { // Process movement if (Physics.Raycast(transform.position + Vector3.up, transform.forward, out hit, 1f)) { if (hit.collider.GetComponent <ProgressionLighting>()) { hit.collider.GetComponent <ProgressionLighting>().TurnOnTorch(); } else if (hit.collider.GetComponent <WinCondition>()) { _pStats.Victory(); _canvasRef.WipeCanvas(); _canvasRef.SetGameReset = ResetPlayer; //PlayerLevelStart(); } } if (Physics.Raycast(transform.position + Vector3.up, -transform.up, out hit, 1.5f)) { if (hit.collider.GetComponent <InteractableObject>()) { if (hit.collider.GetComponent <InteractableObject>().GetPuzzleManager.GetPzType() == PzType.StepPz) { Debug.Log("Stepped On."); hit.collider.GetComponent <InteractableObject>().Interact(); } //hit.collider.GetComponent<InteractableObject>(). } } if (_moveVector == Vector3.zero) //set sprinting to 1 if not moving { _sprinting = false; } if (_sprint && _canSprint) //process sprint { _sprinting = true; } if (_moveVector.x != 0.0f || _moveVector.z != 0.0f) //move player { float _move = _moveSpeed; if (_sprinting) { _move = _sprintSpeed; } transform.rotation = Quaternion.LookRotation(_moveVector); _cc.Move(_moveVector.normalized * _move * Time.deltaTime); } }