/// <summary>
        ///
        /// </summary>
        /// <param name="gameLogFilePath"></param>
        public void Start(string gameLogFilePath)
        {
            InGame = false;
            if (WebString != null)
            {
                WebString.Stop();
            }

            if (gameLogFilePath == null)
            {
                WebString = new AutoUpdatingWebString(Constants.OverlayStateURL(), 150, this, 750, true);
            }
            else
            {
                List <string> gameLog = Utilities.UnzipToStringList(File.ReadAllBytes(gameLogFilePath));
                TestMode = true;
                FullPlayerDeck.Clear();
                for (int i = 0; i < NumZones; i++)
                {
                    PlayerCards[i].Clear();
                    OpponentCards[i].Clear();
                }

                // Process the deck
                gameLog[0] = gameLog[0].Trim();
                List <CardWithCount> deck = Utilities.DeckFromStringCodeList(gameLog[0].Split(new char[] { ' ' }));
                FullPlayerDeck = Utilities.ConvertDeck(deck);
                PlayerCards[(int)PlayZone.Deck] = FullPlayerDeck.Clone();
                IsInitialDraw = true;
                gameLog.RemoveAt(0);

                WebString = new AutoUpdatingWebString(gameLog, 10, this, 100, 60);
            }
        }
Exemple #2
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="callback"></param>
 public Expedition(IExpeditionUpdateCallback callback = null)
 {
     Callback = callback;
     Clear();
     if (callback != null)
     {
         WebString = new AutoUpdatingWebString(Constants.ExpeditionStateURL(), 1000, this);
     }
 }
Exemple #3
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="callback">Interface to receive updates</param>
        public StaticDeck(StaticDeckUpdateCallback callback = null)
        {
            Callback = callback;

            Cards    = new List <CardWithCount>();
            DeckCode = "";
            DeckName = "";

            if (callback != null)
            {
                WebString = new AutoUpdatingWebString(Constants.StaticDeckURL(), 1000, this);
            }
        }