public void CheckGround() { RaycastHit hit; if (!Physics.Raycast(transform.position, Vector3.down, out hit, 2f, LayerMask.GetMask("Platform"))) { rb.isKinematic = false; isGrounded = false; return; } isGrounded = true; currentPlatform = hit.collider.GetComponent <PlatformController>(); }
public void Respawn() { currentPlatform = null; transform.position = lastPosition = startPosition; transform.rotation = Quaternion.identity; rb.MovePosition(transform.position); rb.isKinematic = true; gameObject.SetActive(true); isMoving = false; moveDirection = Vector3.zero; if (touch != null) { touch.ResetController(); } CheckGround(); }