private void LoadLevel() { _currentLevel = PlayerPrefs.GetInt("CurrentLevel", 0); LevelImporter importer = new LevelImporter(); _levels = importer.loadMetadata(Resources.Load <TextAsset>("levels").text); if (levelName != null) { levelName.text = _levels.levels[_currentLevel].title; } rewindButton.SetActive(_levels.levels[_currentLevel].rewindCount != 0); if (_camera != null) { SmoothCamera sc = GetComponent <SmoothCamera>(); sc.ClearBackgrounds(); for (int i = 0; i < _levels.levels[_currentLevel].background.Length; ++i) { sc.AddBackground(_levels.levels[_currentLevel].background[i]); } } LoadLevelObjects(importer); }
public void Start() { LevelImporter importer = new LevelImporter(); LevelsCollection levels = importer.loadMetadata(Resources.Load <TextAsset> ("levels").text); List <LevelObject> objects = importer.loadLevel(Resources.Load <TextAsset> (PlayerPrefs.GetInt("CurrentLevel", 0).ToString()).text); Map.ClearAllTiles(); LoadLevel(levels.levels[PlayerPrefs.GetInt("CurrentLevel", 0)], objects, Theme); }
public void BasicImporterTest() { LevelImporter importer = new LevelImporter(); LevelsCollection levels = importer.loadMetadata(LevelImporter.loadFile("Assets/Editor/testlevels.json")); Assert.NotNull(levels); Assert.AreEqual(1, levels.levels.Length); Assert.AreEqual(1, levels.levels[0].id); Assert.AreEqual("test", levels.levels[0].title); }
public override void OnInspectorGUI() { DrawDefaultInspector(); LevelImporter importer = (LevelImporter)target; if (GUILayout.Button("Import Level")) { importer.Import(); } }
public void LevelReaderTest() { LevelImporter importer = new LevelImporter(); LevelsCollection levels = importer.loadMetadata(LevelImporter.loadFile("Assets/Editor/testlevels.json")); List <LevelObject> objects = importer.loadLevel(LevelImporter.loadFile("Assets/Editor/" + levels.levels[0].id + ".csv")); Assert.AreEqual(30, objects.Count); Assert.AreEqual(new Vector2Int(7, 0), objects[0].Position); Assert.AreEqual(ELevelObjectType.PORTAL, objects[0].LevelObjectType); Assert.IsEmpty(objects[0].targetReferences); }
public void LevelReaderSwitchDoorTest() { LevelImporter importer = new LevelImporter(); LevelsCollection levels = importer.loadMetadata(LevelImporter.loadFile("Assets/Editor/testlevels.json")); List <LevelObject> objects = importer.loadLevel(LevelImporter.loadFile("Assets/Editor/" + levels.levels[0].id + ".csv")); LevelObject theswitch = objects[29]; LevelObject thedoor = objects[10]; Assert.AreEqual(1, theswitch.targetReferences.Count); Assert.AreEqual(thedoor, theswitch.targetReferences[0]); }
private void LoadLevelObjects(LevelImporter importer) { List <LevelObject> objects = importer.loadLevel(Resources.Load <TextAsset>(PlayerPrefs.GetInt("CurrentLevel", 0).ToString()).text); LevelObjectManager levelObjectManager = GetComponent <LevelObjectManager>(); LevelsCollection levels = importer.loadMetadata(Resources.Load <TextAsset>("levels").text); LevelsCollection.Level level = levels.levels[PlayerPrefs.GetInt("CurrentLevel", 0)]; levelObjectManager.GridSize = new Vector2Int(level.gridSizeX, level.gridSizeY); for (int i = 0; i < objects.Count; i++) { levelObjectManager.InstantiateLevelObject(objects[i]); } }
/// <summary> /// LoadContent will be called once per game and is the place to load /// all of your content. /// </summary> protected override void LoadContent() { // Create a new SpriteBatch, which can be used to draw textures. spriteBatch = new SpriteBatch(GraphicsDevice); var tileSheetTexture = Content.Load <Texture2D>("tilesheet"); var tileSheet = new TileSheet(tileSheetTexture); levelRenderer = new LevelRenderer(graphics, tileSheet); using (var importer = new LevelImporter("Content/levels.txt")) { levelCollection = importer.LoadLevels(); } sceneStateManager = new SceneStateManager(levelCollection, levelRenderer); }
void Start() { int _currentLevel = PlayerPrefs.GetInt("CurrentLevel", 0); LevelImporter importer = new LevelImporter(); LevelsCollection _levels = importer.loadMetadata(Resources.Load <TextAsset>("levels").text); if (_levels.levels[_currentLevel].introText != null) { text.text = _levels.levels[_currentLevel].introText; } else { SceneManager.LoadScene("Game"); } }
public void TestReadWriteData() { var gridEditorSettingsForExport = Substitute.For <IGridEditorSettings>(); var gridEditorSettingsForImport = Substitute.For <IGridEditorSettings>(); LevelSummary expectedLevelSummary = new LevelSummary(59, "the level name"); for (int i = 0; i < 10; i++) { expectedLevelSummary.BallData.Add(CreateRandomBallData()); } gridEditorSettingsForExport.GetExportData().Returns(expectedLevelSummary); LevelSummary actualLevelSummary = null; gridEditorSettingsForImport .When(e => e.SetLevelData(Arg.Any <LevelSummary>())) .Do(x => actualLevelSummary = x.Arg <LevelSummary>()); var levelExporter = new LevelExporter(gridEditorSettingsForExport); var levelImporter = new LevelImporter(gridEditorSettingsForImport); levelExporter.Export(); var expectedFile = GameConstants.Levels.RelativeResourcePath + "level-" + expectedLevelSummary.OrdinalNumber + ".bin"; FileAssert.Exists(expectedFile); var successfullyImported = levelImporter.Import(expectedFile); Assert.True(successfullyImported); Assert.NotNull(actualLevelSummary); Assert.AreEqual(expectedLevelSummary.LevelNumber, actualLevelSummary.LevelNumber); Assert.AreEqual(expectedLevelSummary.OrdinalNumber, actualLevelSummary.OrdinalNumber); CollectionAssert.AreEquivalent(expectedLevelSummary.BallData, actualLevelSummary.BallData); }