void CrouchDetect() { if (AIHelpers.RaycastHitting(transform, senses.crouch, transform.forward, senses.coverDetectDistance) || AIHelpers.RaycastHitting(transform, senses.crouch, -transform.forward, senses.coverDetectDistance)) { inCrouchCover = true; RaycastHit wall = AIHelpers.ReturnRaycast(transform, senses.crouch, -transform.forward, senses.coverDetectDistance); vault_height = wall.transform.lossyScale.y; // Quaternion newRot = Quaternion.FromToRotation(transform.up, wall.normal); // transform.rotation = newRot * transform.rotation; } else { inCrouchCover = false; } }
void CheckForClimb() { if (AIHelpers.RaycastHitting(transform, senses.eyes, transform.forward, senses.coverDetectDistance, (1 << LayerMask.NameToLayer(movement.climbLayer)))) { if (ladder == null) { RaycastHit hit = AIHelpers.ReturnRaycast(transform, senses.crouch, Vector3.forward, 4); ladder = hit.transform.root.transform; } climbing = (inStandingCover == true) ? true : false; } else { climbing = false; } }