void update_list() { CreatureList.Groups.Clear(); CreatureList.Items.Clear(); List <EncounterCard> cards = null; if (fCreatures != null) { cards = new List <EncounterCard>(); foreach (Creature creature in fCreatures) { cards.Add(new EncounterCard(creature.ID)); } } else { cards = EncounterBuilder.FindCreatures(fTemplateSlot, fLevel, NameBox.Text); } BinarySearchTree <string> bst = new BinarySearchTree <string>(); foreach (EncounterCard card in cards) { ICreature c = Session.FindCreature(card.CreatureID, SearchType.Global); bst.Add(c.Category); } List <string> cats = bst.SortedList; cats.Add("Miscellaneous Creatures"); foreach (string cat in cats) { CreatureList.Groups.Add(cat, cat); } foreach (EncounterCard card in cards) { ICreature c = Session.FindCreature(card.CreatureID, SearchType.Global); ListViewItem lvi = CreatureList.Items.Add(card.Title); lvi.SubItems.Add(card.Info); lvi.Tag = card; if ((c.Category != null) && (c.Category != "")) { lvi.Group = CreatureList.Groups[c.Category]; } else { lvi.Group = CreatureList.Groups["Miscellaneous Creatures"]; } } }
private void update_list() { this.CreatureList.Groups.Clear(); this.CreatureList.Items.Clear(); List <EncounterCard> encounterCards = null; if (this.fCreatures == null) { encounterCards = EncounterBuilder.FindCreatures(this.fTemplateSlot, this.fLevel, this.NameBox.Text); } else { encounterCards = new List <EncounterCard>(); foreach (Masterplan.Data.Creature fCreature in this.fCreatures) { encounterCards.Add(new EncounterCard(fCreature.ID)); } } BinarySearchTree <string> binarySearchTree = new BinarySearchTree <string>(); foreach (EncounterCard encounterCard in encounterCards) { ICreature creature = Session.FindCreature(encounterCard.CreatureID, SearchType.Global); binarySearchTree.Add(creature.Category); } List <string> sortedList = binarySearchTree.SortedList; sortedList.Add("Miscellaneous Creatures"); foreach (string str in sortedList) { this.CreatureList.Groups.Add(str, str); } foreach (EncounterCard encounterCard1 in encounterCards) { ICreature creature1 = Session.FindCreature(encounterCard1.CreatureID, SearchType.Global); ListViewItem item = this.CreatureList.Items.Add(encounterCard1.Title); item.SubItems.Add(encounterCard1.Info); item.Tag = encounterCard1; if (creature1.Category == null || !(creature1.Category != "")) { item.Group = this.CreatureList.Groups["Miscellaneous Creatures"]; } else { item.Group = this.CreatureList.Groups[creature1.Category]; } } }
private void AutoBuildBtn_Click(object sender, EventArgs e) { AutoBuildForm autoBuildForm = new AutoBuildForm(AutoBuildForm.Mode.Deck); if (autoBuildForm.ShowDialog() == System.Windows.Forms.DialogResult.OK) { EncounterDeck encounterDeck = EncounterBuilder.BuildDeck(autoBuildForm.Data.Level, autoBuildForm.Data.Categories, autoBuildForm.Data.Keywords); if (encounterDeck != null) { this.fDeck = encounterDeck; this.LevelBox.Value = this.fDeck.Level; this.DeckView.Deck = this.fDeck; this.DeckView_SelectedCellChanged(null, null); } } }
private void AutoBuildBtn_Click(object sender, EventArgs e) { AutoBuildForm dlg = new AutoBuildForm(AutoBuildForm.Mode.Deck); if (dlg.ShowDialog() == DialogResult.OK) { EncounterDeck deck = EncounterBuilder.BuildDeck(dlg.Data.Level, dlg.Data.Categories, dlg.Data.Keywords); if (deck != null) { fDeck = deck; LevelBox.Value = fDeck.Level; DeckView.Deck = fDeck; DeckView_SelectedCellChanged(null, null); } } }
public AutoBuildForm(Mode mode) { InitializeComponent(); fData = new AutoBuildData(); fMode = mode; init_options(); switch (fMode) { case Mode.Encounter: { TemplateBox.Items.Add(RANDOM); List <string> names = EncounterBuilder.FindTemplateNames(); foreach (string name in names) { TemplateBox.Items.Add(name); } TemplateBox.SelectedItem = (fData.Type != "") ? fData.Type : RANDOM; DiffBox.Items.Add(Difficulty.Random); DiffBox.Items.Add(Difficulty.Easy); DiffBox.Items.Add(Difficulty.Moderate); DiffBox.Items.Add(Difficulty.Hard); DiffBox.SelectedItem = fData.Difficulty; LevelBox.Value = fData.Level; update_cats(); } break; case Mode.Delve: { TemplateLbl.Enabled = false; TemplateBox.Enabled = false; TemplateBox.Items.Add("(not applicable)"); TemplateBox.SelectedIndex = 0; DiffLbl.Enabled = false; DiffBox.Enabled = false; DiffBox.Items.Add("(not applicable)"); DiffBox.SelectedIndex = 0; LevelBox.Value = fData.Level; update_cats(); } break; case Mode.Deck: { TemplateLbl.Enabled = false; TemplateBox.Enabled = false; TemplateBox.Items.Add("(not applicable)"); TemplateBox.SelectedIndex = 0; DiffLbl.Enabled = false; DiffBox.Enabled = false; DiffBox.Items.Add("(not applicable)"); DiffBox.SelectedIndex = 0; LevelBox.Value = fData.Level; update_cats(); } break; } }
public void InitEncounterBuilder(EncounterBuilder e) => encounterBuilder = e;
public AutoBuildForm(AutoBuildForm.Mode mode) { this.InitializeComponent(); this.fData = new AutoBuildData(); this.fMode = mode; this.init_options(); switch (this.fMode) { case AutoBuildForm.Mode.Encounter: { this.TemplateBox.Items.Add("Random"); foreach (string str in EncounterBuilder.FindTemplateNames()) { this.TemplateBox.Items.Add(str); } this.TemplateBox.SelectedItem = (this.fData.Type != "" ? this.fData.Type : "Random"); this.DiffBox.Items.Add(Difficulty.Random); this.DiffBox.Items.Add(Difficulty.Easy); this.DiffBox.Items.Add(Difficulty.Moderate); this.DiffBox.Items.Add(Difficulty.Hard); this.DiffBox.SelectedItem = this.fData.Difficulty; this.LevelBox.Value = this.fData.Level; this.update_cats(); return; } case AutoBuildForm.Mode.Delve: { this.TemplateLbl.Enabled = false; this.TemplateBox.Enabled = false; this.TemplateBox.Items.Add("(not applicable)"); this.TemplateBox.SelectedIndex = 0; this.DiffLbl.Enabled = false; this.DiffBox.Enabled = false; this.DiffBox.Items.Add("(not applicable)"); this.DiffBox.SelectedIndex = 0; this.LevelBox.Value = this.fData.Level; this.update_cats(); return; } case AutoBuildForm.Mode.Deck: { this.TemplateLbl.Enabled = false; this.TemplateBox.Enabled = false; this.TemplateBox.Items.Add("(not applicable)"); this.TemplateBox.SelectedIndex = 0; this.DiffLbl.Enabled = false; this.DiffBox.Enabled = false; this.DiffBox.Items.Add("(not applicable)"); this.DiffBox.SelectedIndex = 0; this.LevelBox.Value = this.fData.Level; this.update_cats(); return; } default: { return; } } }