CardsAgainstIRC3.Game.Bots.Randkov.Randkov C# (CSharp) Method

Randkov() public method

public Randkov ( GameManager manager, IEnumerable arguments ) : System
manager GameManager
arguments IEnumerable
return System
        public Randkov(GameManager manager, IEnumerable<string> arguments)
        {
            if (arguments.Count() == 0)
            {
                throw new ArgumentException("Pass a deck to randkov!");
            }

            try
            {
                _deck = (IDeckType) GameManager.DeckTypes[arguments.First()].GetConstructor(new Type[] { typeof(GameManager), typeof(IEnumerable<string>) }).Invoke(new object[] { Manager, arguments.Skip(1) });
                while (_deck.WhiteCards > 0)
                    _generator.Feed(string.Join(" ", _deck.TakeWhiteCard().Parts).Split(' '));
            }
            catch (Exception)
            {
                throw new ArgumentException("Failed to load deck!");
            }

            Manager = manager;
        }