I wish Construct 2 would be more Metroidvania-friendly. As it is right now, it's incredibly hard to make.
Also, I want layouts to be fixed. I have a global player and here's what happens if I move between layouts with different heights.
I have 3 layouts, starting layout that is 768x224, the next layout is 256x672, the third layout is 256x224.
Now, my player starts the game in the starting layout, and moves from that layout into the second layout, transition is fine and everything is good. The player then goes to the bottom of that layout and enters a door, that door at position "8, 640", upon colliding with that door, the game changes layouts as per normal and sets the player on the target x,y position. However, when switching from layout 2 to 3, the player is always stuck in the lower left corner of the layout, clipped into the tilemap.
It turns out that if you're moving objects from layout to layout, if an object was in a x,y position that can't be present in the next layout, even if you set the position the object is going to be in via events, the engine bugs out and just clips him into nowhere.
It basically goes like this; Player starts in layout 1, enters door in layout 1 at 208y, switch layout from 1 to 2, player is currently in layout 2 at 208y and correct position that are set via events, player jumps down to bottom of the layout and enters door in layout 2 at 640y, switch layout from 2 to 3, player is currently in layout 3 at 640y even though the events told the game to set the player to the same y position as the door in the next layout.
I don't understand how the engine cannot simply set the player objects there. The only work around I've thought of is to have each layout contain the entire game world which is stupid.
Any ideas if that can actually be fixed?
Those are the events set up, the position the player is set to in the next layout is taken from instance variables unique to each door.
In most cases the PlayerOffsetY is zero, but if I need the player to be above or below a door I can change it. I tried using this to fix the player getting clipped into the tilemap hundreds of pixels below the door but it didn't help.