Refeuh that seems to be the more organized way to do it (even though using groups can make the events sheet neat as well), and if you have layout count in the vicinity of 10 that's fine, but on a larger scale it seems the more practical way to put everything in a single sheet. And in the case that this does not compromise the performance of the game (thank you ErekT for clearing that out) it's like... why do it otherwise at all?
The only downfall I've encountered is that there is no option to perform event on specific layouts, but with a bit of trickery it can be done. Something like naming layouts "Level1, Level2, Level3, etc.", getting the current layout name, storing it in a global variable and comparing that variable to the layout name:
On layout start:
var CurrentLayoutName = LayoutName
if CurrentLevelName == "Level1" -> do events on this layout in particular
I recommend on using group activation/deactivation in order to apply specific sections of logic to a specific layout
For example:
Name groups Movement_0 , Movement_10 , Movement_20, Movement_30 etc. for the movement mechanism you want to use on different levels (Movement_0 for
levels 0-9, Movement_10 for levels 10-19 etc.)
Add global varLevel (use a number, not text! It is a lot easier to use a number for a mathematical condition that generalizes a usage rule, rather than creating a name condition for each and every layout). Make sure that this variable update as the layout changes
On the common event sheet - on start of layout - add an action that disables all these groups (to disable the group that was active on the previous layout):
On start of layout > System > Repeat (number_of_groups) times > set group "Movement_" & loopindex*10 deactivated
and an activation action that enables the appropriate group:
On start of layout > System > Set group "Movement_" & floor(varLevel/10) activated
This way, adding a new group for new levels only takes a change on number_of_groups value on the disable action, and naming the new group correctly. The group will follow the rule you have defined.
You may use a simplified condition for a single group that should work only on a specific layout:
On start of layout > If varLevel=55 > system > set group Special_55 activated
else > system > set group Special_55 deactivated
BTW - this method would work either on a single or multiple event-sheet structure.