Not bad but there's some kink needing to be addressed:
Badniks can kill you instantly even with rings, please add some mercy invincibility period after losing rings.
Badniks can be pushed so easily, one thing that might prevent this is to increase the density.
You don't preserve some X velocity when jumping and letting go of the dpad. You just suddenly stop in place.
Use one button for air dash and spindash instead of two for each direction. Make them propel Sonic to where he's looking currently, and he should exit out of rolling/spin dashing when he gets slower or landing after a jump.