Esempio n. 1
0
        private void Voting_On(object sender, RoutedEventArgs e)
        {
            //Все варианты развития голосования
            if (BVoting.Content.ToString() == "Начать голосование")
            {
                HideTimer();
                int i = 0;
                foreach (var player in Player.PlayersList)
                {
                    if (player.OnVote && player.Vote == CurrentGame.MaxVote)
                    {
                        i++;
                    }
                }

                if (i == 0)
                {
                    CurrentGame.PrintMes("Никто не был выставлен на голосование, переход к следующему раунду");
                    ChangeEnableSub(true, false, false);
                }
                else
                {
                    //Доступ к голосованию только по выставленным игрокам
                    ChangeEnable(ButtonVoteDict, true);
                    foreach (var player in Player.PlayersList)
                    {
                        if (!player.OnVote || player.Vote != CurrentGame.MaxVote)
                        {
                            if (player.Quanity < 10)
                            {
                                ButtonVoteDict["BVote" + "0" + player.Quanity.ToString()].IsEnabled = false;
                            }
                            else
                            {
                                ButtonVoteDict["BVote" + player.Quanity.ToString()].IsEnabled = false;
                            }
                        }
                    }



                    List <Player> tosurvive = new List <Player>();
                    foreach (var player in Player.PlayersList)
                    {
                        if (player.OnVote && player.Vote == CurrentGame.MaxVote)
                        {
                            tosurvive.Add(player);
                        }
                    }

                    //Сброс голосов, перед следующим голосованием
                    CurrentGame.ResetVotes();

                    if (tosurvive.Count == 1)
                    {
                        CurrentGame.DeletePlayerByVotes(tosurvive);
                    }
                    ChangeEnable(ButtonExposeDict, false);
                }
            }
            else if (IsSurvive == true)
            {
                ChangeEnable(ButtonExposeDict, false);
                bool now = CurrentGame.IsNow;
                CurrentGame.Voting(Player.PlayersList);
                if (now == true)
                {
                    ChangeEnableSub(true, false, false);
                }
                else
                {
                    ChangeEnableSub(false, true, false);
                }
            }
            else if (IsSurvive == false)
            {
                List <Player> tosurvive = CurrentGame.ToSurvive(Player.PlayersList);
                CurrentGame.DeleteOrSurviveRound(tosurvive);
                ChangeEnableSub(true, false, false);
            }
        }