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);
        }
Example #3
0
        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);
            }
        }
Example #5
0
        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);
                }
            }
        }