コード例 #1
0
ファイル: App.xaml.cs プロジェクト: fog-bank/mojp
        /// <summary>
        /// XML オブジェクトからカードテキストデータを構築します。
        /// </summary>
        public static void SetCardInfosFromXml(XDocument doc)
        {
            Cards.Clear();
            AltCardKeys.Clear();
            AltCardSubKeys.Clear();
            AltCards.Clear();

            var node = doc.Element("cards");

            if (node != null)
            {
                foreach (var element in node.Elements())
                {
                    switch (element.Name.LocalName)
                    {
                    case "card":
                        var card = Card.FromXml(element);
                        Cards.Add(card.Name, card);
                        break;

                    case "alt":
                        string key = (string)element.Attribute("key");
                        string sub = (string)element.Attribute("sub");
                        AltCardKeys.Add(key);
                        AltCardSubKeys.Add(sub);
                        AltCards.Add(key + sub, new AltCard(key, sub, (string)element.Attribute("name")));
                        break;
                    }
                }
            }
        }
コード例 #2
0
ファイル: App.xaml.cs プロジェクト: fog-bank/mojp
 public static bool TryGetAltCard(string name, out AltCard altCard) => AltCards.TryGetValue(name, out altCard);