oOmg Kirs, nooob!! wtf are you saying?? that line will cause a lot of problems!
Sry, that method was too fast... and wrong... till we make something to fix it.
Remove that line and make this:
First lines of draw event:
angle_hold=angle
if action=action_rolling angle=0;
Last line of draw event:
angle=angle_hold
It's the same method, but now we store the angle value before change it in the case that sonic is rolling. In that case, sonic's sprite will de drawn at angle 0 but after that, we restore the previous angle value to allow sonic's normal movement.
Hope that helps a bit more : /