Пример #1
0
        public List <Card> GiveFirstCard()
        {
            var cardsToCompare = new List <Card>();

            PlayersList.ForEach(player => cardsToCompare.Add(player.GiveFirstCard()));
            return(cardsToCompare);
        }
Пример #2
0
        static void Main(string[] args)
        {
            DotaDbGenLib.Lists.PlayersList _players = new PlayersList();
            _players.GetAll(0, _avatarFetchCount);

            int counter = 0;

            if (!Directory.Exists(_directory))
                Directory.CreateDirectory(_directory);

            do
            {
                counter += _players.Count;

                _players.ForEach(x =>
                                     {
                                         if (x != null && x.RecordExists && x.AvatarFull != null)
                                         {
                                             int index = x.AvatarFull.LastIndexOf('/');
                                             if (index != -1)
                                             {
                                                 string path = x.AvatarFull.Substring(index + 1);
                                                 try
                                                 {
                                                     if (!File.Exists(_directory + "\\" + path))
                                                     {
                                                         DownloadRemoteImageFile(x.AvatarFull, _directory + "\\" + path);
                                                         Console.WriteLine(path + " downloaded!");
                                                     }
                                                     else
                                                     {
                                                         Console.WriteLine(path + " exists!");
                                                     }
                                                 }
                                                 catch (Exception ex)
                                                 {
                                                     Console.WriteLine(ex.Message);
                                                 }
                                             }
                                         }
                                     });

                _players.Clear();
                _players.GetAll(counter, _avatarFetchCount);
            } while (_players.Count > 0);
        }
        private void Init()
        {
            SelectCommand              = new RelayCommand(SelectBoardRange);
            ClearCommand               = new RelayCommand(Clear);
            CalculateEquityCommand     = new RelayCommand((Action <object>)CalculateEquity);
            ExportDataCommand          = new RelayCommand(ExportData);
            ResetAllCommand            = new RelayCommand(ResetAll);
            RangeCommand               = new RelayCommand(SelectPlayerRange);
            CalculateBluffCommand      = new RelayCommand(CalculateBluff);
            ShowStreetCardsCommand     = new RelayCommand(ShowStreetCards);
            SetAutoRangeForHeroCommand = new RelayCommand(SetAutoRangeForHero);

            CardSelectorRequest   = new InteractionRequest <CardSelectorNotification>();
            CalculateBluffRequest = new InteractionRequest <CalculateBluffNotification>();
            ExportRequest         = new InteractionRequest <ExportNotification>();

            InitPlayersList();

            _board.PropertyChanged += (s, e) =>
            {
                if (e.PropertyName == nameof(BoardModel.Cards))
                {
                    // need to set new cards for each player model
                    PlayersList?.ForEach(x =>
                    {
                        x.Ranges
                        .OfType <EquityRangeSelectorItemViewModel>()
                        .ForEach(r => r.UsedCards = _board.Cards);

                        x.UpdateEquityData();

                        x.CheckBluffToValueBetRatio(CountOpponents(), SelectedStreet);
                    });
                }
            };

            ServiceLocator.Current.GetInstance <IEventAggregator>().GetEvent <RequestEquityCalculatorEvent>().Subscribe(LoadData);
            ServiceLocator.Current.GetInstance <IEventAggregator>().GetEvent <EquityCalculatorRangeRemovedEvent>().Subscribe(RangeRemoved);
        }
Пример #4
0
        private bool GetPlayers(XmlDocument response, PlayersList players)
        {
            bool newPlayersAdded = false;

            foreach (XmlNode subRootNode in response.DocumentElement.ChildNodes)
            {
                if (subRootNode.Name == "players")
                {
                    foreach (XmlNode playerNode in subRootNode)
                    {
                        Players player = new Players();
                        if (playerNode["steamid"] != null)
                        {
                            player =
                                players.Find(
                                    x =>
                                    x.SteamID ==
                                    Convert.ToInt32(Convert.ToInt64(playerNode["steamid"].InnerText) - 76561197960265728));
                            if (!player.RecordExists)
                            {
                                player = new Players();
                                players.Add(player);
                            }
                        }
                        else
                        {
                            player = new Players();
                            players.Add(player);
                        }

                        if (playerNode["steamid"] != null)
                            player.SteamID64 = Convert.ToInt64(playerNode["steamid"].InnerText);
                        if (playerNode["communityvisibilitystate"] != null)
                            player.CommunityVisibilityState = Convert.ToInt32(playerNode["communityvisibilitystate"].InnerText);
                        if (playerNode["profilestate"] != null)
                            player.ProfileState = Convert.ToInt32(playerNode["profilestate"].InnerText);
                        if (playerNode["personaname"] != null)
                            player.PersonaName = playerNode["personaname"].InnerText;
                        if (playerNode["lastlogoff"] != null)
                            player.LastLogOff = UnixTimeStampToDateTime(Convert.ToDouble(playerNode["lastlogoff"].InnerText));
                        if (playerNode["profileurl"] != null)
                            player.ProfileURL = playerNode["profileurl"].InnerText;
                        if (playerNode["avatar"] != null)
                            player.Avatar = playerNode["avatar"].InnerText;
                        if (playerNode["avatarmedium"] != null)
                            player.AvatarMedium = playerNode["avatarmedium"].InnerText;
                        if (playerNode["avatarfull"] != null)
                            player.AvatarFull = playerNode["avatarfull"].InnerText;
                        if (playerNode["personastate"] != null)
                            player.PersonaState = Convert.ToInt32(playerNode["personastate"].InnerText);
                        if (playerNode["realname"] != null)
                            player.RealName = playerNode["realname"].InnerText;

                        if (playerNode["primaryclanid"] != null)
                            player.PrimaryClanID = Convert.ToInt64(playerNode["primaryclanid"].InnerText);
                        if (playerNode["timecreated"] != null)
                            player.TimeCreated = UnixTimeStampToDateTime(Convert.ToDouble(playerNode["timecreated"].InnerText));
                        if (playerNode["loccountrycode"] != null)
                            player.LocCountyCode = playerNode["loccountrycode"].InnerText;
                        if (playerNode["locstatecode"] != null)
                            player.LocStateCode = playerNode["locstatecode"].InnerText;
                        if (playerNode["loccityid"] != null)
                            player.LocCityID = playerNode["loccityid"].InnerText;

                        if (!QuiteMode)
                            Console.WriteLine("Steam ID: " + player.SteamID + " Name: " + player.PersonaName + " Real Name: " + (player.RealName ?? ""));

                        newPlayersAdded = true;
                    }
                }
            }

            players.ForEach(x => x.LastUpdated = DateTime.Now);
            players.UpdateAll();

            if (File.Exists("PlayerSummaryInfo" + players[0].SteamID + "(" +
                                                DateTime.Now.ToString("ddMMyyyy") + ").xml"))
            {
                File.Delete("PlayerSummaryInfo" + players[0].SteamID + "(" +
                            DateTime.Now.ToString("ddMMyyyy") + ").xml");
            }

            return newPlayersAdded;
        }