This might work (no guarantees though - haven't tested it!):
Create a new layer called "loader" above all the other layers.
Add a tiled background that covers the entire window and a sprite with a loading animation to the layer.
Add a global called lastObjectCount.
We can now use the system expression"objectcount" to check how many objects have been loaded in:
Every X seconds if lastObjectCount < objectcount, set lastObjectCount to objectcount
Else set layer "loader" invisible (and start the level, activate the player character etc)
Adjust the X seconds to find a value that doesn't trigger incorrectly.
Like I said, just guessing so could be a load of old rubbish - apologies in advance if that's the case!