public static List <object> GetAllPossibleLevelsFull() { List <object> ret = new List <object>(); List <uint> levels = GetAllPossibleLevels(); foreach (uint u in levels) { ret.Add(new LevelInfo(XmlLevelParser.GetLevelFileName((uint)u), false)); } return(ret); }
private static List <uint> GetAllPossibleLevels() { List <uint> completedLevels = new List <uint>(); uint i = 0; while (File.Exists(XmlLevelParser.GetLevelFileName(++i))) { completedLevels.Add((uint)i); } return(completedLevels); }
private void save(object sender, EventArgs e) { saveFileDialog.Filter = "WOF2 level file (*" + XmlLevelParser.C_LEVEL_POSTFIX + ")|*" + XmlLevelParser.C_LEVEL_POSTFIX; saveFileDialog.DefaultExt = XmlLevelParser.C_LEVEL_POSTFIX.Substring(1); DialogResult result = saveFileDialog.ShowDialog(); if (result == DialogResult.OK) { try { XmlLevelParser.SaveLevel(editorRenderPanel.CurrentLevel, saveFileDialog.FileName); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error while saving level"); } } }
public void OnLevelLoaded(XmlLevelParser parser) { this.timeToFirstEnemy.Text = parser.TimeToFirstEnemyPlane.ToString(); this.timeToNextEnemy.Text = parser.TimeToNextEnemyPlane.ToString(); this.dayTime.SelectedIndex = dayTime.FindString(parser.DayTime.ToString()); this.missionType.SelectedIndex = missionType.FindString(parser.MissionType.ToString()); this.enemyPlanes.Text = parser.EnemyFighters.ToString(); List <LevelTile> tiles = parser.Tiles; levelTiles.Items.Clear(); List <OceanTile> oceanTiles = new List <OceanTile>(); foreach (LevelTile tile in tiles) { if (tile is OceanTile) { oceanTiles.Add(tile as OceanTile); } else { if (oceanTiles.Count > 0) { levelTiles.Items.Add("Ocean - width = " + oceanTiles.Count); oceanTiles.Clear(); } else { levelTiles.Items.Add(tile.GetXMLName); } } } // na koniec if (oceanTiles.Count > 0) { levelTiles.Items.Add("Ocean - width = " + oceanTiles.Count); oceanTiles.Clear(); } }
public static CompletedLevelsInfo GetCompletedLevels() { CompletedLevelsInfo completedLevels = new CompletedLevelsInfo(); completedLevels.CompletedLevels = new SerializableDictionary <LevelInfo, List <Achievement> >(); List <Achievement> emptyAchievements = new List <Achievement>(); if (!File.Exists(EngineConfig.C_COMPLETED_LEVELS_FILE)) { completedLevels = CompletedLevelsInfo.GetDefaultCompletedLevelsInfo(); return(completedLevels); } else { try { string levelsRaw = File.ReadAllText(EngineConfig.C_COMPLETED_LEVELS_FILE); string levelsString = RijndaelSimple.Decrypt(levelsRaw); using (Stream stream = GenerateStreamFromString(levelsString)) { XmlSerializer serializer = new XmlSerializer(typeof(CompletedLevelsInfo)); ; var levels = ( CompletedLevelsInfo)serializer.Deserialize(stream); return(levels as CompletedLevelsInfo); } } catch (Exception ex) { completedLevels.CompletedLevels.Clear(); completedLevels.CompletedLevels.Add(new LevelInfo(XmlLevelParser.GetLevelFileName(1), false), emptyAchievements); Console.WriteLine(ex); } return(completedLevels); } }
public void OnLevelLoaded(XmlLevelParser parser) { this.Text = EngineConfig.C_GAME_NAME + " level editor ( " + parser.MissionType + " ): " + parser.LevelFile; this.menu.OnLevelLoaded(parser); }
public LevelInfo(uint levelNo) { this.filename = XmlLevelParser.GetLevelFileName(levelNo); this.isCustom = false; }