Use Shaders to blend alpha values?

As you can see in this image, the shadows of my sprites are darker when they overlap. These shadows are just drawn and then flipped upside down to match what is casting them. Is there any way to get them to not add up? (i.e all shadows would have the same opacity even when overlapping).

I think shaders are the answer but i’m not sure. I’m also unsure where I would begin learning to write shaders for 2D art! Can someone point me in the right direction?

For anyone in the future, the answer was basically ‘Use the Stencil buffer’. Worked perfectly. Check Here.