public CardName(ECardName cardName) { this.Value = cardName.ToString(); }
private static void _EndMove() { //yield return new WaitForSeconds(5f); if (_bot.Hand.Count <= _bot.CurrentHealth) { _bot.endMove = true; return;// yield break; } _bot.Hand.RemoveAll(card => card.CardType == ECardType.Weapon); if (_bot.Hand.Count <= _bot.CurrentHealth) { _bot.endMove = true; return;// yield break; } _bot.Hand.RemoveAll(card => card.CardType == ECardType.Buff); if (_bot.Hand.Count <= _bot.CurrentHealth) { _bot.endMove = true; return;// yield break; } ECardName[] cardsToDelete = new ECardName[] { ECardName.Jail, ECardName.Duel, ECardName.Indians, ECardName.Beauty, ECardName.Panic, ECardName.Saloon, ECardName.Stagecoach, ECardName.Store, ECardName.WellsFargo, ECardName.Bang, ECardName.Beer, ECardName.Gatling, ECardName.Missed }; foreach (ECardName name in cardsToDelete) { List <PackAsset> cards = new List <PackAsset>(_bot.Hand.FindAll(card => card.CardName == name)); foreach (PackAsset card in cards) { _bot.Hand.Remove(card); if (_bot.Hand.Count <= _bot.CurrentHealth) { _bot.endMove = true; return;// yield break; } } } Debug.Log(_bot.name + " can't delete cards any more, change algorithm"); _bot.Hand.Clear(); }