コード例 #1
0
 private Player DetermineIfWinner(Enums.GameOutcome gameOutcome, Player winner)
 {
     if (gameOutcome != Enums.GameOutcome.ProceedToNextRound)
     {
         winner = GameJudge.DetermineWinner(_playerPool, gameOutcome);
     }
     return(winner);
 }
コード例 #2
0
        public JsonResult GameJudgesSave(List <GameJudge> judges, RowState rState)
        {
            try
            {
                //新增时,排重
                if (rState == RowState.Added)
                {
                    Request <Game> req = new Request <Game>();
                    req.Token  = CurrentUser.Token;
                    req.Filter = new Game {
                        Id = judges[0].GameId
                    };
                    var res = ServiceBuilder.GetInstance().Execute(ServiceType.GetGameJudgeList, req);

                    bool flag;
                    judges.ForEach(j => {
                        flag = true;

                        res.Entities.ForEach(p =>
                        {
                            GameJudge o = p as GameJudge;
                            if (o.UserId.GetId() == j.UserId)
                            {
                                flag = false;
                                return;
                            }
                        });

                        if (flag)
                        {
                            j.RowState = rState;
                        }
                    });
                }
                else
                {
                    judges.ForEach(p => { p.RowState = rState; });
                }

                Request <GameJudge> request = new Request <GameJudge>();
                request.Token    = CurrentUser.Token;
                request.Entities = judges;

                var result = ServiceBuilder.GetInstance().Execute(ServiceType.SaveGameJudge, request);

                return(ToJson(result));
            }
            catch (Exception ex)
            {
                var errResult = ResultHelper.Fail(ex.Message);
                return(ToJson(errResult));
            }
        }
コード例 #3
0
 private Player DeterminIfWinner(Enums.GameOutcome gameOutcome, Maze mazeFromPlayer, Player winner)
 {
     mazeFromPlayer.SwapPlayerSymbols();
     _maze = mazeFromPlayer;
     if (_maze.FindCoordinateOf(_secondMazePlayer).IsEmpty)
     {
         _maze.SetSymbol(Properties.Settings.Default.MazeCenterX, Properties.Settings.Default.MazeCenterY, _secondMazePlayer);
     }
     if (gameOutcome != Enums.GameOutcome.ProceedToNextRound)
     {
         winner = GameJudge.DetermineWinner(_playerPool, gameOutcome);
     }
     return(winner);
 }
コード例 #4
0
ファイル: Game.cs プロジェクト: rohingosling/common_cpp
 private Player DeterminIfWinner(Enums.GameOutcome gameOutcome, Maze mazeFromPlayer, Player winner)
 {
     mazeFromPlayer.SwapPlayerSymbols();
     _maze = mazeFromPlayer;
     if (gameOutcome != Enums.GameOutcome.ProceedToNextRound)
     {
         if (gameOutcome == Enums.GameOutcome.NoScoringMaxed)
         {
             winner = _playerPool.GetNextPlayer();
         }
         else
         {
             winner = GameJudge.DetermineWinner(_playerPool);
         }
     }
     return(winner);
 }