private void CheckForRail() { isRailGrinding = Physics.Raycast(transform.position, -transform.up, out railhit, CheckDistance, whatIsRail); Debug.DrawRay(transform.position, -transform.up * CheckDistance, Color.green); //reset double jump (if you have one :D) if (isRailGrinding) { _currentRail = railhit.collider.gameObject; railRotationDifference = transform.rotation.eulerAngles.y - _currentRail.transform.rotation.eulerAngles.y; if (_hasCalculatedRail == false) { tempRailRotation = railRotationDifference; _hasCalculatedRail = true; } if (!_isCombo) { ComboStart.Invoke(); _isCombo = true; } ScoreIncrease.Invoke(); MultiplyerIncrease.Invoke(); transform.rotation = _currentRail.transform.rotation; _jumps = 1; } else { _hasCalculatedRail = false; ScoreStop.Invoke(); } }
private void StopWallRun() { isWallRunning = false; _hasCalculatedWall = false; _gravity = Gravity; ScoreStop.Invoke(); }