platform | check points | gml
objCheckpoint Step event:
if place_meeting(x,y,objPlayer){ objPlayer.checkpoint_x = x; objPlayer.checkpoint_y = y; instance_destroy(); // remove checkpoint flag } // ^ could also replace checkpoint flag sprite
objPlayer Create event:
// player checkpoint variables: checkpoint_x = x; checkpoint_y = y;
objPlayer Step event:
// restart player at most recent checkpoint, // depending on how player has died: if (dead){ x = checkpoint_x; y = checkpoint_y; }