I just wanted to say that its behavior seems fine or bad depending on how texture looks.
hm, another trick would be having a parent node like
- Node2D (actually controlled by script)
- Sprite (rotated 90 deg)
then you don't have to do
+90 deg every time.