private void btnOK_Click(object sender, EventArgs e) { if (txtFilename.TextLength == 0) { MessageBox.Show("No filename specified.", "Properties", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } if (txtName.TextLength == 0) { MessageBox.Show("No display name specified.", "Properties", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } int aceScore; if (!Int32.TryParse(txtAceScore.Text, out aceScore)) { MessageBox.Show("Invalid ace score.", "Properties", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } int minStage; if (!Int32.TryParse(txtMinStage.Text, out minStage)) { MessageBox.Show("Invalid minimum stage.", "Properties", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } LevelInfo info = new LevelInfo(); info.Filename = txtFilename.Text; info.Name = txtName.Text; info.AceScore = Convert.ToInt32(txtAceScore.Text); info.MinStage = Convert.ToInt32(txtMinStage.Text); mLevel.Info = info; DialogResult = DialogResult.OK; Close(); }
private void AddLevel(string name, string displayname, int acescore) { PakRecord record = mPakCollection.GetRecord("levels\\" + name + ".dat"); LevelReader reader = new LevelReader(record.Buffer); Level level = reader.Read(); reader.Dispose(); if (level == null) throw new Exception("Unable to read " + name); LevelInfo info = new LevelInfo(name, displayname, acescore, -3); level.Info = info; Image bgImage = GetBackground(name); level.Background = bgImage; mPack.Levels.Add(level); }
private void ParseCFG(string cfg) { CFGDocument document = CFGDocument.Read(cfg); CFGBlock[] stages = document.Blocks[0].GetBlocks("stage"); foreach (CFGBlock block in stages) { foreach (CFGProperty property in block) { switch (property.Name.ToLower()) { case "name": mName = property[0]; break; case "desc": mDescription = property[0]; break; case "level": LevelInfo levelInfo = new LevelInfo(); levelInfo.Filename = property[0]; levelInfo.Name = property[1]; levelInfo.AceScore = Convert.ToInt32(property[2]); levelInfo.MinStage = Convert.ToInt32(property[3]); mLevelInfos.Add(levelInfo); break; } } } CFGBlock[] challenge_pages = document.Blocks[0].GetBlocks("page"); foreach (CFGBlock block in challenge_pages) { mChallengePages.Add(new ChallengePage(block)); } }