Are you saying you can jump twice in a row? (ie, tap space twice and it double jumps) or that you can jump once, land, jump a second time, land and then it breaks?
I jump, then isGrounded turns into false for a moment, then it turns back to true, then i jump again, isGrounded turns into false and it doesn’t turns into true until i get on the ground
If it’s turning back to true, it’s because before your jump actually moves your character away from the ground, OnCollisionStay is triggering and turning it back to True would be my guess.
Yes, I dealt with a similar problem recently. When the player presses the jump button you are setting isGrounded to false but the character is still on the ground at that point, so your ground check is setting it right back to true.
In my case, I simply had my script wait a few frames after jumping before it resumed ground checking.