var LevelToLoad : Level = Level.Find("LevelToLoad"); //specify the level you want var Timer : Real = 0; function Initialize(init : CogInitializer) { Zero.Connect(this.Space, Events.LogicUpdate, this.OnLogicUpdate); } function OnLogicUpdate(event : UpdateEvent) { //takes 3 seconds this.Timer += event.Dt; //you may wish to change how long it takes, if so, you might want to watch the time in console for reference //Console.WriteLine("`this.Timer`"); if(this.Timer >= 3 && this.LevelSettings.GameLogic.GameWon == false) { //put any important information in temporary variables, eg. //var plrhth = this.LevelSettings.GameLogic.PlayerHealth; var space = this.LoadLevel(this.LevelToLoad); Console.WriteLine("`this.LevelToLoad` loaded"); //put the variables from earlier into the new space, like below /* if(space.FindFirstObjectByName("Player") != null) { space.FindFirstObjectByName("Player").HasHealth.Health = plrhth; } */ } } function LoadLevel(level: Level) : Space { var space = this.GameSession.CreateSpace(Archetype.Find("Space")); space.LoadLevel(level); this.Space.Destroy(); return space; }