private void CardRowControl_Tapped(object sender, TappedRoutedEventArgs e) { var element = (FrameworkElement)sender; MWCard card = (MWCard)element.DataContext; DisplayImage(card); }
private void CardRowControl_RightTapped(object sender, RightTappedRoutedEventArgs e) { var element = (FrameworkElement)sender; MWCard card = (MWCard)element.DataContext; player.Spellbook.Add(card); }
private void DiscardCardButton_Tapped(object sender, TappedRoutedEventArgs e) { MWCard card = (MWCard)((CardButton)sender).DataContext; player.Prepared.Add(card); player.Discard.Remove(card); }
private void AddSchool(string schoolstr, string levelstr, MWCard card) { SpellSchool school; int level = 0; if (Enum.TryParse(schoolstr.ToUpper(), out school) && int.TryParse(levelstr, out level)) { card.SetSchoolLevel(school, level); } }
private void AddCardButton_Click(object sender, RoutedEventArgs e) { MWCard c = CardDatabase.Instance.Cards.Where(m => m.SerialNumber == CardID.Text).FirstOrDefault(); if (c != null) { c.SerialNumber = CardID.Text; player.Spellbook.Add(c); } }
private void DisplayImage(MWCard card) { CardButton button = new CardButton(); Binding bind = new Binding(); bind.Source = card; bind.Mode = BindingMode.OneWay; button.SetBinding(DataContextProperty, bind); button.Tapped += Button_Tapped; //cardPopup.Margin = new Thickness(100); cardPopup.VerticalOffset = (this.Frame.ActualHeight / 2) - (255); cardPopup.HorizontalOffset = (this.Frame.ActualWidth / 2) - (183); cardPopup.Child = button; cardPopup.IsOpen = true; }
public void LoadDataBase() { StreamReader sr = new StreamReader("Database/cardDatabase.txt"); string line; while ((line = sr.ReadLine()) != null) { string[] elements = line.Split("| "); MWCard card = (MWCard)Activator.CreateInstance(MWCard.StringTypeConverter(elements[2])); //Serial Number card.SerialNumber = elements[0]; //Name card.Name = elements[1]; //SubType string[] subTypes = elements[3].Split(", "); List <Subtype> subTypesEnum = new List <Subtype>(); foreach (string subType in subTypes) { Subtype type; if (Enum.TryParse(subType.Replace(" ", "_").ToUpper(), out type)) { subTypesEnum.Add(type); } } card.Subtypes = subTypesEnum; //Levels and Schools if (elements[4].Contains(",")) { string[] levels; string[] schools = elements[4].Split(", "); if (elements[5].Contains(" or ")) { card.ChooseSchool = true; levels = elements[5].Split(" or "); } else { levels = elements[5].Split(" & "); } for (int i = 0; i < schools.Length; i++) { AddSchool(schools[i], levels[i], card); } } else { AddSchool(elements[4], elements[5], card); } //Mana Cost card.ManaCostString = elements[6]; if (card.GetType() == typeof(MWEnchantment)) { //Reveal Cost string revealCost = elements[7]; MWEnchantment enchantCard = (MWEnchantment)card; enchantCard.RevealCostString = revealCost; Cards.Add(enchantCard); } else { Cards.Add(card); } } }