/// <summary> /// 初始化角斗士的长弓 /// </summary> /// <returns></returns> public static Card.WeaponCard Get角斗士的长弓() { //角斗士的长弓 Card.WeaponCard 角斗士的长弓 = new Card.WeaponCard(); 角斗士的长弓.SN = "W000001"; 角斗士的长弓.Name = "角斗士的长弓"; 角斗士的长弓.Description = "你的英雄在攻击时具有免疫。"; 角斗士的长弓.Rare = Card.CardBasicInfo.稀有程度.紫色; 角斗士的长弓.StandardAttackPoint = 5; 角斗士的长弓.StandardCostPoint = 7; 角斗士的长弓.标准耐久度 = 2; return(角斗士的长弓); }
/// <summary> /// 初始化角斗士的长弓 /// </summary> /// <returns></returns> public static Card.WeaponCard Get角斗士的长弓() { //角斗士的长弓 Card.WeaponCard 角斗士的长弓 = new Card.WeaponCard(); 角斗士的长弓.SN = "W000001"; 角斗士的长弓.Name = "角斗士的长弓"; 角斗士的长弓.Description = "你的英雄在攻击时具有免疫。"; 角斗士的长弓.Rare = Card.CardBasicInfo.稀有程度.紫色; 角斗士的长弓.StandardAttackPoint = 5; 角斗士的长弓.StandardCostPoint = 7; 角斗士的长弓.标准耐久度 = 2; return 角斗士的长弓; }
/// <summary> /// 从XML文件读取 /// </summary> public static void GetCardInfoFromXml() { //调用侧的NET版本3.5会引发错误。。。 CardCollections.Clear(); //法术 foreach (var AbilityXml in Directory.GetFiles(CardXmlFolder + "\\Ability\\")) { XmlSerializer xml = new XmlSerializer(typeof(Card.AbilityCard)); Card.AbilityCard ability = (AbilityCard)xml.Deserialize(new StreamReader(AbilityXml)); CardCollections.Add(ability.SN, ability); } //随从 foreach (var MinionXml in Directory.GetFiles(CardXmlFolder + "\\Minion\\")) { XmlSerializer xml = new XmlSerializer(typeof(Card.MinionCard)); Card.MinionCard Minio = (MinionCard)xml.Deserialize(new StreamReader(MinionXml)); Minio.ActualCostPoint = Minio.StandardCostPoint; CardCollections.Add(Minio.SN, Minio); } //武器 foreach (var WeaponXml in Directory.GetFiles(CardXmlFolder + "\\Weapon\\")) { XmlSerializer xml = new XmlSerializer(typeof(Card.WeaponCard)); Card.WeaponCard Weapon = (WeaponCard)xml.Deserialize(new StreamReader(WeaponXml)); Weapon.ActualCostPoint = Weapon.StandardCostPoint; CardCollections.Add(Weapon.SN, Weapon); } //奥秘 foreach (var SecretXml in Directory.GetFiles(CardXmlFolder + "\\Secret\\")) { XmlSerializer xml = new XmlSerializer(typeof(Card.SecretCard)); Card.SecretCard Secret = (SecretCard)xml.Deserialize(new StreamReader(SecretXml)); Secret.ActualCostPoint = Secret.StandardCostPoint; CardCollections.Add(Secret.SN, Secret); } }
/// <summary> /// 导入 /// </summary> private void Import() { dynamic excelObj = Interaction.CreateObject("Excel.Application"); excelObj.Visible = true; dynamic workbook; dynamic worksheet; workbook = excelObj.Workbooks.Open(ExcelPicker.SelectedPathOrFileName); for (int i = 1; i < 5; i++) { Card.CardBasicInfo.稀有程度 Rare; Rare = Card.CardBasicInfo.稀有程度.白色; worksheet = workbook.Sheets(i); switch (i) { case 1: Rare = Card.CardBasicInfo.稀有程度.白色; break; case 2: Rare = Card.CardBasicInfo.稀有程度.绿色; break; case 3: Rare = Card.CardBasicInfo.稀有程度.蓝色; break; case 4: Rare = Card.CardBasicInfo.稀有程度.紫色; break; case 5: Rare = Card.CardBasicInfo.稀有程度.橙色; break; default: break; } int rowCount = 2; while (!String.IsNullOrEmpty(worksheet.Cells(rowCount, 1).Text)) { //名称 说明 职业 种族 花费资源 攻击 生命 类型 来源 稀有程度 String CardType = worksheet.Cells(rowCount, 8).Text; switch (CardType) { case "仆从": Card.FollowerCard follower = new Card.FollowerCard(); follower.Name = worksheet.Cells(rowCount, 1).Text; follower.Description = worksheet.Cells(rowCount, 2).Text; follower.StandardCostPoint = GetInt(worksheet.Cells(rowCount, 5).Text); follower.StandardAttackPoint = GetInt(worksheet.Cells(rowCount, 6).Text); follower.StandardHealthPoint = GetInt(worksheet.Cells(rowCount, 7).Text); follower.Rare = Rare; innerCollection.Insert<Card.FollowerCard>(follower); break; case "法术": Card.MagicCard magic = new Card.MagicCard(); magic.Name = worksheet.Cells(rowCount, 1).Text; magic.Description = worksheet.Cells(rowCount, 2).Text; magic.StandardCostPoint = GetInt(worksheet.Cells(rowCount, 5).Text); magic.Rare = Rare; innerCollection.Insert<Card.MagicCard>(magic); break; case "武器": Card.WeaponCard weapon = new Card.WeaponCard(); weapon.Name = worksheet.Cells(rowCount, 1).Text; weapon.Description = worksheet.Cells(rowCount, 2).Text; weapon.StandardCostPoint = GetInt(worksheet.Cells(rowCount, 5).Text); weapon.Rare = Rare; innerCollection.Insert<Card.WeaponCard>(weapon); break; default: break; } rowCount++; } } workbook.Close(); excelObj.Quit(); excelObj = null; }