there is no built in system like that everything u see in games published by construct function of game wise is made by construct users, what construct offers is visual scripting ...
which means it does code work for u and u just use simple math logic and puzzling of behaviors and objects to make stuff..
so for a level system you need to create a Global Variable... that will never reset that means when u change the layout player dies or whatever happens u never use the system expression "reset global variables" that will revert it back to initial state u have when u export the game.
so in order to make the level system u have to say in your pseudo code something like this
is Global Variable "level" = 1
Left clicked on sprite level 1 = go to layout "level 1"
for level 2 3 4 5 ...20 u do the same for the menu selection.
then u need to use the same "level" global variable during the layout, and check if player finished the round lets say he found the key to the next level.
then in ur code u need to do something like
player collision with key
add to "level" 1
go to layout "menu selection"
(il add some saving information here also for in case stuff closes suddenly involves local saving)
now on menu selection
when it starts u always make the items in menu selection check for level = ???
if the level value matches their supposed id or level to go to ... then we make their frames change to color gold or next frame after gray frame, if its not equal to item menu selection id u don't have to code nothing just keep the gray frame on frame zero
now for local saving .. when player hits key or on every 2 3 seconds, u just save the global variable using localsaving plugin i forgot how is called, as "level" and the global variable value that is by inputting as value the name of the global variable so your localsaving event needs to look something like this
every 3 seconds localsaving save item "level" with value GlobalVariableName - u change that
so in case a device failure happens he won't lose much progress.
to load that data.
on the main menu or logo progress whatever comes before the level selection, u go as follows
on start of layout localsaving plugin Load item with name "level"
Condition : if global variable not equal or less than localsaving.lastdata Action set global variable to localsaving.lastdata
and kinda that is it, for more info on this i think tutorial section has a menu with local storage like i just explained somewhere if its not on the construct.net try scirra.com/tutorials is for C2 but it works for C3 also ( as long as there are no custom plugins used in the .capx files that are not officially supported)
hope it answers your questions have fun :D