To be clear I've been at this for about a day and I just am lost about what to do. For context I'm using a seperate Camera object with scrollto on it. Also This is more of a logic question rather than a "can you code this thing for me lol" question.
I've been trying to make a Mario world styled camera as the title suggestions, but everything I can think of just doesnt work. For context as to how the Mario World camera works: youtube.com/watch . Also a little more context for what I'm trying to achieve - I DONT want a smooth camera. It's true that I want the camera to adjust itself and move according to the player but I want it to be purely linear movement. Smooth cameras tend to have this sort of slow down and speed up effect when stopping or starting that I find to look pretty bad.
My first idea was to have the camera object be tweened to a "CameraMoveObject" (the solid white lines in the image attached) once the player collides with a "CameraBorderObject" (the dotted lines). First off this didn't really work as expected... YES it did move to the CameraMoveObject but it would only move to one. Okay. Makes sense. So I tried to Pick by UID and then it just stopped moving to the object completely. Then I tried assigning it a variable and it'd only move to that object if it had that variable. Same thing that happened with UID happened here. At this point I just gave up and made them two seperate objects. Okay cool that works now.
Now a new problem, I have no idea where to go from there. How would I go about setting the Camera to only follow the player when theyre colliding with the camera move object? How do I make the camera still be at an offset when following the player? Better yet how do I even have each CameraMoveObject/CameraBorderObject follow Mario at a certain distance. (I could probably achieve this by setting a layers parallax to 0, 0 come to think of it but that doesnt seem right either...)
So does anyone know any Construct actions/conditions/behaviors/ect that help develop a system like this? Sorry for being super vague and not really providing code but I really just don't know how to go about this.