"Add the ability to move the code by pressing the right mouse button" – visual demonstration: https://i3.imgpile.com/i/lXyRw.gif (alternative https://youtu.be/hVSjNFLELVc )
"Option to change the sprite palette..." - Frankly, I don't know how it should look. However, there are several options:
- "Universal ": We have 16 colors, so we
have(if I'm not mistaken) Fact (16) = 20,922,789,888,000 combinations palette
changes.
- sprid x y [colorkey [scale [flip[rotate[pal]]]]] - -pal = 0 – 20922789887999
- Pros: Most obvious way
- Cons: it's not intuitive. And it is too difficult to use. And in the sprites are very rarely used all 16 colors (and therefore many combinations are meaningless) ...
- "Specific ": Adding a function to specify what color you need to
replace.
- palChange(colorID,newColorID)
- Pros: Most understandable way.
- Cons: If the sprite is used a lot of colors we need a lot of calls palChange (x, y).
- "Tricky ": We have 16 colors. But one sprite often uses only 2-3.
- sprid x y [colorkey [scale [flip[rotate[pal]]]]] - -pal = 0 – (x-1) where x – the total number of possible combinations. (x = 16! / (16-colInSpr)! ). That is, if the sprite consists of 1 color (meaning 2, but 1 of them transparent, on which the palette of color change does not affect), then you need to specify the value range 0-15. 2 colors: 0-239; 3 colors: 0-3359 ...
- Pros: The most convenient way for sprites using a small amount of color.
- Cons: Probably, it is difficult to implement in practice. The more colors used in the sprite, the harder it is to find the right "number".
- "Other": Another way, to which I had not thought of.
"touch controls possibility for android" – This is just an idea for the future. Interact with the game using touch, swipe, etc.