public string GetCardRace() { if (this.m_cardRace != null) { return(this.m_cardRace); } CardRace[] raceArray = new CardRace[] { CardRace.Warrior, CardRace.SpellCaster, CardRace.Fairy, CardRace.Fiend, CardRace.Zombie, CardRace.Machine, CardRace.Aqua, CardRace.Pyro, CardRace.Rock, CardRace.WindBeast, CardRace.Plant, CardRace.Insect, CardRace.Thunder, CardRace.Dragon, CardRace.Beast, CardRace.BestWarrior, CardRace.Dinosaur, CardRace.Fish, CardRace.SeaSerpent, CardRace.Reptile, CardRace.Psycho, CardRace.DivineBeast }; CardAttribute[] attributeArray = new CardAttribute[] { CardAttribute.Dark, CardAttribute.Divine, CardAttribute.Earth, CardAttribute.Fire, CardAttribute.Light, CardAttribute.Water, CardAttribute.Wind }; foreach (CardRace race in raceArray) { if ((this.Race & (int)race) != 0) { this.m_cardRace = race.ToString(); break; } } foreach (CardAttribute attribute in attributeArray) { if ((this.Attribute & (int)attribute) != 0) { this.m_cardRace = this.m_cardRace + " - " + attribute; break; } } return(this.m_cardRace ?? (this.m_cardRace = "")); }
/// <summary> /// Check card values to determine if they are right (i.e. are into allowed range for each property) /// </summary> /// <param name="_type">Card type as enum</param> /// <param name="_class">Card class as enum</param> /// <param name="_set">Card set as enum</param> /// <param name="_race">Card race as enum</param> /// <param name="_quality">Card quality as enum</param> /// <returns></returns> public static CardError checkCard(CardType _type, CardClass _class, CardSet _set, CardRace _race, CardQuality _quality, string _name) { if ((_type < CardType.Minion) || (_type > CardType.Weapon)) { return CardError.BadType; } // Wrong card class? if ((_class < CardClass.Neutral) || (_class > CardClass.Druid)) { return CardError.BadClass; } // Wrong card set? if ((_set < CardSet.Basic) || (_set > CardSet.WhispersOfTheOldGods)) { return CardError.BadSet; } // Wrong minion race? if ((_type == CardType.Minion) && ((_race < CardRace.None) || (_race > CardRace.Pirate))) { return CardError.BadRace; } // Wrong card quality? if ((_quality < CardQuality.Free) || (_quality > CardQuality.Legendary)) { return CardError.BadQuality; } // Wrong (empty) name? if (_name.Length == 0) { return CardError.BadName; } return CardError.None; }
public void SelectRaces(CardRace[] races) { m_races.Clear(); foreach (CardRace race in races) m_races.Add(race); }
public void SelectRace(CardRace race) { m_races.Clear(); m_races.Add(race); }
public bool HasRace(CardRace race) { return((Race & (int)race) != 0); }
public int GetCountCardInZone(IEnumerable <ClientCard> cards, CardRace cardRace) { return(cards.Count(card => card != null && card.HasRace(cardRace))); }
public Card(int cardId, string cardName, int level, int evolution, Skill[] skills, Skill[] skillsEvolution, CardRace race, int wait, double attack, double hp) { Console.WriteLine(string.Join("\t", nameof(Card), "创建卡牌", cardName)); CardId = cardId; CardName = cardName ?? throw new ArgumentNullException(nameof(cardName)); Level.Set(level); Evolution.Set(evolution); Skills = skills ?? throw new ArgumentNullException(nameof(skills)); SkillsEvolution = skillsEvolution ?? throw new ArgumentNullException(nameof(skillsEvolution)); Race.Set(race); Wait.SetMax(wait).SetToMax(); Attack.SetMax(attack).SetToMax(); Hp.SetMax(hp).SetToMax(); }
public void SelectRace(CardRace race) { this.races.Clear(); this.races.Add(race); }
public string GetCardRace() { if (this.m_cardRace != null) { return this.m_cardRace; } CardRace[] raceArray = new CardRace[] { CardRace.Warrior, CardRace.SpellCaster, CardRace.Fairy, CardRace.Fiend, CardRace.Zombie, CardRace.Machine, CardRace.Aqua, CardRace.Pyro, CardRace.Rock, CardRace.WindBeast, CardRace.Plant, CardRace.Insect, CardRace.Thunder, CardRace.Dragon, CardRace.Beast, CardRace.BestWarrior, CardRace.Dinosaur, CardRace.Fish, CardRace.SeaSerpent, CardRace.Reptile, CardRace.Psycho, CardRace.DivineBeast }; CardAttribute[] attributeArray = new CardAttribute[] { CardAttribute.Dark, CardAttribute.Divine, CardAttribute.Earth, CardAttribute.Fire, CardAttribute.Light, CardAttribute.Water, CardAttribute.Wind }; foreach (CardRace race in raceArray) { if ((this.Race & (int)race) != 0) { this.m_cardRace = race.ToString(); break; } } foreach (CardAttribute attribute in attributeArray) { if ((this.Attribute & (int)attribute) != 0) { this.m_cardRace = this.m_cardRace + " - " + attribute; break; } } return (this.m_cardRace ?? (this.m_cardRace = "")); }
public void DeleteRace(CardRace Race) { this.CardRace.Remove(Race); }
public void AddRace(CardRace Race) { this.CardRace.Add(Race); }