I think it's to much to add mask to the draw api.
So, I see the following workaround:
- draw all your complex shapes to the screen buffer using regular draw api;
- then copy part of the screen to the sprites buffer using 'pix' and 'sset' functions (https://github.com/nesbox/tic.computer/wiki/code-e...);
- clear the screen and finally you can draw your complex shapes from the sprites using 'spr' api :)