I ended up with a result that sort of works, but it doesn't use the shadow plugin. Instead, it uses the drawing canvas to make a polygon of the shape I want.
However, I now have the problem where it works great with a couple of objects, but when there are lots, it begins to slow down.
In this example, there are only a few dozen, so it runs alright, but not great.
In my actual game, there are 1000+ for it to work with.
The problem I'm facing is that there seems to be literally no way to see if a line of sight can see an object unless I use a for each loop, which is what is causing my slow-down.
Also, the line of sight only acknowledges that its seen an object if it manages to see the origin point of the object, which is driving me insane...
At the moment, the code recognises that there is a wall behind the wall, and will try to reach it.
I've attached my code. If someone could have a look and make it super efficient, it'd be appreciated!
https://1drv.ms/u/s!AlZkRk7KfdFFjpY2rdHZ-Q3c20kh8Q?e=lVocou