From 027e9cc2c35839a2cad048b575f8aff24f937f8b Mon Sep 17 00:00:00 2001 From: dkphill Date: Fri, 21 Apr 2023 19:58:35 -0400 Subject: [PATCH] Fixed rock sliding bug --- .../Assets/Scripts/Characters/Protagonist.cs | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/UOP1_Project/Assets/Scripts/Characters/Protagonist.cs b/UOP1_Project/Assets/Scripts/Characters/Protagonist.cs index c390ca7aa6..2640923911 100644 --- a/UOP1_Project/Assets/Scripts/Characters/Protagonist.cs +++ b/UOP1_Project/Assets/Scripts/Characters/Protagonist.cs @@ -109,6 +109,26 @@ private void RecalculateMovement() _previousSpeed = targetSpeed; } + // Ensure that player does not get stuck in corners/edges of rocks + void OnCollisionEnter(Collision collisionInfo) + { + if (collisionInfo.gameObject.name.Contains("rock") || + collisionInfo.gameObject.name.Contains("Rock")){ + + // While colliding with a rock, increase character controller slope limit + GetComponent().slopeLimit = 90; + } + } + void OnCollisionExit(Collision collisionInfo) + { + if (collisionInfo.gameObject.name.Contains("rock") || + collisionInfo.gameObject.name.Contains("Rock")){ + + // After colliding with a rock, decrease character controller slope limit + GetComponent().slopeLimit = 50; + } + } + //---- EVENT LISTENERS ---- private void OnMove(Vector2 movement)