private void UpdateLevelEditor() { if (SpaceLevelEditor.Activate) { SpaceLevelEditor.Tick(); } }
private void StopLevelEditor(bool aborted) { SpaceLevelEditor.Stop(); if (aborted) { SpaceLevelEditor.Abort(); } }
private RuntimeLevel initialLevel; // The last level that was loaded. public LevelManager(Script script, MenuManager menuManager) : base(script) { script.Tick += OnTick; script.Aborted += OnAborted; MenuManager = menuManager; SpaceLevelEditor = new SpaceLevelEditor(menuManager); SubscribeToMenuEvents(); }
private void BeginLevelLoad() { if (Level == null) { if (IsLevelLoaded) { IsLevelLoaded = false; } return; } if (!IsLevelLoaded) { if (!Game.IsScreenFadingOut) { Game.FadeScreenOut(screenFadeTime); } if (Game.IsScreenFadedOut) { // DEBUGGING Game.Player.Character.Position = Level.LevelMetadata.Position; Game.Player.Character.FreezePosition = true; if (initialLevel != null) { initialLevel.Stop(); initialLevel = null; } LoadLevel(Level); IsLevelLoaded = true; if (SpaceLevelEditor.Activate) { SpaceLevelEditor.Init(); } Game.FadeScreenIn(screenFadeTime); } } }
private void OnFileSelected(object sender, NativeMenuItemEventArgs e) { if (e.MenuItem == null) { return; } var levelMetadata = (SpaceLevel)e.MenuItem.Tag; if (levelMetadata == null) { return; } Level = new RuntimeLevel(levelMetadata); SpaceLevelEditor.BeginEdit(Level); }
public override void ReadSettings(ScriptSettings scriptSettings) { screenFadeTime = scriptSettings.GetValue("levels", "screen_fade_time", screenFadeTime); scriptSettings.SetValue("levels", "screen_fade_time", screenFadeTime); SpaceLevelEditor.ReadSettings(scriptSettings); }