09-29-2023, 04:21 AM
The alpha value of the color provided to `_SetAlpha` has to match what is already there. IE. After your first call to `_SetAlpha`, all the red pixels no longer have 255 alpha, and as a consequence they are not equal to `_RGB32(255, 0, 0)` which does (That's the same as `_RGBA32(255, 0, 0, 255)`).
You can get around this issue with the `TO color` option on `_SetAlpha`. Ex. I haven't tested it, but this should work: `_SetAlpha c, _RGBA32(255, 0, 0, 0) TO _RGBA32(255, 0, 0, 255), RedBox`.
I'm not 100% sure but I think the `_CopyImage` version works because it blends the images together and the resulting pixels still have 255 alpha, meaning the next `_SetAlpha` works as intended.
You can get around this issue with the `TO color` option on `_SetAlpha`. Ex. I haven't tested it, but this should work: `_SetAlpha c, _RGBA32(255, 0, 0, 0) TO _RGBA32(255, 0, 0, 255), RedBox`.
I'm not 100% sure but I think the `_CopyImage` version works because it blends the images together and the resulting pixels still have 255 alpha, meaning the next `_SetAlpha` works as intended.