public virtual LevelEditorSaveData LoadLevel(LevelEditorSaveData data) { LevelSavingLoadingArgs args = new LevelSavingLoadingArgs(data, loadLocation); loadLocation = null; OnLevelLoading?.Invoke(this, args); if (args.Cancel) { LevelEditorLogger.Log("LevelEditorSaveManager loading was canceled."); return(new LevelEditorSaveData(null)); } realObjectManager.DeleteAllObjects(); realObjectManager.CreateObjectsFromSaveData(data); OnLevelLoaded?.Invoke(this, new LevelEventArgs(data)); return(data); }