Discuss Scratch
- Seil
-
3 posts
Mirroring and rotating a sprite
One feature I would find very useful is a way to have the ability to use both the ‘left-right’ and ‘all around’ rotation style at the same time, so that an effect like this can be easily achieved:

Currently, you aren't able to left-right flip a sprite and be able to rotate it. The only workaround I know of is making two almost identical costumes, one just horizontally flipped. In some situations, like the one I happen to be in with the current project I'm working on, you may need several costumes that you want to create this effect with, and making horizontally flipped duplicates for each costume isn't worth compromising project file size, in my opinion… Assets build up pretty fast, loading times even faster.
I was thinking that instead of pointing a sprite in either -90 or 90 degrees to face left or right, a new Motion block is added. Following the Scratchblocks syntax, it could be called something like "flip in direction “ or ”mirror in direction “, with two choices: left and right. Then you could remove the ‘left-right’ option from the ”set rotation style“ block, and maybe just have ‘rotate’ and ‘don’t rotate' as the options. (Or rename the block ”turn rotation ", ‘on’ and ‘off’.)
Now, whether you want your sprite to rotate or not, you still have the power to horizontally flip your sprite whenever and wherever you want. So you could say…
I don't see complexity becoming an issue for beginners. I feel like this change would even make it a little easier to understand, for people of all skills. Of course, this will probably break the semantics of some projects, but that's an easy fix, and overall this will add more flexibility to rotation in particular, and make the effect that I've illustrated easily possible, without the cost of unnecessary costumes.
What do you guys think?

Currently, you aren't able to left-right flip a sprite and be able to rotate it. The only workaround I know of is making two almost identical costumes, one just horizontally flipped. In some situations, like the one I happen to be in with the current project I'm working on, you may need several costumes that you want to create this effect with, and making horizontally flipped duplicates for each costume isn't worth compromising project file size, in my opinion… Assets build up pretty fast, loading times even faster.
I was thinking that instead of pointing a sprite in either -90 or 90 degrees to face left or right, a new Motion block is added. Following the Scratchblocks syntax, it could be called something like "flip in direction “ or ”mirror in direction “, with two choices: left and right. Then you could remove the ‘left-right’ option from the ”set rotation style“ block, and maybe just have ‘rotate’ and ‘don’t rotate' as the options. (Or rename the block ”turn rotation ", ‘on’ and ‘off’.)
Now, whether you want your sprite to rotate or not, you still have the power to horizontally flip your sprite whenever and wherever you want. So you could say…
…and it will appear like the 3rd graphic in the image above. Note, by the way, that the arrow in the turn block is pointing CLOCKWISE… if a sprite is flipped, it would make sense, or at least seem simpler, for its rotation to be flipped as well, since the image, as it appears after flipping, should be rotated. Also, vertical flipping could be just as useful as horizontal flipping, with the addition of ‘up’ and ‘down’ to the flip/mirror block.
I don't see complexity becoming an issue for beginners. I feel like this change would even make it a little easier to understand, for people of all skills. Of course, this will probably break the semantics of some projects, but that's an easy fix, and overall this will add more flexibility to rotation in particular, and make the effect that I've illustrated easily possible, without the cost of unnecessary costumes.
What do you guys think?
Last edited by Seil (Sept. 7, 2014 09:25:46)
- Blueinkproductions
-
1000+ posts
Mirroring and rotating a sprite
Support. This makes a lot of sense.
- stickfiregames
-
1000+ posts
Mirroring and rotating a sprite
Support, but the left-right style should be kept in because there is no easy replacement.
- Seil
-
3 posts
Mirroring and rotating a sprite
Thanks everyone. 

If this new block were to be added, the left-right style could easily be implemented, since basically all left-right rotation does is this: Support, but the left-right style should be kept in because there is no easy replacement.
Pretty easy replacement. If you're talking about projects breaking because of the original left-right style becoming obsolete, I can understand that. And maybe they could leave it in for a while to let whoever needs it get adjusted, then remove it after a week or so… It shouldn't be too long.
- stickfiregames
-
1000+ posts
Mirroring and rotating a sprite
I'm talking about scripts becoming obsolete. They would have to be replaced with your workaround. It would be even more complicated now that rotation styles can change while a project is running, because the wokraround script would have to only run when the (old) rotation style is left-right.
- RPFluffy
-
1000+ posts
Mirroring and rotating a sprite
Total Kiwi!
Unlike others it makes sense!
Unlike others it makes sense!
- TheHockeyist
-
1000+ posts
Mirroring and rotating a sprite
Support. Perhaps the icon could be the double arrow surrounded by the circular arrow?
- pvz_pro
-
500+ posts
Mirroring and rotating a sprite
no support, just copy the costume and flip it. if you want it to move back, do this:
- theliferules9
-
2 posts
Mirroring and rotating a sprite
it's easy. Just put point toward a hidden sprite…
- Pezd
-
100+ posts
Mirroring and rotating a sprite
I think this is a good idea, but I also think that you should be able to mirror up and down to.
- Platformer123
-
2 posts
Mirroring and rotating a sprite
There is a set rotation style block already though, so sorry. No support
- yoshi5674
-
2 posts
Mirroring and rotating a sprite
I really need this for a game im making called Caillou the Savage
