示例#1
0
        public override void MatchCards(List <UserMatchInfo> matchInfoList)
        {
            foreach (UserMatchInfo matchInfo in matchInfoList)
            {
                if (matchInfo.Special > (int)CardType.none)
                {
                    SpecialList.Add(matchInfo);


                    DunScore dunScore = new DunScore
                    {
                        Seat        = matchInfo.Seat,
                        NormalScore = new List <int>(),
                        AddScore    = new List <int>()
                    };
                    ShootScoreArray = matchInfo.ShootScore;
                    for (int i = 0; i < matchInfo.AddScore.Count; i++)
                    {
                        dunScore.NormalScore.Add(matchInfo.NormalScores[i]);
                        dunScore.AddScore.Add(matchInfo.AddScore[i]);
                    }
                    continue;
                }

                MatchInfoList.Add(matchInfo);

                if (matchInfo.Shoot != null && matchInfo.Shoot.ShootCount > 0)
                {
                    ShootList.Add(matchInfo.Shoot);
                }


                ShootScoreArray = matchInfo.ShootScore;
                for (int i = 0; i < matchInfo.AddScore.Count; i++)
                {
                    DunScoreList.Add(new DunScore()
                    {
                        Seat        = matchInfo.Seat,
                        NormalScore = matchInfo.NormalScores,
                        AddScore    = matchInfo.AddScore
                    });
                }

                if (matchInfo.Swat)
                {
                    _hasSwat = true;
                }
            }

            MatchBegin(); //开始比牌
        }
        private async Task FilterPageAppears()
        {
            var Mainapp = Application.Current as App;

            if (CName.Equals("Movies"))
            {
                if (LType.Equals("Highest"))
                {
                    topLabel.Text = "High to Low Rate";
                    var List = await itemViewModel.GetMoviesHighRateFirst(Mainapp.Email);

                    List.Reverse();
                    foreach (var item in List)
                    {
                        //High Rate First
                        if (!SpecialList.Any((arg) => arg.ItemID == item.ItemID && arg.PublisherEmail == Mainapp.Email))
                        {
                            SpecialList.Add(item);
                        }
                    }
                }
                else if (LType.Equals("Lowest"))
                {
                    topLabel.Text = "Low to High Rate";
                    var List = await itemViewModel.GetMoviesHighRateFirst(Mainapp.Email);

                    foreach (var item in List)
                    {
                        //Low Rate First
                        if (!SpecialList.Any((arg) => arg.ItemID == item.ItemID && arg.PublisherEmail == Mainapp.Email))
                        {
                            SpecialList.Add(item);
                        }
                    }
                }
                else if (LType.Equals("Newest"))
                {
                    topLabel.Text = "Newest to Oldest";
                    var List = await itemViewModel.GetMoviesDateFirst(Mainapp.Email);

                    List.Reverse();
                    foreach (var item in List)
                    {
                        //Low Rate First
                        if (!SpecialList.Any((arg) => arg.ItemID == item.ItemID && arg.PublisherEmail == Mainapp.Email))
                        {
                            SpecialList.Add(item);
                        }
                    }
                }
                else if (LType.Equals("Oldest"))
                {
                    topLabel.Text = "Oldest to Newest";
                    var List = await itemViewModel.GetMoviesDateFirst(Mainapp.Email);

                    foreach (var item in List)
                    {
                        //Low Rate First
                        if (!SpecialList.Any((arg) => arg.ItemID == item.ItemID && arg.PublisherEmail == Mainapp.Email))
                        {
                            SpecialList.Add(item);
                        }
                    }
                }
            }
            else if (CName.Equals("Series"))
            {
                if (LType.Equals("Highest"))
                {
                    topLabel.Text = "High to Low Rate";
                    var List = await itemViewModel.GetSeriesHighRateFirst(Mainapp.Email);

                    List.Reverse();
                    foreach (var item in List)
                    {
                        //High Rate First
                        if (!SpecialList.Any((arg) => arg.ItemID == item.ItemID && arg.PublisherEmail == Mainapp.Email))
                        {
                            SpecialList.Add(item);
                        }
                    }
                }
                else if (LType.Equals("Lowest"))
                {
                    topLabel.Text = "Low to High Rate";
                    var List = await itemViewModel.GetSeriesHighRateFirst(Mainapp.Email);

                    foreach (var item in List)
                    {
                        //Low Rate First
                        if (!SpecialList.Any((arg) => arg.ItemID == item.ItemID && arg.PublisherEmail == Mainapp.Email))
                        {
                            SpecialList.Add(item);
                        }
                    }
                }
                else if (LType.Equals("Newest"))
                {
                    topLabel.Text = "Newest to Oldest";
                    var List = await itemViewModel.GetSeriesDateFirst(Mainapp.Email);

                    List.Reverse();
                    foreach (var item in List)
                    {
                        //Low Rate First
                        if (!SpecialList.Any((arg) => arg.ItemID == item.ItemID && arg.PublisherEmail == Mainapp.Email))
                        {
                            SpecialList.Add(item);
                        }
                    }
                }
                else if (LType.Equals("Oldest"))
                {
                    topLabel.Text = "Oldest to Newest";
                    var List = await itemViewModel.GetSeriesDateFirst(Mainapp.Email);

                    foreach (var item in List)
                    {
                        //Low Rate First
                        if (!SpecialList.Any((arg) => arg.ItemID == item.ItemID && arg.PublisherEmail == Mainapp.Email))
                        {
                            SpecialList.Add(item);
                        }
                    }
                }
            }

            else if (CName.Equals("Games"))
            {
                if (LType.Equals("Highest"))
                {
                    topLabel.Text = "High to Low Rate";
                    var List = await itemViewModel.GetGamesHighRateFirst(Mainapp.Email);

                    List.Reverse();
                    foreach (var item in List)
                    {
                        //High Rate First
                        if (!SpecialList.Any((arg) => arg.ItemID == item.ItemID && arg.PublisherEmail == Mainapp.Email))
                        {
                            SpecialList.Add(item);
                        }
                    }
                }
                else if (LType.Equals("Lowest"))
                {
                    topLabel.Text = "Low to High Rate";
                    var List = await itemViewModel.GetGamesHighRateFirst(Mainapp.Email);

                    foreach (var item in List)
                    {
                        //Low Rate First
                        if (!SpecialList.Any((arg) => arg.ItemID == item.ItemID && arg.PublisherEmail == Mainapp.Email))
                        {
                            SpecialList.Add(item);
                        }
                    }
                }
                else if (LType.Equals("Newest"))
                {
                    topLabel.Text = "Newest to Oldest";
                    var List = await itemViewModel.GetGamesDateFirst(Mainapp.Email);

                    List.Reverse();
                    foreach (var item in List)
                    {
                        //Low Rate First
                        if (!SpecialList.Any((arg) => arg.ItemID == item.ItemID && arg.PublisherEmail == Mainapp.Email))
                        {
                            SpecialList.Add(item);
                        }
                    }
                }
                else if (LType.Equals("Oldest"))
                {
                    topLabel.Text = "Oldest to Newest";
                    var List = await itemViewModel.GetGamesDateFirst(Mainapp.Email);

                    foreach (var item in List)
                    {
                        //Low Rate First
                        if (!SpecialList.Any((arg) => arg.ItemID == item.ItemID && arg.PublisherEmail == Mainapp.Email))
                        {
                            SpecialList.Add(item);
                        }
                    }
                }
            }
            else
            {
            }
        }