示例#1
0
        private void OnGameWinnerDecision(Scoreboard.PlayerScore score)
        {
            // 게임 승리자가 결정되었을때 호출됨.
            // 여기서 게임 종료 처리, 결과전송 등등을 수행해야함.

            List <Scoreboard.PlayerScore> list = Scoreboard.GetSortedPlayerScores();

            for (int i = 0; i < list.Count; i++)
            {
                Console.WriteLine((i + 1).ToString() + "위 " + list[i].Nickname + "  킬 : " + list[i].Kill);
            }


            Packet gameResultPacket = new Packet(Packet.HEADER.GAME_RESULT_RANK, Config.MAX_SESSION_BUFFER_SIZE);

            for (int i = 0; i < list.Count; i++)
            {
                gameResultPacket.Push(list[i].Nickname);
                gameResultPacket.Push(Encoding.ASCII.GetByteCount(list[i].Nickname));
                gameResultPacket.Push(list[i].Kill);
            }

            gameResultPacket.Push(list.Count);

            UserMediator.BroadCast(gameResultPacket);
        }
示例#2
0
        private bool GameWinPredicate(Scoreboard.PlayerScore score)
        {
            if (score.Kill >= 5)
            {
                return(true);
            }

            return(false);
        }