[QUOTE=wretchedshark] @vee41 - Is it possible to take the principle from getting an AI to walk around a room by turning to a certain direction because the walls were different sprites?
By this I mean something like
Leftwall is overlapping Topwall > (trigger once) create sprite at X: (topwall.X - 25), Y: (topwall.Y -25)
25 is just an example number of pixels of course, and this assumes the origin point is very top left of the sprite.
edit: for your second picture on the right side where the small box meets the big one the bottom section of the wall would need to be a left wall and the top portion a right wall.[/QUOTE]
@wretchedshark That was my first attempt, the main problem (which I forgot to tell in the initial post) is that it was a bit slower method than I had hoped for, and required quite many checks and positioning of objects on collisions.
@newt thank you, was not aware of those! Those would be useful in this scenario as well.
What my current approach is, and seems to work somewhat decent, is to spawn sprite on each collision corner via imagepoints. After that I use an 'measuring sprite' which I rotate 360 degrees around the center of sprite at distance X. Whether this measure sprite is overlapping an collision or not, I can find the angle of surrounding solids. I seek for left and right collision angles, and position the sprite in between those via some basic mathemagics.
Here is an visual masterpiece I drew to describe the solution:
I only need to run it once so performance is not an issue. It still feels a bit excessive, but at least it works. :)